File trigona_be6dfedd91e1ebc81d58a61b05b0ef93322425b247636a0f7f5c3eeebbc52edd.exe
Function:
Loading..
0040cb40
0040cb40fn_40cb40:
0040cb40push r14
0040cb42push r13
0040cb44push rdi
0040cb45push rsi
0040cb46push rbx
0040cb47sub rsp, 64
0040cb4bmov [rsp+40], rcx
0040cb50mov ebx, edx
0040cb52mov [rsp+48], r8
0040cb57xor esi, esi
0040cb59xor eax, eax
0040cb5bmov ecx, ebx
0040cb5dsub ecx, 1
0040cb60mov edx, eax
0040cb62cmp edx, ecx
0040cb64mov [rsp+60], edx
0040cb68jg 0x40cba0
0040cb6asub ecx, eax
0040cb6cadd ecx, 1
0040cb6f
0040cb6floc_40cb6f:
0040cb6fmov eax, [rsp+60]
0040cb73movsxd rax, eax
0040cb76mov rdx, [rsp+48]
0040cb7bmov rax, [rdx+8*rax]
0040cb7ftest rax, rax
0040cb82je 0x40cb8e
0040cb84movzx rsi, [rax-12]
0040cb89test si, si
0040cb8cjne 0x40cba0
0040cb8e
0040cb8eloc_40cb8e:
0040cb8emov eax, [rsp+60]
0040cb92add eax, 1
0040cb95mov [rsp+60], eax
0040cb99sub ecx, 1
0040cb9ctest ecx, ecx
0040cb9ejne 0x40cb6f
0040cba0
0040cba0loc_40cba0:
0040cba0nop
0040cba1xor r13, r13
0040cba4xor r14, r14
0040cba7xor eax, eax
0040cba9mov edi, ebx
0040cbabsub edi, 1
0040cbaemov ecx, eax
0040cbb0cmp ecx, edi
0040cbb2mov [rsp+60], ecx
0040cbb6jg 0x40cc06
0040cbb8sub edi, eax
0040cbbaadd edi, 1
0040cbbd
0040cbbdloc_40cbbd:
0040cbbdmov eax, [rsp+60]
0040cbc1movsxd rax, eax
0040cbc4mov rcx, [rsp+48]
0040cbc9mov rax, [rcx+8*rax]
0040cbcdtest rax, rax
0040cbd0je 0x40cbf4
0040cbd2mov rcx, [rsp+40]
0040cbd7cmp rax, [rcx]
0040cbdajne 0x40cbe6
0040cbdcmov ecx, [rsp+60]
0040cbe0test ecx, ecx
0040cbe2sete r13b
0040cbe6
0040cbe6loc_40cbe6:
0040cbe6add r14l, [rax-4]
0040cbeatest r14l, r14l
0040cbedjge 0x40cbf4
0040cbefcall fn_4085f0
0040cbf4
0040cbf4loc_40cbf4:
0040cbf4mov eax, [rsp+60]
0040cbf8add eax, 1
0040cbfbmov [rsp+60], eax
0040cbffsub edi, 1
0040cc02test edi, edi
0040cc04jne 0x40cbbd
0040cc06
0040cc06loc_40cc06:
0040cc06nop
0040cc07test r13b, r13b
0040cc0aje 0x40cc36
0040cc0cmov rax, [rsp+40]
0040cc11mov rax, [rax]
0040cc14mov edi, [rax-4]
0040cc17mov rcx, [rsp+40]
0040cc1cmov edx, r14l
0040cc1fmov r8l, esi
0040cc22call fn_40cf30
0040cc27mov rax, [rsp+40]
0040cc2cmov rsi, [rax]
0040cc2fmov eax, 1
0040cc34jmp 0x40cc47
0040cc36
0040cc36loc_40cc36:
0040cc36mov ecx, r14l
0040cc39mov edx, esi
0040cc3bcall fn_40bc20
0040cc40mov rsi, rax
0040cc43xor eax, eax
0040cc45xor edi, edi
0040cc47
0040cc47loc_40cc47:
0040cc47mov r14l, ebx
0040cc4asub r14l, 1
0040cc4emov ecx, eax
0040cc50cmp ecx, r14l
0040cc53mov [rsp+60], ecx
0040cc57jg 0x40cca2
0040cc59sub r14l, eax
0040cc5cadd r14l, 1
0040cc60
0040cc60loc_40cc60:
0040cc60mov eax, [rsp+60]
0040cc64movsxd rax, eax
0040cc67mov rcx, [rsp+48]
0040cc6cmov rax, [rcx+8*rax]
0040cc70test rax, rax
0040cc73je 0x40cc8e
0040cc75mov rbx, rax
0040cc78mov rcx, rax
0040cc7bmovsxd rax, edi
0040cc7elea rdx, [rsi+rax]
0040cc82movsxd r8, [rbx-4]
0040cc86call fn_405ac0
0040cc8badd edi, [rbx-4]
0040cc8e
0040cc8eloc_40cc8e:
0040cc8emov eax, [rsp+60]
0040cc92add eax, 1
0040cc95mov [rsp+60], eax
0040cc99sub r14l, 1
0040cc9dtest r14l, r14l
0040cca0jne 0x40cc60
0040cca2
0040cca2loc_40cca2:
0040cca2nop
0040cca3test r13b, r13b
0040cca6jne 0x40ccc5
0040cca8mov rax, [rsp+40]
0040ccadcmp [rax], 0
0040ccb1je 0x40ccbd
0040ccb3mov rcx, [rsp+40]
0040ccb8call fn_40bd40
0040ccbd
0040ccbdloc_40ccbd:
0040ccbdmov rax, [rsp+40]
0040ccc2mov [rax], rsi
0040ccc5
0040ccc5loc_40ccc5:
0040ccc5add rsp, 64
0040ccc9pop rbx
0040cccapop rsi
0040cccbpop rdi
0040ccccpop r13
0040cccepop r14
0040ccd0ret
0040cb40
0040cb40fn_40cb40:
0040cb40push r14
0040cb42push r13
0040cb44push rdi
0040cb45push rsi
0040cb46push rbx
0040cb47sub rsp, 64
0040cb4bmov [rsp+40], rcx
0040cb50mov ebx, edx
0040cb52mov [rsp+48], r8
0040cb57xor esi, esi
0040cb59xor eax, eax
0040cb5bmov ecx, ebx
0040cb5dsub ecx, 1
0040cb60mov edx, eax
0040cb62cmp edx, ecx
0040cb64mov [rsp+60], edx
0040cb68jg 0x40cba0
0040cb6asub ecx, eax
0040cb6cadd ecx, 1
0040cb6f
0040cb6floc_40cb6f:
0040cb6fmov eax, [rsp+60]
0040cb73movsxd rax, eax
0040cb76mov rdx, [rsp+48]
0040cb7bmov rax, [rdx+8*rax]
0040cb7ftest rax, rax
0040cb82je 0x40cb8e
0040cb84movzx rsi, [rax-12]
0040cb89test si, si
0040cb8cjne 0x40cba0
0040cb8e
0040cb8eloc_40cb8e:
0040cb8emov eax, [rsp+60]
0040cb92add eax, 1
0040cb95mov [rsp+60], eax
0040cb99sub ecx, 1
0040cb9ctest ecx, ecx
0040cb9ejne 0x40cb6f
0040cba0
0040cba0loc_40cba0:
0040cba0nop
0040cba1xor r13, r13
0040cba4xor r14, r14
0040cba7xor eax, eax
0040cba9mov edi, ebx
0040cbabsub edi, 1
0040cbaemov ecx, eax
0040cbb0cmp ecx, edi
0040cbb2mov [rsp+60], ecx
0040cbb6jg 0x40cc06
0040cbb8sub edi, eax
0040cbbaadd edi, 1
0040cbbd
0040cbbdloc_40cbbd:
0040cbbdmov eax, [rsp+60]
0040cbc1movsxd rax, eax
0040cbc4mov rcx, [rsp+48]
0040cbc9mov rax, [rcx+8*rax]
0040cbcdtest rax, rax
0040cbd0je 0x40cbf4
0040cbd2mov rcx, [rsp+40]
0040cbd7cmp rax, [rcx]
0040cbdajne 0x40cbe6
0040cbdcmov ecx, [rsp+60]
0040cbe0test ecx, ecx
0040cbe2sete r13b
0040cbe6
0040cbe6loc_40cbe6:
0040cbe6add r14l, [rax-4]
0040cbeatest r14l, r14l
0040cbedjge 0x40cbf4
0040cbefcall fn_4085f0
0040cbf4
0040cbf4loc_40cbf4:
0040cbf4mov eax, [rsp+60]
0040cbf8add eax, 1
0040cbfbmov [rsp+60], eax
0040cbffsub edi, 1
0040cc02test edi, edi
0040cc04jne 0x40cbbd
0040cc06
0040cc06loc_40cc06:
0040cc06nop
0040cc07test r13b, r13b
0040cc0aje 0x40cc36
0040cc0cmov rax, [rsp+40]
0040cc11mov rax, [rax]
0040cc14mov edi, [rax-4]
0040cc17mov rcx, [rsp+40]
0040cc1cmov edx, r14l
0040cc1fmov r8l, esi
0040cc22call fn_40cf30
0040cc27mov rax, [rsp+40]
0040cc2cmov rsi, [rax]
0040cc2fmov eax, 1
0040cc34jmp 0x40cc47
0040cc36
0040cc36loc_40cc36:
0040cc36mov ecx, r14l
0040cc39mov edx, esi
0040cc3bcall fn_40bc20
0040cc40mov rsi, rax
0040cc43xor eax, eax
0040cc45xor edi, edi
0040cc47
0040cc47loc_40cc47:
0040cc47mov r14l, ebx
0040cc4asub r14l, 1
0040cc4emov ecx, eax
0040cc50cmp ecx, r14l
0040cc53mov [rsp+60], ecx
0040cc57jg 0x40cca2
0040cc59sub r14l, eax
0040cc5cadd r14l, 1
0040cc60
0040cc60loc_40cc60:
0040cc60mov eax, [rsp+60]
0040cc64movsxd rax, eax
0040cc67mov rcx, [rsp+48]
0040cc6cmov rax, [rcx+8*rax]
0040cc70test rax, rax
0040cc73je 0x40cc8e
0040cc75mov rbx, rax
0040cc78mov rcx, rax
0040cc7bmovsxd rax, edi
0040cc7elea rdx, [rsi+rax]
0040cc82movsxd r8, [rbx-4]
0040cc86call fn_405ac0
0040cc8badd edi, [rbx-4]
0040cc8e
0040cc8eloc_40cc8e:
0040cc8emov eax, [rsp+60]
0040cc92add eax, 1
0040cc95mov [rsp+60], eax
0040cc99sub r14l, 1
0040cc9dtest r14l, r14l
0040cca0jne 0x40cc60
0040cca2
0040cca2loc_40cca2:
0040cca2nop
0040cca3test r13b, r13b
0040cca6jne 0x40ccc5
0040cca8mov rax, [rsp+40]
0040ccadcmp [rax], 0
0040ccb1je 0x40ccbd
0040ccb3mov rcx, [rsp+40]
0040ccb8call fn_40bd40
0040ccbd
0040ccbdloc_40ccbd:
0040ccbdmov rax, [rsp+40]
0040ccc2mov [rax], rsi
0040ccc5
0040ccc5loc_40ccc5:
0040ccc5add rsp, 64
0040ccc9pop rbx
0040cccapop rsi
0040cccbpop rdi
0040ccccpop r13
0040cccepop r14
0040ccd0ret
0040cb40
0040ccd1
0040ccd1 // align 0x10
0040ccd1 // align 0x10
0040cce0
0040cce0fn_40cce0:
0040cce0push rbp
0040cce1push rbx
0040cce2sub rsp, 40
0040cce6mov rbp, rsp
0040cce9mov [rbp+80], r8
0040ccedmov [rbp+88], r9
0040ccf1mov [rbp+64], rcx
0040ccf5mov [rbp+72], edx
0040ccf8lea rbx, [rbp+80]
0040ccfcmov rcx, [rbp+64]
0040cd00mov edx, [rbp+72]
0040cd03mov r8, rbx
0040cd06call fn_40cb40
0040cd0blea rsp, [rbp+40]
0040cd0fpop rbx
0040cd10pop rbp
0040cd11ret
0040cce0
0040cce0fn_40cce0:
0040cce0push rbp
0040cce1push rbx
0040cce2sub rsp, 40
0040cce6mov rbp, rsp
0040cce9mov [rbp+80], r8
0040ccedmov [rbp+88], r9
0040ccf1mov [rbp+64], rcx
0040ccf5mov [rbp+72], edx
0040ccf8lea rbx, [rbp+80]
0040ccfcmov rcx, [rbp+64]
0040cd00mov edx, [rbp+72]
0040cd03mov r8, rbx
0040cd06call fn_40cb40
0040cd0blea rsp, [rbp+40]
0040cd0fpop rbx
0040cd10pop rbp
0040cd11ret
0040cce0
0040cd12
0040cd12 // align 0x10
0040cd12 // align 0x10
0040cd20
0040cd20fn_40cd20:
0040cd20push r14
0040cd22push r13
0040cd24push rdi
0040cd25push rsi
0040cd26push rbx
0040cd27sub rsp, 32
0040cd2bmov rbx, rdx
0040cd2emov rax, rcx
0040cd31mov rdx, rbx
0040cd34cmp rax, rdx
0040cd37jne 0x40cd3d
0040cd39xor eax, eax
0040cd3bjmp 0x40cdb3
0040cd3d
0040cd3dloc_40cd3d:
0040cd3dtest rax, rax
0040cd40jne 0x40cd49
0040cd42mov eax, [rdx-4]
0040cd45neg eax
0040cd47jmp 0x40cdb3
0040cd49
0040cd49loc_40cd49:
0040cd49test rdx, rdx
0040cd4cjne 0x40cd53
0040cd4emov eax, [rax-4]
0040cd51jmp 0x40cdb3
0040cd53
0040cd53loc_40cd53:
0040cd53mov edi, [rax-4]
0040cd56mov r13l, [rdx-4]
0040cd5amov esi, edi
0040cd5ccmp esi, r13l
0040cd5fjle 0x40cd64
0040cd61mov esi, r13l
0040cd64
0040cd64loc_40cd64:
0040cd64call fn_40ce10
0040cd69mov r14, rax
0040cd6cmov rcx, rbx
0040cd6fcall fn_40ce10
0040cd74mov rcx, rax
0040cd77test esi, esi
0040cd79jle 0x40cdad
0040cd7b
0040cd7bloc_40cd7b:
0040cd7bmovzx rax, [r14]
0040cd7fmovzx rdx, [rcx]
0040cd83sub eax, edx
0040cd85test eax, eax
0040cd87jne 0x40cdb3
0040cd89cmp esi, 1
0040cd8cje 0x40cdad
0040cd8emovzx rax, [r14+1]
0040cd93movzx rdx, [rcx+1]
0040cd98sub eax, edx
0040cd9atest eax, eax
0040cd9cjne 0x40cdb3
0040cd9eadd r14, 2
0040cda2add rcx, 2
0040cda6sub esi, 2
0040cda9test esi, esi
0040cdabjg 0x40cd7b
0040cdad
0040cdadloc_40cdad:
0040cdadnop
0040cdaemov eax, edi
0040cdb0sub eax, r13l
0040cdb3
0040cdb3loc_40cdb3:
0040cdb3add rsp, 32
0040cdb7pop rbx
0040cdb8pop rsi
0040cdb9pop rdi
0040cdbapop r13
0040cdbcpop r14
0040cdberet
0040cd20
0040cd20fn_40cd20:
0040cd20push r14
0040cd22push r13
0040cd24push rdi
0040cd25push rsi
0040cd26push rbx
0040cd27sub rsp, 32
0040cd2bmov rbx, rdx
0040cd2emov rax, rcx
0040cd31mov rdx, rbx
0040cd34cmp rax, rdx
0040cd37jne 0x40cd3d
0040cd39xor eax, eax
0040cd3bjmp 0x40cdb3
0040cd3d
0040cd3dloc_40cd3d:
0040cd3dtest rax, rax
0040cd40jne 0x40cd49
0040cd42mov eax, [rdx-4]
0040cd45neg eax
0040cd47jmp 0x40cdb3
0040cd49
0040cd49loc_40cd49:
0040cd49test rdx, rdx
0040cd4cjne 0x40cd53
0040cd4emov eax, [rax-4]
0040cd51jmp 0x40cdb3
0040cd53
0040cd53loc_40cd53:
0040cd53mov edi, [rax-4]
0040cd56mov r13l, [rdx-4]
0040cd5amov esi, edi
0040cd5ccmp esi, r13l
0040cd5fjle 0x40cd64
0040cd61mov esi, r13l
0040cd64
0040cd64loc_40cd64:
0040cd64call fn_40ce10
0040cd69mov r14, rax
0040cd6cmov rcx, rbx
0040cd6fcall fn_40ce10
0040cd74mov rcx, rax
0040cd77test esi, esi
0040cd79jle 0x40cdad
0040cd7b
0040cd7bloc_40cd7b:
0040cd7bmovzx rax, [r14]
0040cd7fmovzx rdx, [rcx]
0040cd83sub eax, edx
0040cd85test eax, eax
0040cd87jne 0x40cdb3
0040cd89cmp esi, 1
0040cd8cje 0x40cdad
0040cd8emovzx rax, [r14+1]
0040cd93movzx rdx, [rcx+1]
0040cd98sub eax, edx
0040cd9atest eax, eax
0040cd9cjne 0x40cdb3
0040cd9eadd r14, 2
0040cda2add rcx, 2
0040cda6sub esi, 2
0040cda9test esi, esi
0040cdabjg 0x40cd7b
0040cdad
0040cdadloc_40cdad:
0040cdadnop
0040cdaemov eax, edi
0040cdb0sub eax, r13l
0040cdb3
0040cdb3loc_40cdb3:
0040cdb3add rsp, 32
0040cdb7pop rbx
0040cdb8pop rsi
0040cdb9pop rdi
0040cdbapop r13
0040cdbcpop r14
0040cdberet
0040cd20
0040cdbf
0040cdbf // align 0x10
0040cdbf // align 0x10
0040cdc0
0040cdc0fn_40cdc0:
0040cdc0sub rsp, 40
0040cdc4call fn_40cd20
0040cdc9add rsp, 40
0040cdcdret
0040cdc0
0040cdc0fn_40cdc0:
0040cdc0sub rsp, 40
0040cdc4call fn_40cd20
0040cdc9add rsp, 40
0040cdcdret
0040cdc0
0040cdce
0040cdce 00 00 ..
0040cdd0 e4 04 01 00 ff ff ff ff 12 00 00 00 00 00 00 00 ................
0040cde0 ff ff 01 00 ff ff ff ff 00 00 00 00 00 00 00 00 ................
0040cdf0 e4 04 01 00 ff ff ff ff 12 00 00 00 00 00 00 00 ................
0040ce00 ff ff 02 00 ff ff ff ff 00 00 00 00 00 00 00 cc ................
0040cdce 00 00 ..
0040cdd0 e4 04 01 00 ff ff ff ff 12 00 00 00 00 00 00 00 ................
0040cde0 ff ff 01 00 ff ff ff ff 00 00 00 00 00 00 00 00 ................
0040cdf0 e4 04 01 00 ff ff ff ff 12 00 00 00 00 00 00 00 ................
0040ce00 ff ff 02 00 ff ff ff ff 00 00 00 00 00 00 00 cc ................
0040ce10
0040ce10fn_40ce10:
0040ce10mov rax, rcx
0040ce13test rax, rax
0040ce16jne 0x40ce23
0040ce18mov rax, [rip+0x4e3a9]
0040ce1flea rax, [rax+16]
0040ce23
0040ce23loc_40ce23:
0040ce23ret
0040ce10
0040ce10fn_40ce10:
0040ce10mov rax, rcx
0040ce13test rax, rax
0040ce16jne 0x40ce23
0040ce18mov rax, [rip+0x4e3a9]
0040ce1flea rax, [rax+16]
0040ce23
0040ce23loc_40ce23:
0040ce23ret
0040ce10
0040ce24
0040ce24 // align 0x10
0040ce24 // align 0x10
0040ce30
0040ce30fn_40ce30:
0040ce30push rbx
0040ce31sub rsp, 32
0040ce35mov rbx, rcx
0040ce38mov eax, r8l
0040ce3bxor ecx, ecx
0040ce3dtest rdx, rdx
0040ce40je 0x40ce45
0040ce42mov ecx, [rdx-4]
0040ce45
0040ce45loc_40ce45:
0040ce45cmp eax, 1
0040ce48jge 0x40ce4e
0040ce4axor eax, eax
0040ce4cjmp 0x40ce57
0040ce4e
0040ce4eloc_40ce4e:
0040ce4esub eax, 1
0040ce51cmp eax, ecx
0040ce53jle 0x40ce57
0040ce55mov eax, ecx
0040ce57
0040ce57loc_40ce57:
0040ce57test r9l, r9l
0040ce5ajge 0x40ce60
0040ce5cxor ecx, ecx
0040ce5ejmp 0x40ce6a
0040ce60
0040ce60loc_40ce60:
0040ce60sub ecx, eax
0040ce62cmp ecx, r9l
0040ce65jle 0x40ce6a
0040ce67mov ecx, r9l
0040ce6a
0040ce6aloc_40ce6a:
0040ce6atest rdx, rdx
0040ce6djne 0x40ce79
0040ce6fmov rcx, rbx
0040ce72call fn_40bd40
0040ce77jmp 0x40ce9c
0040ce79
0040ce79loc_40ce79:
0040ce79mov r8, rbx
0040ce7cmovsxd rax, eax
0040ce7flea rax, [rdx+rax]
0040ce83mov r9l, ecx
0040ce86movzx r10, [rdx-12]
0040ce8bmov rcx, r8
0040ce8emov rdx, rax
0040ce91mov r8l, r9l
0040ce94mov r9l, r10l
0040ce97call fn_40c080
0040ce9c
0040ce9cloc_40ce9c:
0040ce9cmov rax, rbx
0040ce9fadd rsp, 32
0040cea3pop rbx
0040cea4ret
0040ce30
0040ce30fn_40ce30:
0040ce30push rbx
0040ce31sub rsp, 32
0040ce35mov rbx, rcx
0040ce38mov eax, r8l
0040ce3bxor ecx, ecx
0040ce3dtest rdx, rdx
0040ce40je 0x40ce45
0040ce42mov ecx, [rdx-4]
0040ce45
0040ce45loc_40ce45:
0040ce45cmp eax, 1
0040ce48jge 0x40ce4e
0040ce4axor eax, eax
0040ce4cjmp 0x40ce57
0040ce4e
0040ce4eloc_40ce4e:
0040ce4esub eax, 1
0040ce51cmp eax, ecx
0040ce53jle 0x40ce57
0040ce55mov eax, ecx
0040ce57
0040ce57loc_40ce57:
0040ce57test r9l, r9l
0040ce5ajge 0x40ce60
0040ce5cxor ecx, ecx
0040ce5ejmp 0x40ce6a
0040ce60
0040ce60loc_40ce60:
0040ce60sub ecx, eax
0040ce62cmp ecx, r9l
0040ce65jle 0x40ce6a
0040ce67mov ecx, r9l
0040ce6a
0040ce6aloc_40ce6a:
0040ce6atest rdx, rdx
0040ce6djne 0x40ce79
0040ce6fmov rcx, rbx
0040ce72call fn_40bd40
0040ce77jmp 0x40ce9c
0040ce79
0040ce79loc_40ce79:
0040ce79mov r8, rbx
0040ce7cmovsxd rax, eax
0040ce7flea rax, [rdx+rax]
0040ce83mov r9l, ecx
0040ce86movzx r10, [rdx-12]
0040ce8bmov rcx, r8
0040ce8emov rdx, rax
0040ce91mov r8l, r9l
0040ce94mov r9l, r10l
0040ce97call fn_40c080
0040ce9c
0040ce9cloc_40ce9c:
0040ce9cmov rax, rbx
0040ce9fadd rsp, 32
0040cea3pop rbx
0040cea4ret
0040ce30
0040cea5
0040cea5 // align 0x10
0040cea5 // align 0x10
0040ceb0
0040ceb0fn_40ceb0:
0040ceb0push rdi
0040ceb1push rsi
0040ceb2push rbx
0040ceb3sub rsp, 32
0040ceb7mov rbx, rcx
0040cebamov esi, edx
0040cebcmov edi, r8l
0040cebfmov rcx, rbx
0040cec2call fn_40c620
0040cec7xor eax, eax
0040cec9mov rcx, [rbx]
0040cecctest rcx, rcx
0040cecfje 0x40ced4
0040ced1mov eax, [rcx-4]
0040ced4
0040ced4loc_40ced4:
0040ced4cmp esi, 1
0040ced7jl 0x40cf24
0040ced9cmp esi, eax
0040cedbjg 0x40cf24
0040ceddtest edi, edi
0040cedfjle 0x40cf24
0040cee1sub esi, 1
0040cee4mov ecx, eax
0040cee6sub ecx, esi
0040cee8sub ecx, edi
0040ceeamov edi, ecx
0040ceectest edi, edi
0040ceeejge 0x40cef2
0040cef0xor edi, edi
0040cef2
0040cef2loc_40cef2:
0040cef2mov rcx, [rbx]
0040cef5sub eax, edi
0040cef7movsxd rax, eax
0040cefalea rcx, [rcx+rax]
0040cefemov rax, [rbx]
0040cf01movsxd rdx, esi
0040cf04lea rdx, [rax+rdx]
0040cf08movsxd r8, edi
0040cf0bcall fn_405ac0
0040cf10mov rcx, rbx
0040cf13mov edx, esi
0040cf15add edx, edi
0040cf17mov rax, [rbx]
0040cf1amovzx r8, [rax-12]
0040cf1fcall fn_40cf30
0040cf24
0040cf24loc_40cf24:
0040cf24add rsp, 32
0040cf28pop rbx
0040cf29pop rsi
0040cf2apop rdi
0040cf2bret
0040ceb0
0040ceb0fn_40ceb0:
0040ceb0push rdi
0040ceb1push rsi
0040ceb2push rbx
0040ceb3sub rsp, 32
0040ceb7mov rbx, rcx
0040cebamov esi, edx
0040cebcmov edi, r8l
0040cebfmov rcx, rbx
0040cec2call fn_40c620
0040cec7xor eax, eax
0040cec9mov rcx, [rbx]
0040cecctest rcx, rcx
0040cecfje 0x40ced4
0040ced1mov eax, [rcx-4]
0040ced4
0040ced4loc_40ced4:
0040ced4cmp esi, 1
0040ced7jl 0x40cf24
0040ced9cmp esi, eax
0040cedbjg 0x40cf24
0040ceddtest edi, edi
0040cedfjle 0x40cf24
0040cee1sub esi, 1
0040cee4mov ecx, eax
0040cee6sub ecx, esi
0040cee8sub ecx, edi
0040ceeamov edi, ecx
0040ceectest edi, edi
0040ceeejge 0x40cef2
0040cef0xor edi, edi
0040cef2
0040cef2loc_40cef2:
0040cef2mov rcx, [rbx]
0040cef5sub eax, edi
0040cef7movsxd rax, eax
0040cefalea rcx, [rcx+rax]
0040cefemov rax, [rbx]
0040cf01movsxd rdx, esi
0040cf04lea rdx, [rax+rdx]
0040cf08movsxd r8, edi
0040cf0bcall fn_405ac0
0040cf10mov rcx, rbx
0040cf13mov edx, esi
0040cf15add edx, edi
0040cf17mov rax, [rbx]
0040cf1amovzx r8, [rax-12]
0040cf1fcall fn_40cf30
0040cf24
0040cf24loc_40cf24:
0040cf24add rsp, 32
0040cf28pop rbx
0040cf29pop rsi
0040cf2apop rdi
0040cf2bret
0040ceb0
0040cf2c
0040cf2c // align 0x10
0040cf2c // align 0x10
0040cf30
0040cf30fn_40cf30:
0040cf30push rbp
0040cf31push r13
0040cf33push rdi
0040cf34push rsi
0040cf35push rbx
0040cf36sub rsp, 48
0040cf3amov rbp, rsp
0040cf3dmov rbx, rcx
0040cf40mov esi, edx
0040cf42test esi, esi
0040cf44jg 0x40cf53
0040cf46mov rcx, rbx
0040cf49call fn_40bd40
0040cf4ejmp 0x40cfe5
0040cf53
0040cf53loc_40cf53:
0040cf53mov rax, [rbx]
0040cf56test rax, rax
0040cf59je 0x40cf9d
0040cf5bcmp [rax-8], 1
0040cf5fjne 0x40cf9d
0040cf61lea rax, [rax-16]
0040cf65mov [rbp+40], rax
0040cf69lea rcx, [rbp+40]
0040cf6dmov edx, esi
0040cf6fadd edx, 17
0040cf72movsxd rdx, edx
0040cf75call fn_405760
0040cf7amov rax, [rbp+40]
0040cf7emov [rax+12], esi
0040cf81mov rax, [rbp+40]
0040cf85lea rax, [rax+16]
0040cf89mov [rbx], rax
0040cf8cmov rcx, [rbx]
0040cf8fcall fn_40ce10
0040cf94movsxd rsi, esi
0040cf97mov [rax+rsi], 0
0040cf9bjmp 0x40cfe5
0040cf9d
0040cf9dloc_40cf9d:
0040cf9dmov ecx, esi
0040cf9fmov edx, r8l
0040cfa2call fn_40bc20
0040cfa7mov rdi, rax
0040cfaacmp [rbx], 0
0040cfaejne 0x40cfb5
0040cfb0mov [rbx], rdi
0040cfb3jmp 0x40cfe5
0040cfb5
0040cfb5loc_40cfb5:
0040cfb5mov rax, [rbx]
0040cfb8mov r13l, [rax-4]
0040cfbccmp r13l, esi
0040cfbfjle 0x40cfc4
0040cfc1mov r13l, esi
0040cfc4
0040cfc4loc_40cfc4:
0040cfc4mov rcx, [rbx]
0040cfc7call fn_40ce10
0040cfccmov rcx, rax
0040cfcfmov rdx, rdi
0040cfd2movsxd r8, r13l
0040cfd5call fn_405ac0
0040cfdamov rcx, rbx
0040cfddcall fn_40bd40
0040cfe2mov [rbx], rdi
0040cfe5
0040cfe5loc_40cfe5:
0040cfe5lea rsp, [rbp+48]
0040cfe9pop rbx
0040cfeapop rsi
0040cfebpop rdi
0040cfecpop r13
0040cfeepop rbp
0040cfefret
0040cf30
0040cf30fn_40cf30:
0040cf30push rbp
0040cf31push r13
0040cf33push rdi
0040cf34push rsi
0040cf35push rbx
0040cf36sub rsp, 48
0040cf3amov rbp, rsp
0040cf3dmov rbx, rcx
0040cf40mov esi, edx
0040cf42test esi, esi
0040cf44jg 0x40cf53
0040cf46mov rcx, rbx
0040cf49call fn_40bd40
0040cf4ejmp 0x40cfe5
0040cf53
0040cf53loc_40cf53:
0040cf53mov rax, [rbx]
0040cf56test rax, rax
0040cf59je 0x40cf9d
0040cf5bcmp [rax-8], 1
0040cf5fjne 0x40cf9d
0040cf61lea rax, [rax-16]
0040cf65mov [rbp+40], rax
0040cf69lea rcx, [rbp+40]
0040cf6dmov edx, esi
0040cf6fadd edx, 17
0040cf72movsxd rdx, edx
0040cf75call fn_405760
0040cf7amov rax, [rbp+40]
0040cf7emov [rax+12], esi
0040cf81mov rax, [rbp+40]
0040cf85lea rax, [rax+16]
0040cf89mov [rbx], rax
0040cf8cmov rcx, [rbx]
0040cf8fcall fn_40ce10
0040cf94movsxd rsi, esi
0040cf97mov [rax+rsi], 0
0040cf9bjmp 0x40cfe5
0040cf9d
0040cf9dloc_40cf9d:
0040cf9dmov ecx, esi
0040cf9fmov edx, r8l
0040cfa2call fn_40bc20
0040cfa7mov rdi, rax
0040cfaacmp [rbx], 0
0040cfaejne 0x40cfb5
0040cfb0mov [rbx], rdi
0040cfb3jmp 0x40cfe5
0040cfb5
0040cfb5loc_40cfb5:
0040cfb5mov rax, [rbx]
0040cfb8mov r13l, [rax-4]
0040cfbccmp r13l, esi
0040cfbfjle 0x40cfc4
0040cfc1mov r13l, esi
0040cfc4
0040cfc4loc_40cfc4:
0040cfc4mov rcx, [rbx]
0040cfc7call fn_40ce10
0040cfccmov rcx, rax
0040cfcfmov rdx, rdi
0040cfd2movsxd r8, r13l
0040cfd5call fn_405ac0
0040cfdamov rcx, rbx
0040cfddcall fn_40bd40
0040cfe2mov [rbx], rdi
0040cfe5
0040cfe5loc_40cfe5:
0040cfe5lea rsp, [rbp+48]
0040cfe9pop rbx
0040cfeapop rsi
0040cfebpop rdi
0040cfecpop r13
0040cfeepop rbp
0040cfefret
0040cf30
0040cff0
0040cff0fn_40cff0:
0040cff0sub rsp, 40
0040cff4test rdx, rdx
0040cff7jne 0x40d000
0040cff9call fn_40bd40
0040cffejmp 0x40d018
0040d000
0040d000loc_40d000:
0040d000mov rax, rdx
0040d003mov r9l, [rdx-4]
0040d007mov r10l, r8l
0040d00amov rdx, rax
0040d00dmov r8l, r9l
0040d010mov r9l, r10l
0040d013call fn_40c2b0
0040d018
0040d018loc_40d018:
0040d018add rsp, 40
0040d01cret
0040cff0
0040cff0fn_40cff0:
0040cff0sub rsp, 40
0040cff4test rdx, rdx
0040cff7jne 0x40d000
0040cff9call fn_40bd40
0040cffejmp 0x40d018
0040d000
0040d000loc_40d000:
0040d000mov rax, rdx
0040d003mov r9l, [rdx-4]
0040d007mov r10l, r8l
0040d00amov rdx, rax
0040d00dmov r8l, r9l
0040d010mov r9l, r10l
0040d013call fn_40c2b0
0040d018
0040d018loc_40d018:
0040d018add rsp, 40
0040d01cret
0040cff0
0040d01d
0040d01d // align 0x10
0040d01d // align 0x10
0040d020
0040d020fn_40d020:
0040d020push rbp
0040d021sub rsp, 48
0040d025mov rbp, rsp
0040d028mov rax, rdx
0040d02block xchg [rcx], rax
0040d02fmov [rbp+40], rax
0040d033cmp [rbp+40], 0
0040d038je 0x40d043
0040d03alea rcx, [rbp+40]
0040d03ecall fn_40bd90
0040d043
0040d043loc_40d043:
0040d043lea rsp, [rbp+48]
0040d047pop rbp
0040d048ret
0040d020
0040d020fn_40d020:
0040d020push rbp
0040d021sub rsp, 48
0040d025mov rbp, rsp
0040d028mov rax, rdx
0040d02block xchg [rcx], rax
0040d02fmov [rbp+40], rax
0040d033cmp [rbp+40], 0
0040d038je 0x40d043
0040d03alea rcx, [rbp+40]
0040d03ecall fn_40bd90
0040d043
0040d043loc_40d043:
0040d043lea rsp, [rbp+48]
0040d047pop rbp
0040d048ret
0040d020
0040d049
0040d049 // align 0x10
0040d049 // align 0x10
0040d050
0040d050fn_40d050:
0040d050sub rsp, 40
0040d054mov [rsp+56], dl
0040d058lea rdx, [rsp+56]
0040d05dmov r8l, 1
0040d063mov r9l, [rip+0x589ae]
0040d06acall fn_40c1c0
0040d06fadd rsp, 40
0040d073ret
0040d050
0040d050fn_40d050:
0040d050sub rsp, 40
0040d054mov [rsp+56], dl
0040d058lea rdx, [rsp+56]
0040d05dmov r8l, 1
0040d063mov r9l, [rip+0x589ae]
0040d06acall fn_40c1c0
0040d06fadd rsp, 40
0040d073ret
0040d050
0040d074
0040d074 // align 0x10
0040d074 // align 0x10
0040d080
0040d080fn_40d080:
0040d080sub rsp, 40
0040d084mov [rsp+56], dx
0040d089lea rdx, [rsp+56]
0040d08emov r8l, 1
0040d094call fn_40c030
0040d099add rsp, 40
0040d09dret
0040d080
0040d080fn_40d080:
0040d080sub rsp, 40
0040d084mov [rsp+56], dx
0040d089lea rdx, [rsp+56]
0040d08emov r8l, 1
0040d094call fn_40c030
0040d099add rsp, 40
0040d09dret
0040d080
0040d09e
0040d09e // align 0x10
0040d09e // align 0x10
0040d0a0
0040d0a0fn_40d0a0:
0040d0a0push rsi
0040d0a1push rbx
0040d0a2sub rsp, 40
0040d0a6mov rbx, rcx
0040d0a9mov rsi, rdx
0040d0acmov rcx, rsi
0040d0afcall fn_40c580
0040d0b4mov rcx, rbx
0040d0b7mov rdx, rsi
0040d0bamov r8l, eax
0040d0bdmov r9l, [rip+0x58954]
0040d0c4call fn_40c1c0
0040d0c9add rsp, 40
0040d0cdpop rbx
0040d0cepop rsi
0040d0cfret
0040d0a0
0040d0a0fn_40d0a0:
0040d0a0push rsi
0040d0a1push rbx
0040d0a2sub rsp, 40
0040d0a6mov rbx, rcx
0040d0a9mov rsi, rdx
0040d0acmov rcx, rsi
0040d0afcall fn_40c580
0040d0b4mov rcx, rbx
0040d0b7mov rdx, rsi
0040d0bamov r8l, eax
0040d0bdmov r9l, [rip+0x58954]
0040d0c4call fn_40c1c0
0040d0c9add rsp, 40
0040d0cdpop rbx
0040d0cepop rsi
0040d0cfret
0040d0a0
0040d0d0
0040d0d0fn_40d0d0:
0040d0d0push rsi
0040d0d1push rbx
0040d0d2sub rsp, 40
0040d0d6mov rbx, rcx
0040d0d9mov rsi, rdx
0040d0dctest rsi, rsi
0040d0dfjne 0x40d0eb
0040d0e1mov rcx, rbx
0040d0e4call fn_40bd90
0040d0e9jmp 0x40d101
0040d0eb
0040d0ebloc_40d0eb:
0040d0ebmov rcx, rsi
0040d0eecall fn_40c5a0
0040d0f3mov rcx, rbx
0040d0f6mov rdx, rsi
0040d0f9mov r8l, eax
0040d0fccall fn_40c030
0040d101
0040d101loc_40d101:
0040d101add rsp, 40
0040d105pop rbx
0040d106pop rsi
0040d107ret
0040d0d0
0040d0d0fn_40d0d0:
0040d0d0push rsi
0040d0d1push rbx
0040d0d2sub rsp, 40
0040d0d6mov rbx, rcx
0040d0d9mov rsi, rdx
0040d0dctest rsi, rsi
0040d0dfjne 0x40d0eb
0040d0e1mov rcx, rbx
0040d0e4call fn_40bd90
0040d0e9jmp 0x40d101
0040d0eb
0040d0ebloc_40d0eb:
0040d0ebmov rcx, rsi
0040d0eecall fn_40c5a0
0040d0f3mov rcx, rbx
0040d0f6mov rdx, rsi
0040d0f9mov r8l, eax
0040d0fccall fn_40c030
0040d101
0040d101loc_40d101:
0040d101add rsp, 40
0040d105pop rbx
0040d106pop rsi
0040d107ret
0040d0d0
0040d108
0040d108 // align 0x10
0040d108 // align 0x10
0040d110
0040d110fn_40d110:
0040d110sub rsp, 40
0040d114mov eax, r8l
0040d117mov r8, rdx
0040d11ajmp 0x40d123
0040d11c
0040d11cloc_40d11c:
0040d11csub eax, 1
0040d11fadd r8, 2
0040d123
0040d123loc_40d123:
0040d123test eax, eax
0040d125jle 0x40d12e
0040d127cmp [r8], 0
0040d12cjne 0x40d11c
0040d12e
0040d12eloc_40d12e:
0040d12emov rax, r8
0040d131sub rax, rdx
0040d134sar rax, 1
0040d138jns 0x40d13e
0040d13aadc rax, 0
0040d13e
0040d13eloc_40d13e:
0040d13emov r8l, eax
0040d141call fn_40c030
0040d146add rsp, 40
0040d14aret
0040d110
0040d110fn_40d110:
0040d110sub rsp, 40
0040d114mov eax, r8l
0040d117mov r8, rdx
0040d11ajmp 0x40d123
0040d11c
0040d11cloc_40d11c:
0040d11csub eax, 1
0040d11fadd r8, 2
0040d123
0040d123loc_40d123:
0040d123test eax, eax
0040d125jle 0x40d12e
0040d127cmp [r8], 0
0040d12cjne 0x40d11c
0040d12e
0040d12eloc_40d12e:
0040d12emov rax, r8
0040d131sub rax, rdx
0040d134sar rax, 1
0040d138jns 0x40d13e
0040d13aadc rax, 0
0040d13e
0040d13eloc_40d13e:
0040d13emov r8l, eax
0040d141call fn_40c030
0040d146add rsp, 40
0040d14aret
0040d110
0040d14b
0040d14b // align 0x10
0040d14b // align 0x10
0040d150
0040d150fn_40d150:
0040d150sub rsp, 40
0040d154test rdx, rdx
0040d157jne 0x40d160
0040d159call fn_40bd90
0040d15ejmp 0x40d176
0040d160
0040d160loc_40d160:
0040d160mov eax, [rdx-4]
0040d163mov r8, rdx
0040d166movzx r9l, [rdx-12]
0040d16bmov rdx, r8
0040d16emov r8l, eax
0040d171call fn_40c1c0
0040d176
0040d176loc_40d176:
0040d176add rsp, 40
0040d17aret
0040d150
0040d150fn_40d150:
0040d150sub rsp, 40
0040d154test rdx, rdx
0040d157jne 0x40d160
0040d159call fn_40bd90
0040d15ejmp 0x40d176
0040d160
0040d160loc_40d160:
0040d160mov eax, [rdx-4]
0040d163mov r8, rdx
0040d166movzx r9l, [rdx-12]
0040d16bmov rdx, r8
0040d16emov r8l, eax
0040d171call fn_40c1c0
0040d176
0040d176loc_40d176:
0040d176add rsp, 40
0040d17aret
0040d150
0040d17b
0040d17b // align 0x10
0040d17b // align 0x10
0040d180
0040d180fn_40d180:
0040d180mov rax, rcx
0040d183test rax, rax
0040d186jne 0x40d18f
0040d188lea rax, [rip+1]
0040d18f
0040d18floc_40d18f:
0040d18fret
0040d180
0040d180fn_40d180:
0040d180mov rax, rcx
0040d183test rax, rax
0040d186jne 0x40d18f
0040d188lea rax, [rip+1]
0040d18f
0040d18floc_40d18f:
0040d18fret
0040d180
0040d190
0040d190 00 00 cc cc cc cc cc cc cc cc cc cc cc cc cc cc ................
0040d190 00 00 cc cc cc cc cc cc cc cc cc cc cc cc cc cc ................
0040d1a0
0040d1a0fn_40d1a0:
0040d1a0push r14
0040d1a2push r13
0040d1a4push rdi
0040d1a5push rsi
0040d1a6push rbx
0040d1a7sub rsp, 32
0040d1abmov rbx, rcx
0040d1aexor edi, edi
0040d1b0mov r14, rdx
0040d1b3test r14, r14
0040d1b6je 0x40d1bf
0040d1b8mov edi, [r14-4]
0040d1bcshr edi, 1
0040d1bf
0040d1bfloc_40d1bf:
0040d1bftest edi, edi
0040d1c1je 0x40d21b
0040d1c3xor esi, esi
0040d1c5mov rax, [rbx]
0040d1c8test rax, rax
0040d1cbje 0x40d1d3
0040d1cdmov esi, [rax-4]
0040d1d0shr esi, 1
0040d1d3
0040d1d3loc_40d1d3:
0040d1d3mov ecx, esi
0040d1d5add ecx, edi
0040d1d7call fn_40bcc0
0040d1dcmov r13, rax
0040d1dftest esi, esi
0040d1e1jle 0x40d1f7
0040d1e3mov rcx, [rbx]
0040d1e6mov rdx, r13
0040d1e9mov r8l, esi
0040d1ecadd r8l, r8l
0040d1efmovsxd r8, r8l
0040d1f2call fn_405ac0
0040d1f7
0040d1f7loc_40d1f7:
0040d1f7mov rcx, r14
0040d1famovsxd rsi, esi
0040d1fdlea rdx, [r13+2*rsi]
0040d202mov r8l, edi
0040d205add r8l, r8l
0040d208movsxd r8, r8l
0040d20bcall fn_405ac0
0040d210mov rcx, rbx
0040d213mov rdx, r13
0040d216call fn_40d020
0040d21b
0040d21bloc_40d21b:
0040d21badd rsp, 32
0040d21fpop rbx
0040d220pop rsi
0040d221pop rdi
0040d222pop r13
0040d224pop r14
0040d226ret
0040d1a0
0040d1a0fn_40d1a0:
0040d1a0push r14
0040d1a2push r13
0040d1a4push rdi
0040d1a5push rsi
0040d1a6push rbx
0040d1a7sub rsp, 32
0040d1abmov rbx, rcx
0040d1aexor edi, edi
0040d1b0mov r14, rdx
0040d1b3test r14, r14
0040d1b6je 0x40d1bf
0040d1b8mov edi, [r14-4]
0040d1bcshr edi, 1
0040d1bf
0040d1bfloc_40d1bf:
0040d1bftest edi, edi
0040d1c1je 0x40d21b
0040d1c3xor esi, esi
0040d1c5mov rax, [rbx]
0040d1c8test rax, rax
0040d1cbje 0x40d1d3
0040d1cdmov esi, [rax-4]
0040d1d0shr esi, 1
0040d1d3
0040d1d3loc_40d1d3:
0040d1d3mov ecx, esi
0040d1d5add ecx, edi
0040d1d7call fn_40bcc0
0040d1dcmov r13, rax
0040d1dftest esi, esi
0040d1e1jle 0x40d1f7
0040d1e3mov rcx, [rbx]
0040d1e6mov rdx, r13
0040d1e9mov r8l, esi
0040d1ecadd r8l, r8l
0040d1efmovsxd r8, r8l
0040d1f2call fn_405ac0
0040d1f7
0040d1f7loc_40d1f7:
0040d1f7mov rcx, r14
0040d1famovsxd rsi, esi
0040d1fdlea rdx, [r13+2*rsi]
0040d202mov r8l, edi
0040d205add r8l, r8l
0040d208movsxd r8, r8l
0040d20bcall fn_405ac0
0040d210mov rcx, rbx
0040d213mov rdx, r13
0040d216call fn_40d020
0040d21b
0040d21bloc_40d21b:
0040d21badd rsp, 32
0040d21fpop rbx
0040d220pop rsi
0040d221pop rdi
0040d222pop r13
0040d224pop r14
0040d226ret
0040d1a0
0040d227
0040d227 // align 0x10
0040d227 // align 0x10
0040d230
0040d230fn_40d230:
0040d230push r14
0040d232push r13
0040d234push rdi
0040d235push rsi
0040d236push rbx
0040d237sub rsp, 48
0040d23bmov [rsp+40], rcx
0040d240mov rbx, rdx
0040d243mov rsi, r8
0040d246xor edi, edi
0040d248mov rax, rbx
0040d24btest rax, rax
0040d24eje 0x40d256
0040d250mov edi, [rax-4]
0040d253shr edi, 1
0040d256
0040d256loc_40d256:
0040d256xor r13, r13
0040d259mov rax, rsi
0040d25ctest rax, rax
0040d25fje 0x40d269
0040d261mov r13l, [rax-4]
0040d265shr r13l, 1
0040d269
0040d269loc_40d269:
0040d269test edi, edi
0040d26bjne 0x40d272
0040d26dtest r13l, r13l
0040d270je 0x40d2ba
0040d272
0040d272loc_40d272:
0040d272mov ecx, edi
0040d274add ecx, r13l
0040d277call fn_40bcc0
0040d27cmov r14, rax
0040d27fmov rcx, rbx
0040d282mov rdx, r14
0040d285mov r8l, edi
0040d288add r8l, r8l
0040d28bmovsxd r8, r8l
0040d28ecall fn_405ac0
0040d293mov rcx, rsi
0040d296movsxd rdi, edi
0040d299lea rdx, [r14+2*rdi]
0040d29dmov r8l, r13l
0040d2a0add r8l, r8l
0040d2a3movsxd r8, r8l
0040d2a6call fn_405ac0
0040d2abmov rcx, [rsp+40]
0040d2b0mov rdx, r14
0040d2b3call fn_40d020
0040d2b8jmp 0x40d2c4
0040d2ba
0040d2baloc_40d2ba:
0040d2bamov rcx, [rsp+40]
0040d2bfcall fn_40bd90
0040d2c4
0040d2c4loc_40d2c4:
0040d2c4add rsp, 48
0040d2c8pop rbx
0040d2c9pop rsi
0040d2capop rdi
0040d2cbpop r13
0040d2cdpop r14
0040d2cfret
0040d230
0040d230fn_40d230:
0040d230push r14
0040d232push r13
0040d234push rdi
0040d235push rsi
0040d236push rbx
0040d237sub rsp, 48
0040d23bmov [rsp+40], rcx
0040d240mov rbx, rdx
0040d243mov rsi, r8
0040d246xor edi, edi
0040d248mov rax, rbx
0040d24btest rax, rax
0040d24eje 0x40d256
0040d250mov edi, [rax-4]
0040d253shr edi, 1
0040d256
0040d256loc_40d256:
0040d256xor r13, r13
0040d259mov rax, rsi
0040d25ctest rax, rax
0040d25fje 0x40d269
0040d261mov r13l, [rax-4]
0040d265shr r13l, 1
0040d269
0040d269loc_40d269:
0040d269test edi, edi
0040d26bjne 0x40d272
0040d26dtest r13l, r13l
0040d270je 0x40d2ba
0040d272
0040d272loc_40d272:
0040d272mov ecx, edi
0040d274add ecx, r13l
0040d277call fn_40bcc0
0040d27cmov r14, rax
0040d27fmov rcx, rbx
0040d282mov rdx, r14
0040d285mov r8l, edi
0040d288add r8l, r8l
0040d28bmovsxd r8, r8l
0040d28ecall fn_405ac0
0040d293mov rcx, rsi
0040d296movsxd rdi, edi
0040d299lea rdx, [r14+2*rdi]
0040d29dmov r8l, r13l
0040d2a0add r8l, r8l
0040d2a3movsxd r8, r8l
0040d2a6call fn_405ac0
0040d2abmov rcx, [rsp+40]
0040d2b0mov rdx, r14
0040d2b3call fn_40d020
0040d2b8jmp 0x40d2c4
0040d2ba
0040d2baloc_40d2ba:
0040d2bamov rcx, [rsp+40]
0040d2bfcall fn_40bd90
0040d2c4
0040d2c4loc_40d2c4:
0040d2c4add rsp, 48
0040d2c8pop rbx
0040d2c9pop rsi
0040d2capop rdi
0040d2cbpop r13
0040d2cdpop r14
0040d2cfret
0040d230
0040d2d0
0040d2d0fn_40d2d0:
0040d2d0push rbp
0040d2d1push r14
0040d2d3push r13
0040d2d5push rdi
0040d2d6push rsi
0040d2d7push rbx
0040d2d8sub rsp, 72
0040d2dcmov rbp, rsp
0040d2dfmov [rbp+40], rcx
0040d2e3mov ebx, edx
0040d2e5mov rsi, r8
0040d2e8xor r13, r13
0040d2ebxor eax, eax
0040d2edmov r14l, ebx
0040d2f0sub r14l, 1
0040d2f4mov edi, eax
0040d2f6cmp edi, r14l
0040d2f9jg 0x40d341
0040d2fbsub r14l, eax
0040d2feadd r14l, 1
0040d302
0040d302loc_40d302:
0040d302movsxd rax, edi
0040d305mov rax, [rsi+8*rax]
0040d309mov [rbp+56], rax
0040d30dcmp [rbp+56], 0
0040d312je 0x40d335
0040d314mov rax, [rbp+56]
0040d318mov eax, [rax-4]
0040d31bshr eax, 31
0040d31emov rcx, [rbp+56]
0040d322add eax, [rcx-4]
0040d325sar eax, 1
0040d328add r13l, eax
0040d32btest r13l, r13l
0040d32ejge 0x40d335
0040d330call fn_4085f0
0040d335
0040d335loc_40d335:
0040d335add edi, 1
0040d338sub r14l, 1
0040d33ctest r14l, r14l
0040d33fjne 0x40d302
0040d341
0040d341loc_40d341:
0040d341nop
0040d342mov ecx, r13l
0040d345call fn_40bcc0
0040d34amov r14, rax
0040d34dxor r13, r13
0040d350xor eax, eax
0040d352sub ebx, 1
0040d355mov edi, eax
0040d357cmp edi, ebx
0040d359jg 0x40d3c1
0040d35bsub ebx, eax
0040d35dadd ebx, 1
0040d360
0040d360loc_40d360:
0040d360movsxd rax, edi
0040d363mov rax, [rsi+8*rax]
0040d367mov [rbp+56], rax
0040d36bcmp [rbp+56], 0
0040d370je 0x40d3b7
0040d372mov rcx, [rbp+56]
0040d376movsxd rax, r13l
0040d379lea rdx, [r14+2*rax]
0040d37dmov rax, [rbp+56]
0040d381mov r8l, [rax-4]
0040d385shr r8l, 31
0040d389mov rax, [rbp+56]
0040d38dadd r8l, [rax-4]
0040d391sar r8l, 1
0040d395add r8l, r8l
0040d398movsxd r8, r8l
0040d39bcall fn_405ac0
0040d3a0mov rax, [rbp+56]
0040d3a4mov eax, [rax-4]
0040d3a7shr eax, 31
0040d3aamov rcx, [rbp+56]
0040d3aeadd eax, [rcx-4]
0040d3b1sar eax, 1
0040d3b4add r13l, eax
0040d3b7
0040d3b7loc_40d3b7:
0040d3b7add edi, 1
0040d3basub ebx, 1
0040d3bdtest ebx, ebx
0040d3bfjne 0x40d360
0040d3c1
0040d3c1loc_40d3c1:
0040d3c1nop
0040d3c2mov rcx, [rbp+40]
0040d3c6mov rdx, r14
0040d3c9call fn_40d020
0040d3celea rsp, [rbp+72]
0040d3d2pop rbx
0040d3d3pop rsi
0040d3d4pop rdi
0040d3d5pop r13
0040d3d7pop r14
0040d3d9pop rbp
0040d3daret
0040d2d0
0040d2d0fn_40d2d0:
0040d2d0push rbp
0040d2d1push r14
0040d2d3push r13
0040d2d5push rdi
0040d2d6push rsi
0040d2d7push rbx
0040d2d8sub rsp, 72
0040d2dcmov rbp, rsp
0040d2dfmov [rbp+40], rcx
0040d2e3mov ebx, edx
0040d2e5mov rsi, r8
0040d2e8xor r13, r13
0040d2ebxor eax, eax
0040d2edmov r14l, ebx
0040d2f0sub r14l, 1
0040d2f4mov edi, eax
0040d2f6cmp edi, r14l
0040d2f9jg 0x40d341
0040d2fbsub r14l, eax
0040d2feadd r14l, 1
0040d302
0040d302loc_40d302:
0040d302movsxd rax, edi
0040d305mov rax, [rsi+8*rax]
0040d309mov [rbp+56], rax
0040d30dcmp [rbp+56], 0
0040d312je 0x40d335
0040d314mov rax, [rbp+56]
0040d318mov eax, [rax-4]
0040d31bshr eax, 31
0040d31emov rcx, [rbp+56]
0040d322add eax, [rcx-4]
0040d325sar eax, 1
0040d328add r13l, eax
0040d32btest r13l, r13l
0040d32ejge 0x40d335
0040d330call fn_4085f0
0040d335
0040d335loc_40d335:
0040d335add edi, 1
0040d338sub r14l, 1
0040d33ctest r14l, r14l
0040d33fjne 0x40d302
0040d341
0040d341loc_40d341:
0040d341nop
0040d342mov ecx, r13l
0040d345call fn_40bcc0
0040d34amov r14, rax
0040d34dxor r13, r13
0040d350xor eax, eax
0040d352sub ebx, 1
0040d355mov edi, eax
0040d357cmp edi, ebx
0040d359jg 0x40d3c1
0040d35bsub ebx, eax
0040d35dadd ebx, 1
0040d360
0040d360loc_40d360:
0040d360movsxd rax, edi
0040d363mov rax, [rsi+8*rax]
0040d367mov [rbp+56], rax
0040d36bcmp [rbp+56], 0
0040d370je 0x40d3b7
0040d372mov rcx, [rbp+56]
0040d376movsxd rax, r13l
0040d379lea rdx, [r14+2*rax]
0040d37dmov rax, [rbp+56]
0040d381mov r8l, [rax-4]
0040d385shr r8l, 31
0040d389mov rax, [rbp+56]
0040d38dadd r8l, [rax-4]
0040d391sar r8l, 1
0040d395add r8l, r8l
0040d398movsxd r8, r8l
0040d39bcall fn_405ac0
0040d3a0mov rax, [rbp+56]
0040d3a4mov eax, [rax-4]
0040d3a7shr eax, 31
0040d3aamov rcx, [rbp+56]
0040d3aeadd eax, [rcx-4]
0040d3b1sar eax, 1
0040d3b4add r13l, eax
0040d3b7
0040d3b7loc_40d3b7:
0040d3b7add edi, 1
0040d3basub ebx, 1
0040d3bdtest ebx, ebx
0040d3bfjne 0x40d360
0040d3c1
0040d3c1loc_40d3c1:
0040d3c1nop
0040d3c2mov rcx, [rbp+40]
0040d3c6mov rdx, r14
0040d3c9call fn_40d020
0040d3celea rsp, [rbp+72]
0040d3d2pop rbx
0040d3d3pop rsi
0040d3d4pop rdi
0040d3d5pop r13
0040d3d7pop r14
0040d3d9pop rbp
0040d3daret
0040d2d0
0040d3db
0040d3db // align 0x10
0040d3db // align 0x10
0040d3e0
0040d3e0fn_40d3e0:
0040d3e0push r14
0040d3e2push r13
0040d3e4push rdi
0040d3e5push rsi
0040d3e6push rbx
0040d3e7sub rsp, 64
0040d3ebmov [rsp+40], rcx
0040d3f0mov ebx, edx
0040d3f2mov [rsp+48], r8
0040d3f7xor r13, r13
0040d3faxor esi, esi
0040d3fcxor eax, eax
0040d3femov edi, ebx
0040d400sub edi, 1
0040d403mov ecx, eax
0040d405cmp ecx, edi
0040d407mov [rsp+60], ecx
0040d40bjg 0x40d459
0040d40dsub edi, eax
0040d40fadd edi, 1
0040d412
0040d412loc_40d412:
0040d412mov eax, [rsp+60]
0040d416movsxd rax, eax
0040d419mov rcx, [rsp+48]
0040d41emov rax, [rcx+8*rax]
0040d422test rax, rax
0040d425je 0x40d447
0040d427mov rcx, [rsp+40]
0040d42ccmp rax, [rcx]
0040d42fjne 0x40d43b
0040d431mov ecx, [rsp+60]
0040d435test ecx, ecx
0040d437sete r13b
0040d43b
0040d43bloc_40d43b:
0040d43badd esi, [rax-4]
0040d43etest esi, esi
0040d440jge 0x40d447
0040d442call fn_4085f0
0040d447
0040d447loc_40d447:
0040d447mov eax, [rsp+60]
0040d44badd eax, 1
0040d44emov [rsp+60], eax
0040d452sub edi, 1
0040d455test edi, edi
0040d457jne 0x40d412
0040d459
0040d459loc_40d459:
0040d459nop
0040d45atest r13b, r13b
0040d45dje 0x40d485
0040d45fmov rax, [rsp+40]
0040d464mov rax, [rax]
0040d467mov edi, [rax-4]
0040d46amov rcx, [rsp+40]
0040d46fmov edx, esi
0040d471call fn_40d8d0
0040d476mov rax, [rsp+40]
0040d47bmov rsi, [rax]
0040d47emov eax, 1
0040d483jmp 0x40d493
0040d485
0040d485loc_40d485:
0040d485mov ecx, esi
0040d487call fn_40bbc0
0040d48cmov rsi, rax
0040d48fxor eax, eax
0040d491xor edi, edi
0040d493
0040d493loc_40d493:
0040d493mov r14l, ebx
0040d496sub r14l, 1
0040d49amov ecx, eax
0040d49ccmp ecx, r14l
0040d49fmov [rsp+60], ecx
0040d4a3jg 0x40d4f4
0040d4a5sub r14l, eax
0040d4a8add r14l, 1
0040d4ac
0040d4acloc_40d4ac:
0040d4acmov eax, [rsp+60]
0040d4b0movsxd rax, eax
0040d4b3mov rcx, [rsp+48]
0040d4b8mov rax, [rcx+8*rax]
0040d4bctest rax, rax
0040d4bfje 0x40d4e0
0040d4c1mov rbx, rax
0040d4c4mov rcx, rax
0040d4c7movsxd rax, edi
0040d4calea rdx, [rsi+2*rax]
0040d4cemov r8l, [rbx-4]
0040d4d2add r8l, r8l
0040d4d5movsxd r8, r8l
0040d4d8call fn_405ac0
0040d4ddadd edi, [rbx-4]
0040d4e0
0040d4e0loc_40d4e0:
0040d4e0mov eax, [rsp+60]
0040d4e4add eax, 1
0040d4e7mov [rsp+60], eax
0040d4ebsub r14l, 1
0040d4eftest r14l, r14l
0040d4f2jne 0x40d4ac
0040d4f4
0040d4f4loc_40d4f4:
0040d4f4nop
0040d4f5test r13b, r13b
0040d4f8jne 0x40d517
0040d4famov rax, [rsp+40]
0040d4ffcmp [rax], 0
0040d503je 0x40d50f
0040d505mov rcx, [rsp+40]
0040d50acall fn_40bcf0
0040d50f
0040d50floc_40d50f:
0040d50fmov rax, [rsp+40]
0040d514mov [rax], rsi
0040d517
0040d517loc_40d517:
0040d517add rsp, 64
0040d51bpop rbx
0040d51cpop rsi
0040d51dpop rdi
0040d51epop r13
0040d520pop r14
0040d522ret
0040d3e0
0040d3e0fn_40d3e0:
0040d3e0push r14
0040d3e2push r13
0040d3e4push rdi
0040d3e5push rsi
0040d3e6push rbx
0040d3e7sub rsp, 64
0040d3ebmov [rsp+40], rcx
0040d3f0mov ebx, edx
0040d3f2mov [rsp+48], r8
0040d3f7xor r13, r13
0040d3faxor esi, esi
0040d3fcxor eax, eax
0040d3femov edi, ebx
0040d400sub edi, 1
0040d403mov ecx, eax
0040d405cmp ecx, edi
0040d407mov [rsp+60], ecx
0040d40bjg 0x40d459
0040d40dsub edi, eax
0040d40fadd edi, 1
0040d412
0040d412loc_40d412:
0040d412mov eax, [rsp+60]
0040d416movsxd rax, eax
0040d419mov rcx, [rsp+48]
0040d41emov rax, [rcx+8*rax]
0040d422test rax, rax
0040d425je 0x40d447
0040d427mov rcx, [rsp+40]
0040d42ccmp rax, [rcx]
0040d42fjne 0x40d43b
0040d431mov ecx, [rsp+60]
0040d435test ecx, ecx
0040d437sete r13b
0040d43b
0040d43bloc_40d43b:
0040d43badd esi, [rax-4]
0040d43etest esi, esi
0040d440jge 0x40d447
0040d442call fn_4085f0
0040d447
0040d447loc_40d447:
0040d447mov eax, [rsp+60]
0040d44badd eax, 1
0040d44emov [rsp+60], eax
0040d452sub edi, 1
0040d455test edi, edi
0040d457jne 0x40d412
0040d459
0040d459loc_40d459:
0040d459nop
0040d45atest r13b, r13b
0040d45dje 0x40d485
0040d45fmov rax, [rsp+40]
0040d464mov rax, [rax]
0040d467mov edi, [rax-4]
0040d46amov rcx, [rsp+40]
0040d46fmov edx, esi
0040d471call fn_40d8d0
0040d476mov rax, [rsp+40]
0040d47bmov rsi, [rax]
0040d47emov eax, 1
0040d483jmp 0x40d493
0040d485
0040d485loc_40d485:
0040d485mov ecx, esi
0040d487call fn_40bbc0
0040d48cmov rsi, rax
0040d48fxor eax, eax
0040d491xor edi, edi
0040d493
0040d493loc_40d493:
0040d493mov r14l, ebx
0040d496sub r14l, 1
0040d49amov ecx, eax
0040d49ccmp ecx, r14l
0040d49fmov [rsp+60], ecx
0040d4a3jg 0x40d4f4
0040d4a5sub r14l, eax
0040d4a8add r14l, 1
0040d4ac
0040d4acloc_40d4ac:
0040d4acmov eax, [rsp+60]
0040d4b0movsxd rax, eax
0040d4b3mov rcx, [rsp+48]
0040d4b8mov rax, [rcx+8*rax]
0040d4bctest rax, rax
0040d4bfje 0x40d4e0
0040d4c1mov rbx, rax
0040d4c4mov rcx, rax
0040d4c7movsxd rax, edi
0040d4calea rdx, [rsi+2*rax]
0040d4cemov r8l, [rbx-4]
0040d4d2add r8l, r8l
0040d4d5movsxd r8, r8l
0040d4d8call fn_405ac0
0040d4ddadd edi, [rbx-4]
0040d4e0
0040d4e0loc_40d4e0:
0040d4e0mov eax, [rsp+60]
0040d4e4add eax, 1
0040d4e7mov [rsp+60], eax
0040d4ebsub r14l, 1
0040d4eftest r14l, r14l
0040d4f2jne 0x40d4ac
0040d4f4
0040d4f4loc_40d4f4:
0040d4f4nop
0040d4f5test r13b, r13b
0040d4f8jne 0x40d517
0040d4famov rax, [rsp+40]
0040d4ffcmp [rax], 0
0040d503je 0x40d50f
0040d505mov rcx, [rsp+40]
0040d50acall fn_40bcf0
0040d50f
0040d50floc_40d50f:
0040d50fmov rax, [rsp+40]
0040d514mov [rax], rsi
0040d517
0040d517loc_40d517:
0040d517add rsp, 64
0040d51bpop rbx
0040d51cpop rsi
0040d51dpop rdi
0040d51epop r13
0040d520pop r14
0040d522ret
0040d3e0
0040d523
0040d523 // align 0x10
0040d523 // align 0x10
0040d530
0040d530fn_40d530:
0040d530push rbp
0040d531push rbx
0040d532sub rsp, 40
0040d536mov rbp, rsp
0040d539mov [rbp+80], r8
0040d53dmov [rbp+88], r9
0040d541mov [rbp+64], rcx
0040d545mov [rbp+72], edx
0040d548lea rbx, [rbp+80]
0040d54cmov rcx, [rbp+64]
0040d550mov edx, [rbp+72]
0040d553mov r8, rbx
0040d556call fn_40d2d0
0040d55blea rsp, [rbp+40]
0040d55fpop rbx
0040d560pop rbp
0040d561ret
0040d530
0040d530fn_40d530:
0040d530push rbp
0040d531push rbx
0040d532sub rsp, 40
0040d536mov rbp, rsp
0040d539mov [rbp+80], r8
0040d53dmov [rbp+88], r9
0040d541mov [rbp+64], rcx
0040d545mov [rbp+72], edx
0040d548lea rbx, [rbp+80]
0040d54cmov rcx, [rbp+64]
0040d550mov edx, [rbp+72]
0040d553mov r8, rbx
0040d556call fn_40d2d0
0040d55blea rsp, [rbp+40]
0040d55fpop rbx
0040d560pop rbp
0040d561ret
0040d530
0040d562
0040d562 // align 0x10
0040d562 // align 0x10
0040d570
0040d570fn_40d570:
0040d570push r14
0040d572push r13
0040d574push rdi
0040d575push rsi
0040d576push rbx
0040d577sub rsp, 32
0040d57bmov rbx, rdx
0040d57emov rax, rcx
0040d581mov rdx, rbx
0040d584cmp rax, rdx
0040d587jne 0x40d590
0040d589xor eax, eax
0040d58bjmp 0x40d630
0040d590
0040d590loc_40d590:
0040d590test rax, rax
0040d593jne 0x40d5a8
0040d595mov eax, [rdx-4]
0040d598shr eax, 31
0040d59badd eax, [rdx-4]
0040d59esar eax, 1
0040d5a1neg eax
0040d5a3jmp 0x40d630
0040d5a8
0040d5a8loc_40d5a8:
0040d5a8test rdx, rdx
0040d5abjne 0x40d5bd
0040d5admov ecx, [rax-4]
0040d5b0shr ecx, 31
0040d5b3add ecx, [rax-4]
0040d5b6sar ecx, 1
0040d5b9mov eax, ecx
0040d5bbjmp 0x40d630
0040d5bd
0040d5bdloc_40d5bd:
0040d5bdmov edi, [rax-4]
0040d5c0shr edi, 31
0040d5c3add edi, [rax-4]
0040d5c6sar edi, 1
0040d5c9mov r13l, [rdx-4]
0040d5cdshr r13l, 31
0040d5d1add r13l, [rdx-4]
0040d5d5sar r13l, 1
0040d5d9mov esi, edi
0040d5dbcmp esi, r13l
0040d5dejle 0x40d5e3
0040d5e0mov esi, r13l
0040d5e3
0040d5e3loc_40d5e3:
0040d5e3call fn_40d180
0040d5e8mov r14, rax
0040d5ebmov rcx, rbx
0040d5eecall fn_40d180
0040d5f3mov rcx, rax
0040d5f6test esi, esi
0040d5f8jle 0x40d62a
0040d5fa
0040d5faloc_40d5fa:
0040d5famovzx eax, [r14]
0040d5femovzx edx, [rcx]
0040d601sub eax, edx
0040d603test eax, eax
0040d605jne 0x40d630
0040d607cmp esi, 1
0040d60aje 0x40d62a
0040d60cmovzx eax, [r14+2]
0040d611movzx edx, [rcx+2]
0040d615sub eax, edx
0040d617test eax, eax
0040d619jne 0x40d630
0040d61badd r14, 4
0040d61fadd rcx, 4
0040d623sub esi, 2
0040d626test esi, esi
0040d628jg 0x40d5fa
0040d62a
0040d62aloc_40d62a:
0040d62anop
0040d62bmov eax, edi
0040d62dsub eax, r13l
0040d630
0040d630loc_40d630:
0040d630add rsp, 32
0040d634pop rbx
0040d635pop rsi
0040d636pop rdi
0040d637pop r13
0040d639pop r14
0040d63bret
0040d570
0040d570fn_40d570:
0040d570push r14
0040d572push r13
0040d574push rdi
0040d575push rsi
0040d576push rbx
0040d577sub rsp, 32
0040d57bmov rbx, rdx
0040d57emov rax, rcx
0040d581mov rdx, rbx
0040d584cmp rax, rdx
0040d587jne 0x40d590
0040d589xor eax, eax
0040d58bjmp 0x40d630
0040d590
0040d590loc_40d590:
0040d590test rax, rax
0040d593jne 0x40d5a8
0040d595mov eax, [rdx-4]
0040d598shr eax, 31
0040d59badd eax, [rdx-4]
0040d59esar eax, 1
0040d5a1neg eax
0040d5a3jmp 0x40d630
0040d5a8
0040d5a8loc_40d5a8:
0040d5a8test rdx, rdx
0040d5abjne 0x40d5bd
0040d5admov ecx, [rax-4]
0040d5b0shr ecx, 31
0040d5b3add ecx, [rax-4]
0040d5b6sar ecx, 1
0040d5b9mov eax, ecx
0040d5bbjmp 0x40d630
0040d5bd
0040d5bdloc_40d5bd:
0040d5bdmov edi, [rax-4]
0040d5c0shr edi, 31
0040d5c3add edi, [rax-4]
0040d5c6sar edi, 1
0040d5c9mov r13l, [rdx-4]
0040d5cdshr r13l, 31
0040d5d1add r13l, [rdx-4]
0040d5d5sar r13l, 1
0040d5d9mov esi, edi
0040d5dbcmp esi, r13l
0040d5dejle 0x40d5e3
0040d5e0mov esi, r13l
0040d5e3
0040d5e3loc_40d5e3:
0040d5e3call fn_40d180
0040d5e8mov r14, rax
0040d5ebmov rcx, rbx
0040d5eecall fn_40d180
0040d5f3mov rcx, rax
0040d5f6test esi, esi
0040d5f8jle 0x40d62a
0040d5fa
0040d5faloc_40d5fa:
0040d5famovzx eax, [r14]
0040d5femovzx edx, [rcx]
0040d601sub eax, edx
0040d603test eax, eax
0040d605jne 0x40d630
0040d607cmp esi, 1
0040d60aje 0x40d62a
0040d60cmovzx eax, [r14+2]
0040d611movzx edx, [rcx+2]
0040d615sub eax, edx
0040d617test eax, eax
0040d619jne 0x40d630
0040d61badd r14, 4
0040d61fadd rcx, 4
0040d623sub esi, 2
0040d626test esi, esi
0040d628jg 0x40d5fa
0040d62a
0040d62aloc_40d62a:
0040d62anop
0040d62bmov eax, edi
0040d62dsub eax, r13l
0040d630
0040d630loc_40d630:
0040d630add rsp, 32
0040d634pop rbx
0040d635pop rsi
0040d636pop rdi
0040d637pop r13
0040d639pop r14
0040d63bret
0040d570
0040d63c
0040d63c // align 0x10
0040d63c // align 0x10
0040d640
0040d640fn_40d640:
0040d640sub rsp, 40
0040d644call fn_40d570
0040d649add rsp, 40
0040d64dret
0040d640
0040d640fn_40d640:
0040d640sub rsp, 40
0040d644call fn_40d570
0040d649add rsp, 40
0040d64dret
0040d640
0040d64e
0040d64e // align 0x10
0040d64e // align 0x10
0040d650
0040d650fn_40d650:
0040d650push rbx
0040d651sub rsp, 32
0040d655mov rbx, rcx
0040d658mov eax, r8l
0040d65bxor ecx, ecx
0040d65dtest rdx, rdx
0040d660je 0x40d668
0040d662mov ecx, [rdx-4]
0040d665shr ecx, 1
0040d668
0040d668loc_40d668:
0040d668cmp eax, 1
0040d66bjge 0x40d671
0040d66dxor eax, eax
0040d66fjmp 0x40d67a
0040d671
0040d671loc_40d671:
0040d671sub eax, 1
0040d674cmp eax, ecx
0040d676jle 0x40d67a
0040d678mov eax, ecx
0040d67a
0040d67aloc_40d67a:
0040d67atest r9l, r9l
0040d67djge 0x40d683
0040d67fxor ecx, ecx
0040d681jmp 0x40d68d
0040d683
0040d683loc_40d683:
0040d683sub ecx, eax
0040d685cmp ecx, r9l
0040d688jle 0x40d68d
0040d68amov ecx, r9l
0040d68d
0040d68dloc_40d68d:
0040d68dmov r8, rbx
0040d690movsxd rax, eax
0040d693lea rdx, [rdx+2*rax]
0040d697mov eax, ecx
0040d699mov rcx, r8
0040d69cmov r8l, eax
0040d69fcall fn_40c030
0040d6a4mov rax, rbx
0040d6a7add rsp, 32
0040d6abpop rbx
0040d6acret
0040d650
0040d650fn_40d650:
0040d650push rbx
0040d651sub rsp, 32
0040d655mov rbx, rcx
0040d658mov eax, r8l
0040d65bxor ecx, ecx
0040d65dtest rdx, rdx
0040d660je 0x40d668
0040d662mov ecx, [rdx-4]
0040d665shr ecx, 1
0040d668
0040d668loc_40d668:
0040d668cmp eax, 1
0040d66bjge 0x40d671
0040d66dxor eax, eax
0040d66fjmp 0x40d67a
0040d671
0040d671loc_40d671:
0040d671sub eax, 1
0040d674cmp eax, ecx
0040d676jle 0x40d67a
0040d678mov eax, ecx
0040d67a
0040d67aloc_40d67a:
0040d67atest r9l, r9l
0040d67djge 0x40d683
0040d67fxor ecx, ecx
0040d681jmp 0x40d68d
0040d683
0040d683loc_40d683:
0040d683sub ecx, eax
0040d685cmp ecx, r9l
0040d688jle 0x40d68d
0040d68amov ecx, r9l
0040d68d
0040d68dloc_40d68d:
0040d68dmov r8, rbx
0040d690movsxd rax, eax
0040d693lea rdx, [rdx+2*rax]
0040d697mov eax, ecx
0040d699mov rcx, r8
0040d69cmov r8l, eax
0040d69fcall fn_40c030
0040d6a4mov rax, rbx
0040d6a7add rsp, 32
0040d6abpop rbx
0040d6acret
0040d650
0040d6ad
0040d6ad // align 0x10
0040d6ad // align 0x10
0040d6b0
0040d6b0fn_40d6b0:
0040d6b0push rdi
0040d6b1push rsi
0040d6b2push rbx
0040d6b3sub rsp, 32
0040d6b7mov rbx, rcx
0040d6bamov esi, edx
0040d6bcxor edi, edi
0040d6betest esi, esi
0040d6c0jle 0x40d6f7
0040d6c2mov ecx, esi
0040d6c4call fn_40bcc0
0040d6c9mov rdi, rax
0040d6ccxor eax, eax
0040d6cemov rcx, [rbx]
0040d6d1test rcx, rcx
0040d6d4je 0x40d6dc
0040d6d6mov eax, [rcx-4]
0040d6d9shr eax, 1
0040d6dc
0040d6dcloc_40d6dc:
0040d6dctest eax, eax
0040d6dejle 0x40d6f7
0040d6e0cmp eax, esi
0040d6e2jle 0x40d6e6
0040d6e4mov eax, esi
0040d6e6
0040d6e6loc_40d6e6:
0040d6e6mov rdx, rdi
0040d6e9mov r8l, eax
0040d6ecadd r8l, r8l
0040d6efmovsxd r8, r8l
0040d6f2call fn_405ac0
0040d6f7
0040d6f7loc_40d6f7:
0040d6f7mov rcx, rbx
0040d6famov rdx, rdi
0040d6fdcall fn_40d020
0040d702add rsp, 32
0040d706pop rbx
0040d707pop rsi
0040d708pop rdi
0040d709ret
0040d6b0
0040d6b0fn_40d6b0:
0040d6b0push rdi
0040d6b1push rsi
0040d6b2push rbx
0040d6b3sub rsp, 32
0040d6b7mov rbx, rcx
0040d6bamov esi, edx
0040d6bcxor edi, edi
0040d6betest esi, esi
0040d6c0jle 0x40d6f7
0040d6c2mov ecx, esi
0040d6c4call fn_40bcc0
0040d6c9mov rdi, rax
0040d6ccxor eax, eax
0040d6cemov rcx, [rbx]
0040d6d1test rcx, rcx
0040d6d4je 0x40d6dc
0040d6d6mov eax, [rcx-4]
0040d6d9shr eax, 1
0040d6dc
0040d6dcloc_40d6dc:
0040d6dctest eax, eax
0040d6dejle 0x40d6f7
0040d6e0cmp eax, esi
0040d6e2jle 0x40d6e6
0040d6e4mov eax, esi
0040d6e6
0040d6e6loc_40d6e6:
0040d6e6mov rdx, rdi
0040d6e9mov r8l, eax
0040d6ecadd r8l, r8l
0040d6efmovsxd r8, r8l
0040d6f2call fn_405ac0
0040d6f7
0040d6f7loc_40d6f7:
0040d6f7mov rcx, rbx
0040d6famov rdx, rdi
0040d6fdcall fn_40d020
0040d702add rsp, 32
0040d706pop rbx
0040d707pop rsi
0040d708pop rdi
0040d709ret
0040d6b0
0040d70a
0040d70a // align 0x10
0040d70a // align 0x10
0040d710
0040d710fn_40d710:
0040d710mov rax, rcx
0040d713test rax, rax
0040d716jne 0x40d723
0040d718mov rax, [rip+0x4dab1]
0040d71flea rax, [rax+16]
0040d723
0040d723loc_40d723:
0040d723ret
0040d710
0040d710fn_40d710:
0040d710mov rax, rcx
0040d713test rax, rax
0040d716jne 0x40d723
0040d718mov rax, [rip+0x4dab1]
0040d71flea rax, [rax+16]
0040d723
0040d723loc_40d723:
0040d723ret
0040d710
0040d724
0040d724 // align 0x10
0040d724 // align 0x10
0040d730
0040d730fn_40d730:
0040d730sub rsp, 40
0040d734mov [rsp+56], dx
0040d739lea rdx, [rsp+56]
0040d73emov r8l, 1
0040d744call fn_40bfd0
0040d749add rsp, 40
0040d74dret
0040d730
0040d730fn_40d730:
0040d730sub rsp, 40
0040d734mov [rsp+56], dx
0040d739lea rdx, [rsp+56]
0040d73emov r8l, 1
0040d744call fn_40bfd0
0040d749add rsp, 40
0040d74dret
0040d730
0040d74e
0040d74e // align 0x10
0040d74e // align 0x10
0040d750
0040d750fn_40d750:
0040d750push rsi
0040d751push rbx
0040d752sub rsp, 40
0040d756mov rbx, rcx
0040d759mov rsi, rdx
0040d75cmov rcx, rsi
0040d75fcall fn_40c580
0040d764mov rcx, rbx
0040d767mov rdx, rsi
0040d76amov r8l, eax
0040d76dcall fn_40c1a0
0040d772add rsp, 40
0040d776pop rbx
0040d777pop rsi
0040d778ret
0040d750
0040d750fn_40d750:
0040d750push rsi
0040d751push rbx
0040d752sub rsp, 40
0040d756mov rbx, rcx
0040d759mov rsi, rdx
0040d75cmov rcx, rsi
0040d75fcall fn_40c580
0040d764mov rcx, rbx
0040d767mov rdx, rsi
0040d76amov r8l, eax
0040d76dcall fn_40c1a0
0040d772add rsp, 40
0040d776pop rbx
0040d777pop rsi
0040d778ret
0040d750
0040d779
0040d779 // align 0x10
0040d779 // align 0x10
0040d780
0040d780fn_40d780:
0040d780push rsi
0040d781push rbx
0040d782sub rsp, 40
0040d786mov rbx, rcx
0040d789mov rsi, rdx
0040d78cmov rcx, rsi
0040d78fcall fn_40c5a0
0040d794mov rcx, rbx
0040d797mov rdx, rsi
0040d79amov r8l, eax
0040d79dcall fn_40bfd0
0040d7a2add rsp, 40
0040d7a6pop rbx
0040d7a7pop rsi
0040d7a8ret
0040d780
0040d780fn_40d780:
0040d780push rsi
0040d781push rbx
0040d782sub rsp, 40
0040d786mov rbx, rcx
0040d789mov rsi, rdx
0040d78cmov rcx, rsi
0040d78fcall fn_40c5a0
0040d794mov rcx, rbx
0040d797mov rdx, rsi
0040d79amov r8l, eax
0040d79dcall fn_40bfd0
0040d7a2add rsp, 40
0040d7a6pop rbx
0040d7a7pop rsi
0040d7a8ret
0040d780
0040d7a9
0040d7a9 // align 0x10
0040d7a9 // align 0x10
0040d7b0
0040d7b0fn_40d7b0:
0040d7b0sub rsp, 40
0040d7b4mov eax, r8l
0040d7b7mov r8, rdx
0040d7bajmp 0x40d7c3
0040d7bc
0040d7bcloc_40d7bc:
0040d7bcsub eax, 1
0040d7bfadd r8, 2
0040d7c3
0040d7c3loc_40d7c3:
0040d7c3test eax, eax
0040d7c5jle 0x40d7ce
0040d7c7cmp [r8], 0
0040d7ccjne 0x40d7bc
0040d7ce
0040d7celoc_40d7ce:
0040d7cemov rax, r8
0040d7d1sub rax, rdx
0040d7d4sar rax, 1
0040d7d8jns 0x40d7de
0040d7daadc rax, 0
0040d7de
0040d7deloc_40d7de:
0040d7demov r8l, eax
0040d7e1call fn_40bfd0
0040d7e6add rsp, 40
0040d7earet
0040d7b0
0040d7b0fn_40d7b0:
0040d7b0sub rsp, 40
0040d7b4mov eax, r8l
0040d7b7mov r8, rdx
0040d7bajmp 0x40d7c3
0040d7bc
0040d7bcloc_40d7bc:
0040d7bcsub eax, 1
0040d7bfadd r8, 2
0040d7c3
0040d7c3loc_40d7c3:
0040d7c3test eax, eax
0040d7c5jle 0x40d7ce
0040d7c7cmp [r8], 0
0040d7ccjne 0x40d7bc
0040d7ce
0040d7celoc_40d7ce:
0040d7cemov rax, r8
0040d7d1sub rax, rdx
0040d7d4sar rax, 1
0040d7d8jns 0x40d7de
0040d7daadc rax, 0
0040d7de
0040d7deloc_40d7de:
0040d7demov r8l, eax
0040d7e1call fn_40bfd0
0040d7e6add rsp, 40
0040d7earet
0040d7b0
0040d7eb
0040d7eb // align 0x10
0040d7eb // align 0x10
0040d7f0
0040d7f0fn_40d7f0:
0040d7f0sub rsp, 40
0040d7f4test rdx, rdx
0040d7f7jne 0x40d800
0040d7f9call fn_40bcf0
0040d7fejmp 0x40d814
0040d800
0040d800loc_40d800:
0040d800mov rax, rdx
0040d803mov r8l, [rdx-4]
0040d807movzx r9l, [rdx-12]
0040d80cmov rdx, rax
0040d80fcall fn_40c0d0
0040d814
0040d814loc_40d814:
0040d814add rsp, 40
0040d818ret
0040d7f0
0040d7f0fn_40d7f0:
0040d7f0sub rsp, 40
0040d7f4test rdx, rdx
0040d7f7jne 0x40d800
0040d7f9call fn_40bcf0
0040d7fejmp 0x40d814
0040d800
0040d800loc_40d800:
0040d800mov rax, rdx
0040d803mov r8l, [rdx-4]
0040d807movzx r9l, [rdx-12]
0040d80cmov rdx, rax
0040d80fcall fn_40c0d0
0040d814
0040d814loc_40d814:
0040d814add rsp, 40
0040d818ret
0040d7f0
0040d819
0040d819 // align 0x10
0040d819 // align 0x10
0040d820
0040d820fn_40d820:
0040d820sub rsp, 40
0040d824xor eax, eax
0040d826test rdx, rdx
0040d829je 0x40d837
0040d82bmov eax, [rdx-4]
0040d82eshr eax, 31
0040d831add eax, [rdx-4]
0040d834sar eax, 1
0040d837
0040d837loc_40d837:
0040d837mov r8l, eax
0040d83acall fn_40bfd0
0040d83fadd rsp, 40
0040d843ret
0040d820
0040d820fn_40d820:
0040d820sub rsp, 40
0040d824xor eax, eax
0040d826test rdx, rdx
0040d829je 0x40d837
0040d82bmov eax, [rdx-4]
0040d82eshr eax, 31
0040d831add eax, [rdx-4]
0040d834sar eax, 1
0040d837
0040d837loc_40d837:
0040d837mov r8l, eax
0040d83acall fn_40bfd0
0040d83fadd rsp, 40
0040d843ret
0040d820
0040d844
0040d844 // align 0x10
0040d844 // align 0x10
0040d850
0040d850fn_40d850:
0040d850sub rsp, 40
0040d854test rdx, rdx
0040d857jne 0x40d860
0040d859call fn_40bd90
0040d85ejmp 0x40d86f
0040d860
0040d860loc_40d860:
0040d860mov rax, rdx
0040d863mov r8l, [rdx-4]
0040d867mov rdx, rax
0040d86acall fn_40c030
0040d86f
0040d86floc_40d86f:
0040d86fadd rsp, 40
0040d873ret
0040d850
0040d850fn_40d850:
0040d850sub rsp, 40
0040d854test rdx, rdx
0040d857jne 0x40d860
0040d859call fn_40bd90
0040d85ejmp 0x40d86f
0040d860
0040d860loc_40d860:
0040d860mov rax, rdx
0040d863mov r8l, [rdx-4]
0040d867mov rdx, rax
0040d86acall fn_40c030
0040d86f
0040d86floc_40d86f:
0040d86fadd rsp, 40
0040d873ret
0040d850
0040d874
0040d874 // align 0x10
0040d874 // align 0x10
0040d880
0040d880fn_40d880:
0040d880push rbp
0040d881push rdi
0040d882push rsi
0040d883sub rsp, 288
0040d88amov rbp, rsp
0040d88dmov rax, rcx
0040d890mov rsi, rdx
0040d893movzx rcx, [rsi]
0040d897lea rcx, [rcx+1]
0040d89blea rdi, [rbp+32]
0040d89frep movsb [rdi], [rsi]
0040d8a1mov rcx, rax
0040d8a4lea rdx, [rbp+33]
0040d8a8movzx r8, [rbp+32]
0040d8admov r9l, [rip+0x58164]
0040d8b4call fn_40c0d0
0040d8b9lea rsp, [rbp+288]
0040d8c0pop rsi
0040d8c1pop rdi
0040d8c2pop rbp
0040d8c3ret
0040d880
0040d880fn_40d880:
0040d880push rbp
0040d881push rdi
0040d882push rsi
0040d883sub rsp, 288
0040d88amov rbp, rsp
0040d88dmov rax, rcx
0040d890mov rsi, rdx
0040d893movzx rcx, [rsi]
0040d897lea rcx, [rcx+1]
0040d89blea rdi, [rbp+32]
0040d89frep movsb [rdi], [rsi]
0040d8a1mov rcx, rax
0040d8a4lea rdx, [rbp+33]
0040d8a8movzx r8, [rbp+32]
0040d8admov r9l, [rip+0x58164]
0040d8b4call fn_40c0d0
0040d8b9lea rsp, [rbp+288]
0040d8c0pop rsi
0040d8c1pop rdi
0040d8c2pop rbp
0040d8c3ret
0040d880
0040d8c4
0040d8c4 // align 0x10
0040d8c4 // align 0x10
0040d8d0
0040d8d0fn_40d8d0:
0040d8d0push rbp
0040d8d1push r13
0040d8d3push rdi
0040d8d4push rsi
0040d8d5push rbx
0040d8d6sub rsp, 48
0040d8damov rbp, rsp
0040d8ddmov rbx, rcx
0040d8e0mov esi, edx
0040d8e2test esi, esi
0040d8e4jg 0x40d8f3
0040d8e6mov rcx, rbx
0040d8e9call fn_40bcf0
0040d8eejmp 0x40d996
0040d8f3
0040d8f3loc_40d8f3:
0040d8f3mov rax, [rbx]
0040d8f6test rax, rax
0040d8f9je 0x40d951
0040d8fbcmp [rax-8], 1
0040d8ffjne 0x40d951
0040d901lea rax, [rax-16]
0040d905mov [rbp+40], rax
0040d909cmp esi, 0x7ffffff7
0040d90fjb 0x40d916
0040d911call fn_4085f0
0040d916
0040d916loc_40d916:
0040d916lea rcx, [rbp+40]
0040d91amov edx, esi
0040d91cadd edx, 1
0040d91fadd edx, edx
0040d921add edx, 16
0040d924movsxd rdx, edx
0040d927call fn_405760
0040d92cmov rax, [rbp+40]
0040d930mov [rax+12], esi
0040d933mov rax, [rbp+40]
0040d937lea rax, [rax+16]
0040d93bmov [rbx], rax
0040d93emov rcx, [rbx]
0040d941call fn_40d710
0040d946movsxd rsi, esi
0040d949mov [rax+2*rsi], 0
0040d94fjmp 0x40d996
0040d951
0040d951loc_40d951:
0040d951mov ecx, esi
0040d953call fn_40bbc0
0040d958mov rdi, rax
0040d95bmov rax, [rbx]
0040d95etest rax, rax
0040d961je 0x40d993
0040d963mov r13l, [rax-4]
0040d967cmp r13l, esi
0040d96ajle 0x40d96f
0040d96cmov r13l, esi
0040d96f
0040d96floc_40d96f:
0040d96fmov rcx, [rbx]
0040d972call fn_40d710
0040d977mov rcx, rax
0040d97amov rdx, rdi
0040d97dmov r8l, r13l
0040d980add r8l, r8l
0040d983movsxd r8, r8l
0040d986call fn_405ac0
0040d98bmov rcx, rbx
0040d98ecall fn_40bcf0
0040d993
0040d993loc_40d993:
0040d993mov [rbx], rdi
0040d996
0040d996loc_40d996:
0040d996lea rsp, [rbp+48]
0040d99apop rbx
0040d99bpop rsi
0040d99cpop rdi
0040d99dpop r13
0040d99fpop rbp
0040d9a0ret
0040d8d0
0040d8d0fn_40d8d0:
0040d8d0push rbp
0040d8d1push r13
0040d8d3push rdi
0040d8d4push rsi
0040d8d5push rbx
0040d8d6sub rsp, 48
0040d8damov rbp, rsp
0040d8ddmov rbx, rcx
0040d8e0mov esi, edx
0040d8e2test esi, esi
0040d8e4jg 0x40d8f3
0040d8e6mov rcx, rbx
0040d8e9call fn_40bcf0
0040d8eejmp 0x40d996
0040d8f3
0040d8f3loc_40d8f3:
0040d8f3mov rax, [rbx]
0040d8f6test rax, rax
0040d8f9je 0x40d951
0040d8fbcmp [rax-8], 1
0040d8ffjne 0x40d951
0040d901lea rax, [rax-16]
0040d905mov [rbp+40], rax
0040d909cmp esi, 0x7ffffff7
0040d90fjb 0x40d916
0040d911call fn_4085f0
0040d916
0040d916loc_40d916:
0040d916lea rcx, [rbp+40]
0040d91amov edx, esi
0040d91cadd edx, 1
0040d91fadd edx, edx
0040d921add edx, 16
0040d924movsxd rdx, edx
0040d927call fn_405760
0040d92cmov rax, [rbp+40]
0040d930mov [rax+12], esi
0040d933mov rax, [rbp+40]
0040d937lea rax, [rax+16]
0040d93bmov [rbx], rax
0040d93emov rcx, [rbx]
0040d941call fn_40d710
0040d946movsxd rsi, esi
0040d949mov [rax+2*rsi], 0
0040d94fjmp 0x40d996
0040d951
0040d951loc_40d951:
0040d951mov ecx, esi
0040d953call fn_40bbc0
0040d958mov rdi, rax
0040d95bmov rax, [rbx]
0040d95etest rax, rax
0040d961je 0x40d993
0040d963mov r13l, [rax-4]
0040d967cmp r13l, esi
0040d96ajle 0x40d96f
0040d96cmov r13l, esi
0040d96f
0040d96floc_40d96f:
0040d96fmov rcx, [rbx]
0040d972call fn_40d710
0040d977mov rcx, rax
0040d97amov rdx, rdi
0040d97dmov r8l, r13l
0040d980add r8l, r8l
0040d983movsxd r8, r8l
0040d986call fn_405ac0
0040d98bmov rcx, rbx
0040d98ecall fn_40bcf0
0040d993
0040d993loc_40d993:
0040d993mov [rbx], rdi
0040d996
0040d996loc_40d996:
0040d996lea rsp, [rbp+48]
0040d99apop rbx
0040d99bpop rsi
0040d99cpop rdi
0040d99dpop r13
0040d99fpop rbp
0040d9a0ret
0040d8d0
0040d9a1
0040d9a1 // align 0x10
0040d9a1 // align 0x10
0040d9b0
0040d9b0fn_40d9b0:
0040d9b0push r14
0040d9b2push r13
0040d9b4push rdi
0040d9b5push rsi
0040d9b6push rbx
0040d9b7sub rsp, 48
0040d9bbmov [rsp+40], rcx
0040d9c0mov rbx, rdx
0040d9c3mov rcx, rbx
0040d9c6test rcx, rcx
0040d9c9je 0x40da65
0040d9cfmov rax, [rsp+40]
0040d9d4mov rax, [rax]
0040d9d7test rax, rax
0040d9dajne 0x40d9eb
0040d9dcmov rcx, [rsp+40]
0040d9e1mov rdx, rbx
0040d9e4call fn_40c360
0040d9e9jmp 0x40da65
0040d9eb
0040d9ebloc_40d9eb:
0040d9ebmov esi, [rax-4]
0040d9eemov edi, [rcx-4]
0040d9f1mov r13l, esi
0040d9f4add r13l, edi
0040d9f7mov eax, r13l
0040d9fatest eax, 0xffffffffc0000000
0040da00je 0x40da07
0040da02call fn_4085f0
0040da07
0040da07loc_40da07:
0040da07mov rcx, [rsp+40]
0040da0ccall fn_40c680
0040da11mov r14, rax
0040da14mov rcx, [rsp+40]
0040da19mov edx, r13l
0040da1ccall fn_40d8d0
0040da21mov rcx, rbx
0040da24call fn_40d710
0040da29cmp r14, rax
0040da2cjne 0x40da3d
0040da2emov rcx, [rsp+40]
0040da33call fn_40c680
0040da38mov r14, rax
0040da3bjmp 0x40da40
0040da3d
0040da3dloc_40da3d:
0040da3dmov r14, rax
0040da40
0040da40loc_40da40:
0040da40mov rcx, [rsp+40]
0040da45call fn_40c680
0040da4amov rcx, r14
0040da4dadd esi, 1
0040da50mov esi, esi
0040da52lea rdx, [rax+2*rsi-2]
0040da57mov r8l, edi
0040da5aadd r8l, r8l
0040da5dmov r8l, r8l
0040da60call fn_405ac0
0040da65
0040da65loc_40da65:
0040da65add rsp, 48
0040da69pop rbx
0040da6apop rsi
0040da6bpop rdi
0040da6cpop r13
0040da6epop r14
0040da70ret
0040d9b0
0040d9b0fn_40d9b0:
0040d9b0push r14
0040d9b2push r13
0040d9b4push rdi
0040d9b5push rsi
0040d9b6push rbx
0040d9b7sub rsp, 48
0040d9bbmov [rsp+40], rcx
0040d9c0mov rbx, rdx
0040d9c3mov rcx, rbx
0040d9c6test rcx, rcx
0040d9c9je 0x40da65
0040d9cfmov rax, [rsp+40]
0040d9d4mov rax, [rax]
0040d9d7test rax, rax
0040d9dajne 0x40d9eb
0040d9dcmov rcx, [rsp+40]
0040d9e1mov rdx, rbx
0040d9e4call fn_40c360
0040d9e9jmp 0x40da65
0040d9eb
0040d9ebloc_40d9eb:
0040d9ebmov esi, [rax-4]
0040d9eemov edi, [rcx-4]
0040d9f1mov r13l, esi
0040d9f4add r13l, edi
0040d9f7mov eax, r13l
0040d9fatest eax, 0xffffffffc0000000
0040da00je 0x40da07
0040da02call fn_4085f0
0040da07
0040da07loc_40da07:
0040da07mov rcx, [rsp+40]
0040da0ccall fn_40c680
0040da11mov r14, rax
0040da14mov rcx, [rsp+40]
0040da19mov edx, r13l
0040da1ccall fn_40d8d0
0040da21mov rcx, rbx
0040da24call fn_40d710
0040da29cmp r14, rax
0040da2cjne 0x40da3d
0040da2emov rcx, [rsp+40]
0040da33call fn_40c680
0040da38mov r14, rax
0040da3bjmp 0x40da40
0040da3d
0040da3dloc_40da3d:
0040da3dmov r14, rax
0040da40
0040da40loc_40da40:
0040da40mov rcx, [rsp+40]
0040da45call fn_40c680
0040da4amov rcx, r14
0040da4dadd esi, 1
0040da50mov esi, esi
0040da52lea rdx, [rax+2*rsi-2]
0040da57mov r8l, edi
0040da5aadd r8l, r8l
0040da5dmov r8l, r8l
0040da60call fn_405ac0
0040da65
0040da65loc_40da65:
0040da65add rsp, 48
0040da69pop rbx
0040da6apop rsi
0040da6bpop rdi
0040da6cpop r13
0040da6epop r14
0040da70ret
0040d9b0
0040da71
0040da71 // align 0x10
0040da71 // align 0x10
0040da80
0040da80fn_40da80:
0040da80push r14
0040da82push r13
0040da84push rdi
0040da85push rsi
0040da86push rbx
0040da87sub rsp, 48
0040da8bmov [rsp+40], rcx
0040da90mov rbx, rdx
0040da93mov rsi, r8
0040da96mov rax, rbx
0040da99test rax, rax
0040da9cjne 0x40dab0
0040da9emov rcx, [rsp+40]
0040daa3mov rdx, rsi
0040daa6call fn_40c360
0040daabjmp 0x40db98
0040dab0
0040dab0loc_40dab0:
0040dab0mov rdx, rsi
0040dab3test rdx, rdx
0040dab6jne 0x40daca
0040dab8mov rcx, [rsp+40]
0040dabdmov rdx, rbx
0040dac0call fn_40c360
0040dac5jmp 0x40db98
0040daca
0040dacaloc_40daca:
0040dacamov rcx, [rsp+40]
0040dacfmov rcx, [rcx]
0040dad2cmp rcx, rax
0040dad5jne 0x40dae9
0040dad7mov rcx, [rsp+40]
0040dadcmov rdx, rsi
0040dadfcall fn_40d9b0
0040dae4jmp 0x40db98
0040dae9
0040dae9loc_40dae9:
0040dae9cmp rcx, rdx
0040daecjne 0x40db7e
0040daf2mov r13l, [rax-4]
0040daf6mov r14l, [rdx-4]
0040dafamov edi, r13l
0040dafdadd edi, r14l
0040db00mov eax, r13l
0040db03and eax, r14l
0040db06mov ecx, edi
0040db08not ecx
0040db0amov edx, r13l
0040db0dor edx, r14l
0040db10and ecx, edx
0040db12or eax, ecx
0040db14test eax, 0xffffffff80000000
0040db1aje 0x40db21
0040db1ccall fn_4085f0
0040db21
0040db21loc_40db21:
0040db21mov ecx, edi
0040db23call fn_40bbc0
0040db28mov rdi, rax
0040db2bmov rcx, rbx
0040db2ecall fn_40d710
0040db33mov rbx, rdi
0040db36mov rcx, rax
0040db39mov rdx, rbx
0040db3cmov r8l, r13l
0040db3fadd r8l, r8l
0040db42mov r8l, r8l
0040db45call fn_405ac0
0040db4amov rcx, rsi
0040db4dcall fn_40d710
0040db52mov rcx, rax
0040db55mov r13l, r13l
0040db58lea rdx, [rbx+2*r13]
0040db5cmov r8l, r14l
0040db5fadd r8l, r8l
0040db62mov r8l, r8l
0040db65call fn_405ac0
0040db6amov rcx, [rsp+40]
0040db6fcall fn_40bcf0
0040db74mov rax, [rsp+40]
0040db79mov [rax], rdi
0040db7cjmp 0x40db98
0040db7e
0040db7eloc_40db7e:
0040db7emov rcx, [rsp+40]
0040db83mov rdx, rbx
0040db86call fn_40c360
0040db8bmov rcx, [rsp+40]
0040db90mov rdx, rsi
0040db93call fn_40d9b0
0040db98
0040db98loc_40db98:
0040db98add rsp, 48
0040db9cpop rbx
0040db9dpop rsi
0040db9epop rdi
0040db9fpop r13
0040dba1pop r14
0040dba3ret
0040da80
0040da80fn_40da80:
0040da80push r14
0040da82push r13
0040da84push rdi
0040da85push rsi
0040da86push rbx
0040da87sub rsp, 48
0040da8bmov [rsp+40], rcx
0040da90mov rbx, rdx
0040da93mov rsi, r8
0040da96mov rax, rbx
0040da99test rax, rax
0040da9cjne 0x40dab0
0040da9emov rcx, [rsp+40]
0040daa3mov rdx, rsi
0040daa6call fn_40c360
0040daabjmp 0x40db98
0040dab0
0040dab0loc_40dab0:
0040dab0mov rdx, rsi
0040dab3test rdx, rdx
0040dab6jne 0x40daca
0040dab8mov rcx, [rsp+40]
0040dabdmov rdx, rbx
0040dac0call fn_40c360
0040dac5jmp 0x40db98
0040daca
0040dacaloc_40daca:
0040dacamov rcx, [rsp+40]
0040dacfmov rcx, [rcx]
0040dad2cmp rcx, rax
0040dad5jne 0x40dae9
0040dad7mov rcx, [rsp+40]
0040dadcmov rdx, rsi
0040dadfcall fn_40d9b0
0040dae4jmp 0x40db98
0040dae9
0040dae9loc_40dae9:
0040dae9cmp rcx, rdx
0040daecjne 0x40db7e
0040daf2mov r13l, [rax-4]
0040daf6mov r14l, [rdx-4]
0040dafamov edi, r13l
0040dafdadd edi, r14l
0040db00mov eax, r13l
0040db03and eax, r14l
0040db06mov ecx, edi
0040db08not ecx
0040db0amov edx, r13l
0040db0dor edx, r14l
0040db10and ecx, edx
0040db12or eax, ecx
0040db14test eax, 0xffffffff80000000
0040db1aje 0x40db21
0040db1ccall fn_4085f0
0040db21
0040db21loc_40db21:
0040db21mov ecx, edi
0040db23call fn_40bbc0
0040db28mov rdi, rax
0040db2bmov rcx, rbx
0040db2ecall fn_40d710
0040db33mov rbx, rdi
0040db36mov rcx, rax
0040db39mov rdx, rbx
0040db3cmov r8l, r13l
0040db3fadd r8l, r8l
0040db42mov r8l, r8l
0040db45call fn_405ac0
0040db4amov rcx, rsi
0040db4dcall fn_40d710
0040db52mov rcx, rax
0040db55mov r13l, r13l
0040db58lea rdx, [rbx+2*r13]
0040db5cmov r8l, r14l
0040db5fadd r8l, r8l
0040db62mov r8l, r8l
0040db65call fn_405ac0
0040db6amov rcx, [rsp+40]
0040db6fcall fn_40bcf0
0040db74mov rax, [rsp+40]
0040db79mov [rax], rdi
0040db7cjmp 0x40db98
0040db7e
0040db7eloc_40db7e:
0040db7emov rcx, [rsp+40]
0040db83mov rdx, rbx
0040db86call fn_40c360
0040db8bmov rcx, [rsp+40]
0040db90mov rdx, rsi
0040db93call fn_40d9b0
0040db98
0040db98loc_40db98:
0040db98add rsp, 48
0040db9cpop rbx
0040db9dpop rsi
0040db9epop rdi
0040db9fpop r13
0040dba1pop r14
0040dba3ret
0040da80
0040dba4
0040dba4 // align 0x10
0040dba4 // align 0x10
0040dbb0
0040dbb0fn_40dbb0:
0040dbb0push rbp
0040dbb1push rbx
0040dbb2sub rsp, 40
0040dbb6mov rbp, rsp
0040dbb9mov [rbp+80], r8
0040dbbdmov [rbp+88], r9
0040dbc1mov [rbp+64], rcx
0040dbc5mov [rbp+72], edx
0040dbc8lea rbx, [rbp+80]
0040dbccmov rcx, [rbp+64]
0040dbd0mov edx, [rbp+72]
0040dbd3mov r8, rbx
0040dbd6call fn_40d3e0
0040dbdblea rsp, [rbp+40]
0040dbdfpop rbx
0040dbe0pop rbp
0040dbe1ret
0040dbb0
0040dbb0fn_40dbb0:
0040dbb0push rbp
0040dbb1push rbx
0040dbb2sub rsp, 40
0040dbb6mov rbp, rsp
0040dbb9mov [rbp+80], r8
0040dbbdmov [rbp+88], r9
0040dbc1mov [rbp+64], rcx
0040dbc5mov [rbp+72], edx
0040dbc8lea rbx, [rbp+80]
0040dbccmov rcx, [rbp+64]
0040dbd0mov edx, [rbp+72]
0040dbd3mov r8, rbx
0040dbd6call fn_40d3e0
0040dbdblea rsp, [rbp+40]
0040dbdfpop rbx
0040dbe0pop rbp
0040dbe1ret
0040dbb0
0040dbe2
0040dbe2 // align 0x10
0040dbe2 // align 0x10
0040dbf0
0040dbf0fn_40dbf0:
0040dbf0push r14
0040dbf2push r13
0040dbf4push rdi
0040dbf5push rsi
0040dbf6push rbx
0040dbf7sub rsp, 32
0040dbfbmov rbx, rdx
0040dbfemov rax, rcx
0040dc01mov rdx, rbx
0040dc04cmp rax, rdx
0040dc07jne 0x40dc0d
0040dc09xor eax, eax
0040dc0bjmp 0x40dc81
0040dc0d
0040dc0dloc_40dc0d:
0040dc0dtest rax, rax
0040dc10jne 0x40dc19
0040dc12mov eax, [rdx-4]
0040dc15neg eax
0040dc17jmp 0x40dc81
0040dc19
0040dc19loc_40dc19:
0040dc19test rdx, rdx
0040dc1cjne 0x40dc23
0040dc1emov eax, [rax-4]
0040dc21jmp 0x40dc81
0040dc23
0040dc23loc_40dc23:
0040dc23mov edi, [rax-4]
0040dc26mov r13l, [rdx-4]
0040dc2amov esi, edi
0040dc2ccmp esi, r13l
0040dc2fjle 0x40dc34
0040dc31mov esi, r13l
0040dc34
0040dc34loc_40dc34:
0040dc34call fn_40d710
0040dc39mov r14, rax
0040dc3cmov rcx, rbx
0040dc3fcall fn_40d710
0040dc44mov rcx, rax
0040dc47test esi, esi
0040dc49jle 0x40dc7b
0040dc4b
0040dc4bloc_40dc4b:
0040dc4bmovzx eax, [r14]
0040dc4fmovzx edx, [rcx]
0040dc52sub eax, edx
0040dc54test eax, eax
0040dc56jne 0x40dc81
0040dc58cmp esi, 1
0040dc5bje 0x40dc7b
0040dc5dmovzx eax, [r14+2]
0040dc62movzx edx, [rcx+2]
0040dc66sub eax, edx
0040dc68test eax, eax
0040dc6ajne 0x40dc81
0040dc6cadd r14, 4
0040dc70add rcx, 4
0040dc74sub esi, 2
0040dc77test esi, esi
0040dc79jg 0x40dc4b
0040dc7b
0040dc7bloc_40dc7b:
0040dc7bnop
0040dc7cmov eax, edi
0040dc7esub eax, r13l
0040dc81
0040dc81loc_40dc81:
0040dc81add rsp, 32
0040dc85pop rbx
0040dc86pop rsi
0040dc87pop rdi
0040dc88pop r13
0040dc8apop r14
0040dc8cret
0040dbf0
0040dbf0fn_40dbf0:
0040dbf0push r14
0040dbf2push r13
0040dbf4push rdi
0040dbf5push rsi
0040dbf6push rbx
0040dbf7sub rsp, 32
0040dbfbmov rbx, rdx
0040dbfemov rax, rcx
0040dc01mov rdx, rbx
0040dc04cmp rax, rdx
0040dc07jne 0x40dc0d
0040dc09xor eax, eax
0040dc0bjmp 0x40dc81
0040dc0d
0040dc0dloc_40dc0d:
0040dc0dtest rax, rax
0040dc10jne 0x40dc19
0040dc12mov eax, [rdx-4]
0040dc15neg eax
0040dc17jmp 0x40dc81
0040dc19
0040dc19loc_40dc19:
0040dc19test rdx, rdx
0040dc1cjne 0x40dc23
0040dc1emov eax, [rax-4]
0040dc21jmp 0x40dc81
0040dc23
0040dc23loc_40dc23:
0040dc23mov edi, [rax-4]
0040dc26mov r13l, [rdx-4]
0040dc2amov esi, edi
0040dc2ccmp esi, r13l
0040dc2fjle 0x40dc34
0040dc31mov esi, r13l
0040dc34
0040dc34loc_40dc34:
0040dc34call fn_40d710
0040dc39mov r14, rax
0040dc3cmov rcx, rbx
0040dc3fcall fn_40d710
0040dc44mov rcx, rax
0040dc47test esi, esi
0040dc49jle 0x40dc7b
0040dc4b
0040dc4bloc_40dc4b:
0040dc4bmovzx eax, [r14]
0040dc4fmovzx edx, [rcx]
0040dc52sub eax, edx
0040dc54test eax, eax
0040dc56jne 0x40dc81
0040dc58cmp esi, 1
0040dc5bje 0x40dc7b
0040dc5dmovzx eax, [r14+2]
0040dc62movzx edx, [rcx+2]
0040dc66sub eax, edx
0040dc68test eax, eax
0040dc6ajne 0x40dc81
0040dc6cadd r14, 4
0040dc70add rcx, 4
0040dc74sub esi, 2
0040dc77test esi, esi
0040dc79jg 0x40dc4b
0040dc7b
0040dc7bloc_40dc7b:
0040dc7bnop
0040dc7cmov eax, edi
0040dc7esub eax, r13l
0040dc81
0040dc81loc_40dc81:
0040dc81add rsp, 32
0040dc85pop rbx
0040dc86pop rsi
0040dc87pop rdi
0040dc88pop r13
0040dc8apop r14
0040dc8cret
0040dbf0
0040dc8d
0040dc8d // align 0x10
0040dc8d // align 0x10
0040dc90
0040dc90fn_40dc90:
0040dc90sub rsp, 40
0040dc94call fn_40dbf0
0040dc99add rsp, 40
0040dc9dret
0040dc90
0040dc90fn_40dc90:
0040dc90sub rsp, 40
0040dc94call fn_40dbf0
0040dc99add rsp, 40
0040dc9dret
0040dc90
0040dc9e
0040dc9e // align 0x10
0040dc9e // align 0x10
0040dca0
0040dca0fn_40dca0:
0040dca0push rbx
0040dca1sub rsp, 32
0040dca5mov rbx, rcx
0040dca8mov eax, r8l
0040dcabxor ecx, ecx
0040dcadtest rdx, rdx
0040dcb0je 0x40dcb5
0040dcb2mov ecx, [rdx-4]
0040dcb5
0040dcb5loc_40dcb5:
0040dcb5cmp eax, 1
0040dcb8jge 0x40dcbe
0040dcbaxor eax, eax
0040dcbcjmp 0x40dcc7
0040dcbe
0040dcbeloc_40dcbe:
0040dcbesub eax, 1
0040dcc1cmp eax, ecx
0040dcc3jle 0x40dcc7
0040dcc5mov eax, ecx
0040dcc7
0040dcc7loc_40dcc7:
0040dcc7test r9l, r9l
0040dccajge 0x40dcd0
0040dcccxor ecx, ecx
0040dccejmp 0x40dcda
0040dcd0
0040dcd0loc_40dcd0:
0040dcd0sub ecx, eax
0040dcd2cmp ecx, r9l
0040dcd5jle 0x40dcda
0040dcd7mov ecx, r9l
0040dcda
0040dcdaloc_40dcda:
0040dcdamov r8, rbx
0040dcddmovsxd rax, eax
0040dce0lea rdx, [rdx+2*rax]
0040dce4mov eax, ecx
0040dce6mov rcx, r8
0040dce9mov r8l, eax
0040dceccall fn_40bfd0
0040dcf1mov rax, rbx
0040dcf4add rsp, 32
0040dcf8pop rbx
0040dcf9ret
0040dca0
0040dca0fn_40dca0:
0040dca0push rbx
0040dca1sub rsp, 32
0040dca5mov rbx, rcx
0040dca8mov eax, r8l
0040dcabxor ecx, ecx
0040dcadtest rdx, rdx
0040dcb0je 0x40dcb5
0040dcb2mov ecx, [rdx-4]
0040dcb5
0040dcb5loc_40dcb5:
0040dcb5cmp eax, 1
0040dcb8jge 0x40dcbe
0040dcbaxor eax, eax
0040dcbcjmp 0x40dcc7
0040dcbe
0040dcbeloc_40dcbe:
0040dcbesub eax, 1
0040dcc1cmp eax, ecx
0040dcc3jle 0x40dcc7
0040dcc5mov eax, ecx
0040dcc7
0040dcc7loc_40dcc7:
0040dcc7test r9l, r9l
0040dccajge 0x40dcd0
0040dcccxor ecx, ecx
0040dccejmp 0x40dcda
0040dcd0
0040dcd0loc_40dcd0:
0040dcd0sub ecx, eax
0040dcd2cmp ecx, r9l
0040dcd5jle 0x40dcda
0040dcd7mov ecx, r9l
0040dcda
0040dcdaloc_40dcda:
0040dcdamov r8, rbx
0040dcddmovsxd rax, eax
0040dce0lea rdx, [rdx+2*rax]
0040dce4mov eax, ecx
0040dce6mov rcx, r8
0040dce9mov r8l, eax
0040dceccall fn_40bfd0
0040dcf1mov rax, rbx
0040dcf4add rsp, 32
0040dcf8pop rbx
0040dcf9ret
0040dca0
0040dcfa
0040dcfa // align 0x10
0040dcfa // align 0x10
0040dd00
0040dd00fn_40dd00:
0040dd00push rdi
0040dd01push rsi
0040dd02push rbx
0040dd03sub rsp, 32
0040dd07mov rbx, rcx
0040dd0amov esi, edx
0040dd0cmov edi, r8l
0040dd0fmov rcx, rbx
0040dd12call fn_40c5c0
0040dd17xor eax, eax
0040dd19mov rcx, [rbx]
0040dd1ctest rcx, rcx
0040dd1fje 0x40dd24
0040dd21mov eax, [rcx-4]
0040dd24
0040dd24loc_40dd24:
0040dd24cmp esi, 1
0040dd27jl 0x40dd72
0040dd29cmp esi, eax
0040dd2bjg 0x40dd72
0040dd2dtest edi, edi
0040dd2fjle 0x40dd72
0040dd31sub esi, 1
0040dd34mov ecx, eax
0040dd36sub ecx, esi
0040dd38sub ecx, edi
0040dd3amov edi, ecx
0040dd3ctest edi, edi
0040dd3ejge 0x40dd42
0040dd40xor edi, edi
0040dd42
0040dd42loc_40dd42:
0040dd42mov rcx, [rbx]
0040dd45sub eax, edi
0040dd47movsxd rax, eax
0040dd4alea rcx, [rcx+2*rax]
0040dd4emov rax, [rbx]
0040dd51movsxd rdx, esi
0040dd54lea rdx, [rax+2*rdx]
0040dd58mov r8l, edi
0040dd5badd r8l, r8l
0040dd5emovsxd r8, r8l
0040dd61call fn_405ac0
0040dd66mov rcx, rbx
0040dd69mov edx, esi
0040dd6badd edx, edi
0040dd6dcall fn_40d8d0
0040dd72
0040dd72loc_40dd72:
0040dd72add rsp, 32
0040dd76pop rbx
0040dd77pop rsi
0040dd78pop rdi
0040dd79ret
0040dd00
0040dd00fn_40dd00:
0040dd00push rdi
0040dd01push rsi
0040dd02push rbx
0040dd03sub rsp, 32
0040dd07mov rbx, rcx
0040dd0amov esi, edx
0040dd0cmov edi, r8l
0040dd0fmov rcx, rbx
0040dd12call fn_40c5c0
0040dd17xor eax, eax
0040dd19mov rcx, [rbx]
0040dd1ctest rcx, rcx
0040dd1fje 0x40dd24
0040dd21mov eax, [rcx-4]
0040dd24
0040dd24loc_40dd24:
0040dd24cmp esi, 1
0040dd27jl 0x40dd72
0040dd29cmp esi, eax
0040dd2bjg 0x40dd72
0040dd2dtest edi, edi
0040dd2fjle 0x40dd72
0040dd31sub esi, 1
0040dd34mov ecx, eax
0040dd36sub ecx, esi
0040dd38sub ecx, edi
0040dd3amov edi, ecx
0040dd3ctest edi, edi
0040dd3ejge 0x40dd42
0040dd40xor edi, edi
0040dd42
0040dd42loc_40dd42:
0040dd42mov rcx, [rbx]
0040dd45sub eax, edi
0040dd47movsxd rax, eax
0040dd4alea rcx, [rcx+2*rax]
0040dd4emov rax, [rbx]
0040dd51movsxd rdx, esi
0040dd54lea rdx, [rax+2*rdx]
0040dd58mov r8l, edi
0040dd5badd r8l, r8l
0040dd5emovsxd r8, r8l
0040dd61call fn_405ac0
0040dd66mov rcx, rbx
0040dd69mov edx, esi
0040dd6badd edx, edi
0040dd6dcall fn_40d8d0
0040dd72
0040dd72loc_40dd72:
0040dd72add rsp, 32
0040dd76pop rbx
0040dd77pop rsi
0040dd78pop rdi
0040dd79ret
0040dd00
0040dd7a
0040dd7a // align 0x10
0040dd7a // align 0x10
0040dd80
0040dd80fn_40dd80:
0040dd80push rbx
0040dd81test rdx, rdx
0040dd84je 0x40de81
0040dd8atest rcx, rcx
0040dd8dje 0x40de81
0040dd93cmp r8l, 1
0040dd97jl 0x40de81
0040dd9dmovsxd r9, [rcx-4]
0040dda1sub r9, 1
0040dda5movsxd rax, [rdx-4]
0040dda9movsxd r10, r8l
0040ddaclea r10, [r9+r10]
0040ddb0cmp rax, r10
0040ddb3jl 0x40de81
0040ddb9lea r11, [rdx+2*rax]
0040ddbdmov rax, r9
0040ddc0add rax, rax
0040ddc3add rdx, rax
0040ddc6mov rax, r9
0040ddc9add rax, rax
0040ddccadd rcx, rax
0040ddcfmov r10, rdx
0040ddd2add r8l, 3
0040ddd6movsxd r8, r8l
0040ddd9add r8, r8
0040dddcadd rdx, r8
0040dddfmovzx r8, [rcx]
0040dde3neg r9
0040dde6cmp rdx, r11
0040dde9jae 0x40de1d
0040ddeb
0040ddebloc_40ddeb:
0040ddebcmp r8w, [rdx-8]
0040ddf0je 0x40de53
0040ddf2cmp r8w, [rdx-6]
0040ddf7je 0x40de29
0040ddf9cmp r8w, [rdx-4]
0040ddfeje 0x40de57
0040de00cmp r8w, [rdx-2]
0040de05je 0x40de2d
0040de07
0040de07loc_40de07:
0040de07cmp r8w, [rdx]
0040de0bje 0x40de5b
0040de0d
0040de0dloc_40de0d:
0040de0dcmp r8w, [rdx+2]
0040de12je 0x40de31
0040de14
0040de14loc_40de14:
0040de14add rdx, 12
0040de18cmp rdx, r11
0040de1bjb 0x40ddeb
0040de1d
0040de1dloc_40de1d:
0040de1dnop
0040de1esub rdx, 8
0040de22cmp rdx, r11
0040de25jb 0x40de07
0040de27jmp 0x40de81
0040de29
0040de29loc_40de29:
0040de29sub rdx, 4
0040de2d
0040de2dloc_40de2d:
0040de2dsub rdx, 4
0040de31
0040de31loc_40de31:
0040de31mov rax, r9
0040de34jmp 0x40de43
0040de36
0040de36loc_40de36:
0040de36mov ebx, [rcx+2*rax]
0040de39cmp ebx, [rdx+2*rax+2]
0040de3djne 0x40de14
0040de3fadd rax, 2
0040de43
0040de43loc_40de43:
0040de43test rax, rax
0040de46jl 0x40de36
0040de48add rdx, 4
0040de4ccmp rdx, r11
0040de4fjbe 0x40de75
0040de51jmp 0x40de81
0040de53
0040de53loc_40de53:
0040de53sub rdx, 4
0040de57
0040de57loc_40de57:
0040de57sub rdx, 4
0040de5b
0040de5bloc_40de5b:
0040de5bmov rax, r9
0040de5ejmp 0x40de6c
0040de60
0040de60loc_40de60:
0040de60mov ebx, [rcx+2*rax]
0040de63cmp ebx, [rdx+2*rax]
0040de66jne 0x40de0d
0040de68add rax, 2
0040de6c
0040de6cloc_40de6c:
0040de6ctest rax, rax
0040de6fjl 0x40de60
0040de71add rdx, 2
0040de75
0040de75loc_40de75:
0040de75mov rax, rdx
0040de78sub rax, r10
0040de7bshr rax, 1
0040de7fjmp 0x40de83
0040de81
0040de81loc_40de81:
0040de81xor eax, eax
0040de83
0040de83loc_40de83:
0040de83pop rbx
0040de84ret
0040dd80
0040dd80fn_40dd80:
0040dd80push rbx
0040dd81test rdx, rdx
0040dd84je 0x40de81
0040dd8atest rcx, rcx
0040dd8dje 0x40de81
0040dd93cmp r8l, 1
0040dd97jl 0x40de81
0040dd9dmovsxd r9, [rcx-4]
0040dda1sub r9, 1
0040dda5movsxd rax, [rdx-4]
0040dda9movsxd r10, r8l
0040ddaclea r10, [r9+r10]
0040ddb0cmp rax, r10
0040ddb3jl 0x40de81
0040ddb9lea r11, [rdx+2*rax]
0040ddbdmov rax, r9
0040ddc0add rax, rax
0040ddc3add rdx, rax
0040ddc6mov rax, r9
0040ddc9add rax, rax
0040ddccadd rcx, rax
0040ddcfmov r10, rdx
0040ddd2add r8l, 3
0040ddd6movsxd r8, r8l
0040ddd9add r8, r8
0040dddcadd rdx, r8
0040dddfmovzx r8, [rcx]
0040dde3neg r9
0040dde6cmp rdx, r11
0040dde9jae 0x40de1d
0040ddeb
0040ddebloc_40ddeb:
0040ddebcmp r8w, [rdx-8]
0040ddf0je 0x40de53
0040ddf2cmp r8w, [rdx-6]
0040ddf7je 0x40de29
0040ddf9cmp r8w, [rdx-4]
0040ddfeje 0x40de57
0040de00cmp r8w, [rdx-2]
0040de05je 0x40de2d
0040de07
0040de07loc_40de07:
0040de07cmp r8w, [rdx]
0040de0bje 0x40de5b
0040de0d
0040de0dloc_40de0d:
0040de0dcmp r8w, [rdx+2]
0040de12je 0x40de31
0040de14
0040de14loc_40de14:
0040de14add rdx, 12
0040de18cmp rdx, r11
0040de1bjb 0x40ddeb
0040de1d
0040de1dloc_40de1d:
0040de1dnop
0040de1esub rdx, 8
0040de22cmp rdx, r11
0040de25jb 0x40de07
0040de27jmp 0x40de81
0040de29
0040de29loc_40de29:
0040de29sub rdx, 4
0040de2d
0040de2dloc_40de2d:
0040de2dsub rdx, 4
0040de31
0040de31loc_40de31:
0040de31mov rax, r9
0040de34jmp 0x40de43
0040de36
0040de36loc_40de36:
0040de36mov ebx, [rcx+2*rax]
0040de39cmp ebx, [rdx+2*rax+2]
0040de3djne 0x40de14
0040de3fadd rax, 2
0040de43
0040de43loc_40de43:
0040de43test rax, rax
0040de46jl 0x40de36
0040de48add rdx, 4
0040de4ccmp rdx, r11
0040de4fjbe 0x40de75
0040de51jmp 0x40de81
0040de53
0040de53loc_40de53:
0040de53sub rdx, 4
0040de57
0040de57loc_40de57:
0040de57sub rdx, 4
0040de5b
0040de5bloc_40de5b:
0040de5bmov rax, r9
0040de5ejmp 0x40de6c
0040de60
0040de60loc_40de60:
0040de60mov ebx, [rcx+2*rax]
0040de63cmp ebx, [rdx+2*rax]
0040de66jne 0x40de0d
0040de68add rax, 2
0040de6c
0040de6cloc_40de6c:
0040de6ctest rax, rax
0040de6fjl 0x40de60
0040de71add rdx, 2
0040de75
0040de75loc_40de75:
0040de75mov rax, rdx
0040de78sub rax, r10
0040de7bshr rax, 1
0040de7fjmp 0x40de83
0040de81
0040de81loc_40de81:
0040de81xor eax, eax
0040de83
0040de83loc_40de83:
0040de83pop rbx
0040de84ret
0040dd80
0040de85
0040de85 // align 0x10
0040de85 // align 0x10
0040de90
0040de90fn_40de90:
0040de90push rbx
0040de91test rdx, rdx
0040de94je 0x40df9d
0040de9atest rcx, rcx
0040de9dje 0x40df9d
0040dea3cmp r8l, 1
0040dea7jl 0x40df9d
0040deadmov r9l, [rcx-4]
0040deb1shr r9l, 1
0040deb5movsxd r9, r9l
0040deb8sub r9, 1
0040debcmov eax, [rdx-4]
0040debfshr eax, 1
0040dec2movsxd rax, eax
0040dec5movsxd r10, r8l
0040dec8lea r10, [r9+r10]
0040decccmp rax, r10
0040decfjl 0x40df9d
0040ded5lea r11, [rdx+2*rax]
0040ded9mov rax, r9
0040dedcadd rax, rax
0040dedfadd rdx, rax
0040dee2mov rax, r9
0040dee5add rax, rax
0040dee8add rcx, rax
0040deebmov r10, rdx
0040deeeadd r8l, 3
0040def2movsxd r8, r8l
0040def5add r8, r8
0040def8add rdx, r8
0040defbmovzx r8, [rcx]
0040deffneg r9
0040df02cmp rdx, r11
0040df05jae 0x40df39
0040df07
0040df07loc_40df07:
0040df07cmp r8w, [rdx-8]
0040df0cje 0x40df6f
0040df0ecmp r8w, [rdx-6]
0040df13je 0x40df45
0040df15cmp r8w, [rdx-4]
0040df1aje 0x40df73
0040df1ccmp r8w, [rdx-2]
0040df21je 0x40df49
0040df23
0040df23loc_40df23:
0040df23cmp r8w, [rdx]
0040df27je 0x40df77
0040df29
0040df29loc_40df29:
0040df29cmp r8w, [rdx+2]
0040df2eje 0x40df4d
0040df30
0040df30loc_40df30:
0040df30add rdx, 12
0040df34cmp rdx, r11
0040df37jb 0x40df07
0040df39
0040df39loc_40df39:
0040df39nop
0040df3asub rdx, 8
0040df3ecmp rdx, r11
0040df41jb 0x40df23
0040df43jmp 0x40df9d
0040df45
0040df45loc_40df45:
0040df45sub rdx, 4
0040df49
0040df49loc_40df49:
0040df49sub rdx, 4
0040df4d
0040df4dloc_40df4d:
0040df4dmov rax, r9
0040df50jmp 0x40df5f
0040df52
0040df52loc_40df52:
0040df52mov ebx, [rcx+2*rax]
0040df55cmp ebx, [rdx+2*rax+2]
0040df59jne 0x40df30
0040df5badd rax, 2
0040df5f
0040df5floc_40df5f:
0040df5ftest rax, rax
0040df62jl 0x40df52
0040df64add rdx, 4
0040df68cmp rdx, r11
0040df6bjbe 0x40df91
0040df6djmp 0x40df9d
0040df6f
0040df6floc_40df6f:
0040df6fsub rdx, 4
0040df73
0040df73loc_40df73:
0040df73sub rdx, 4
0040df77
0040df77loc_40df77:
0040df77mov rax, r9
0040df7ajmp 0x40df88
0040df7c
0040df7cloc_40df7c:
0040df7cmov ebx, [rcx+2*rax]
0040df7fcmp ebx, [rdx+2*rax]
0040df82jne 0x40df29
0040df84add rax, 2
0040df88
0040df88loc_40df88:
0040df88test rax, rax
0040df8bjl 0x40df7c
0040df8dadd rdx, 2
0040df91
0040df91loc_40df91:
0040df91mov rax, rdx
0040df94sub rax, r10
0040df97shr rax, 1
0040df9bjmp 0x40df9f
0040df9d
0040df9dloc_40df9d:
0040df9dxor eax, eax
0040df9f
0040df9floc_40df9f:
0040df9fpop rbx
0040dfa0ret
0040de90
0040de90fn_40de90:
0040de90push rbx
0040de91test rdx, rdx
0040de94je 0x40df9d
0040de9atest rcx, rcx
0040de9dje 0x40df9d
0040dea3cmp r8l, 1
0040dea7jl 0x40df9d
0040deadmov r9l, [rcx-4]
0040deb1shr r9l, 1
0040deb5movsxd r9, r9l
0040deb8sub r9, 1
0040debcmov eax, [rdx-4]
0040debfshr eax, 1
0040dec2movsxd rax, eax
0040dec5movsxd r10, r8l
0040dec8lea r10, [r9+r10]
0040decccmp rax, r10
0040decfjl 0x40df9d
0040ded5lea r11, [rdx+2*rax]
0040ded9mov rax, r9
0040dedcadd rax, rax
0040dedfadd rdx, rax
0040dee2mov rax, r9
0040dee5add rax, rax
0040dee8add rcx, rax
0040deebmov r10, rdx
0040deeeadd r8l, 3
0040def2movsxd r8, r8l
0040def5add r8, r8
0040def8add rdx, r8
0040defbmovzx r8, [rcx]
0040deffneg r9
0040df02cmp rdx, r11
0040df05jae 0x40df39
0040df07
0040df07loc_40df07:
0040df07cmp r8w, [rdx-8]
0040df0cje 0x40df6f
0040df0ecmp r8w, [rdx-6]
0040df13je 0x40df45
0040df15cmp r8w, [rdx-4]
0040df1aje 0x40df73
0040df1ccmp r8w, [rdx-2]
0040df21je 0x40df49
0040df23
0040df23loc_40df23:
0040df23cmp r8w, [rdx]
0040df27je 0x40df77
0040df29
0040df29loc_40df29:
0040df29cmp r8w, [rdx+2]
0040df2eje 0x40df4d
0040df30
0040df30loc_40df30:
0040df30add rdx, 12
0040df34cmp rdx, r11
0040df37jb 0x40df07
0040df39
0040df39loc_40df39:
0040df39nop
0040df3asub rdx, 8
0040df3ecmp rdx, r11
0040df41jb 0x40df23
0040df43jmp 0x40df9d
0040df45
0040df45loc_40df45:
0040df45sub rdx, 4
0040df49
0040df49loc_40df49:
0040df49sub rdx, 4
0040df4d
0040df4dloc_40df4d:
0040df4dmov rax, r9
0040df50jmp 0x40df5f
0040df52
0040df52loc_40df52:
0040df52mov ebx, [rcx+2*rax]
0040df55cmp ebx, [rdx+2*rax+2]
0040df59jne 0x40df30
0040df5badd rax, 2
0040df5f
0040df5floc_40df5f:
0040df5ftest rax, rax
0040df62jl 0x40df52
0040df64add rdx, 4
0040df68cmp rdx, r11
0040df6bjbe 0x40df91
0040df6djmp 0x40df9d
0040df6f
0040df6floc_40df6f:
0040df6fsub rdx, 4
0040df73
0040df73loc_40df73:
0040df73sub rdx, 4
0040df77
0040df77loc_40df77:
0040df77mov rax, r9
0040df7ajmp 0x40df88
0040df7c
0040df7cloc_40df7c:
0040df7cmov ebx, [rcx+2*rax]
0040df7fcmp ebx, [rdx+2*rax]
0040df82jne 0x40df29
0040df84add rax, 2
0040df88
0040df88loc_40df88:
0040df88test rax, rax
0040df8bjl 0x40df7c
0040df8dadd rdx, 2
0040df91
0040df91loc_40df91:
0040df91mov rax, rdx
0040df94sub rax, r10
0040df97shr rax, 1
0040df9bjmp 0x40df9f
0040df9d
0040df9dloc_40df9d:
0040df9dxor eax, eax
0040df9f
0040df9floc_40df9f:
0040df9fpop rbx
0040dfa0ret
0040de90
0040dfa1
0040dfa1 // align 0x10
0040dfa1 // align 0x10
0040dfb0
0040dfb0fn_40dfb0:
0040dfb0push rbp
0040dfb1push r13
0040dfb3push rdi
0040dfb4push rsi
0040dfb5push rbx
0040dfb6sub rsp, 80
0040dfbamov rbp, rsp
0040dfbdmov [rbp+48], rcx
0040dfc1mov [rbp+56], dx
0040dfc5mov [rbp+59], r8b
0040dfc9mov [rbp+72], 0
0040dfd1nop
0040dfd2mov rax, [rbp+48]
0040dfd6cmp [rax], 0
0040dfdaje 0x40dfea
0040dfdcmov rax, [rbp+48]
0040dfe0mov rax, [rax]
0040dfe3movzx rax, [rax-12]
0040dfe8jmp 0x40dff2
0040dfea
0040dfealoc_40dfea:
0040dfeamovzx rax, [rip+0x57a26]
0040dff2
0040dff2loc_40dff2:
0040dff2movzx rcx, [rbp+56]
0040dff7cmp ax, cx
0040dffajne 0x40e000
0040dffcmov al, 1
0040dffejmp 0x40e016
0040e000
0040e000loc_40e000:
0040e000xor eax, eax
0040e002mov rcx, [rbp+48]
0040e006mov rcx, [rcx]
0040e009test rcx, rcx
0040e00cje 0x40e011
0040e00emov eax, [rcx-4]
0040e011
0040e011loc_40e011:
0040e011test eax, eax
0040e013sete al
0040e016
0040e016loc_40e016:
0040e016test al, al
0040e018jne 0x40e127
0040e01emovzx rax, [rbp+59]
0040e023test al, al
0040e025je 0x40e0ff
0040e02bmov rax, [rbp+48]
0040e02fcmp [rax], 0
0040e033je 0x40e043
0040e035mov rax, [rbp+48]
0040e039mov rax, [rax]
0040e03cmovzx rax, [rax-10]
0040e041jmp 0x40e047
0040e043
0040e043loc_40e043:
0040e043mov ax, 1
0040e047
0040e047loc_40e047:
0040e047cmp ax, 1
0040e04bjne 0x40e05f
0040e04dlea rcx, [rbp+72]
0040e051mov rax, [rbp+48]
0040e055mov rdx, [rax]
0040e058call fn_40d7f0
0040e05djmp 0x40e06f
0040e05f
0040e05floc_40e05f:
0040e05flea rcx, [rbp+72]
0040e063mov rax, [rbp+48]
0040e067mov rdx, [rax]
0040e06acall fn_40c3e0
0040e06f
0040e06floc_40e06f:
0040e06fxor ebx, ebx
0040e071mov rsi, [rbp+72]
0040e075test rsi, rsi
0040e078je 0x40e07d
0040e07amov ebx, [rsi-4]
0040e07d
0040e07dloc_40e07d:
0040e07dmov rcx, [rbp+72]
0040e081call fn_40d710
0040e086mov rdi, rax
0040e089movzx r13, [rbp+56]
0040e08emovzx r13l, r13w
0040e092xor ecx, ecx
0040e094xor edx, edx
0040e096mov r8, rdi
0040e099mov r9l, ebx
0040e09cmov [rsp+32], r13l
0040e0a1call fn_40bf50
0040e0a6mov ebx, eax
0040e0a8mov rcx, [rbp+48]
0040e0acmov edx, ebx
0040e0aexor r8, r8
0040e0b1call fn_40cf30
0040e0b6test ebx, ebx
0040e0b8jle 0x40e108
0040e0baxor eax, eax
0040e0bcmov [rbp+60], eax
0040e0bfmov rax, [rbp+48]
0040e0c3mov rax, [rax]
0040e0c6test rax, rax
0040e0c9je 0x40e0d1
0040e0cbmov eax, [rax-4]
0040e0cemov [rbp+60], eax
0040e0d1
0040e0d1loc_40e0d1:
0040e0d1xor ebx, ebx
0040e0d3test rsi, rsi
0040e0d6je 0x40e0db
0040e0d8mov ebx, [rsi-4]
0040e0db
0040e0dbloc_40e0db:
0040e0dbmov rax, [rbp+48]
0040e0dfmov rcx, [rax]
0040e0e2call fn_40ce10
0040e0e7mov rcx, rax
0040e0eamov edx, [rbp+60]
0040e0edmov r8, rdi
0040e0f0mov r9l, ebx
0040e0f3mov [rsp+32], r13l
0040e0f8call fn_40bf50
0040e0fdjmp 0x40e108
0040e0ff
0040e0ffloc_40e0ff:
0040e0ffmov rcx, [rbp+48]
0040e103call fn_40c620
0040e108
0040e108loc_40e108:
0040e108xor eax, eax
0040e10amov rcx, [rbp+48]
0040e10emov rcx, [rcx]
0040e111test rcx, rcx
0040e114je 0x40e119
0040e116mov eax, [rcx-4]
0040e119
0040e119loc_40e119:
0040e119test eax, eax
0040e11bjle 0x40e126
0040e11dmovzx rax, [rbp+56]
0040e122mov [rcx-12], ax
0040e126
0040e126loc_40e126:
0040e126nop
0040e127
0040e127loc_40e127:
0040e127lea rcx, [rbp+72]
0040e12bcall fn_40bcf0
0040e130lea rsp, [rbp+80]
0040e134pop rbx
0040e135pop rsi
0040e136pop rdi
0040e137pop r13
0040e139pop rbp
0040e13aret
0040dfb0
0040dfb0fn_40dfb0:
0040dfb0push rbp
0040dfb1push r13
0040dfb3push rdi
0040dfb4push rsi
0040dfb5push rbx
0040dfb6sub rsp, 80
0040dfbamov rbp, rsp
0040dfbdmov [rbp+48], rcx
0040dfc1mov [rbp+56], dx
0040dfc5mov [rbp+59], r8b
0040dfc9mov [rbp+72], 0
0040dfd1nop
0040dfd2mov rax, [rbp+48]
0040dfd6cmp [rax], 0
0040dfdaje 0x40dfea
0040dfdcmov rax, [rbp+48]
0040dfe0mov rax, [rax]
0040dfe3movzx rax, [rax-12]
0040dfe8jmp 0x40dff2
0040dfea
0040dfealoc_40dfea:
0040dfeamovzx rax, [rip+0x57a26]
0040dff2
0040dff2loc_40dff2:
0040dff2movzx rcx, [rbp+56]
0040dff7cmp ax, cx
0040dffajne 0x40e000
0040dffcmov al, 1
0040dffejmp 0x40e016
0040e000
0040e000loc_40e000:
0040e000xor eax, eax
0040e002mov rcx, [rbp+48]
0040e006mov rcx, [rcx]
0040e009test rcx, rcx
0040e00cje 0x40e011
0040e00emov eax, [rcx-4]
0040e011
0040e011loc_40e011:
0040e011test eax, eax
0040e013sete al
0040e016
0040e016loc_40e016:
0040e016test al, al
0040e018jne 0x40e127
0040e01emovzx rax, [rbp+59]
0040e023test al, al
0040e025je 0x40e0ff
0040e02bmov rax, [rbp+48]
0040e02fcmp [rax], 0
0040e033je 0x40e043
0040e035mov rax, [rbp+48]
0040e039mov rax, [rax]
0040e03cmovzx rax, [rax-10]
0040e041jmp 0x40e047
0040e043
0040e043loc_40e043:
0040e043mov ax, 1
0040e047
0040e047loc_40e047:
0040e047cmp ax, 1
0040e04bjne 0x40e05f
0040e04dlea rcx, [rbp+72]
0040e051mov rax, [rbp+48]
0040e055mov rdx, [rax]
0040e058call fn_40d7f0
0040e05djmp 0x40e06f
0040e05f
0040e05floc_40e05f:
0040e05flea rcx, [rbp+72]
0040e063mov rax, [rbp+48]
0040e067mov rdx, [rax]
0040e06acall fn_40c3e0
0040e06f
0040e06floc_40e06f:
0040e06fxor ebx, ebx
0040e071mov rsi, [rbp+72]
0040e075test rsi, rsi
0040e078je 0x40e07d
0040e07amov ebx, [rsi-4]
0040e07d
0040e07dloc_40e07d:
0040e07dmov rcx, [rbp+72]
0040e081call fn_40d710
0040e086mov rdi, rax
0040e089movzx r13, [rbp+56]
0040e08emovzx r13l, r13w
0040e092xor ecx, ecx
0040e094xor edx, edx
0040e096mov r8, rdi
0040e099mov r9l, ebx
0040e09cmov [rsp+32], r13l
0040e0a1call fn_40bf50
0040e0a6mov ebx, eax
0040e0a8mov rcx, [rbp+48]
0040e0acmov edx, ebx
0040e0aexor r8, r8
0040e0b1call fn_40cf30
0040e0b6test ebx, ebx
0040e0b8jle 0x40e108
0040e0baxor eax, eax
0040e0bcmov [rbp+60], eax
0040e0bfmov rax, [rbp+48]
0040e0c3mov rax, [rax]
0040e0c6test rax, rax
0040e0c9je 0x40e0d1
0040e0cbmov eax, [rax-4]
0040e0cemov [rbp+60], eax
0040e0d1
0040e0d1loc_40e0d1:
0040e0d1xor ebx, ebx
0040e0d3test rsi, rsi
0040e0d6je 0x40e0db
0040e0d8mov ebx, [rsi-4]
0040e0db
0040e0dbloc_40e0db:
0040e0dbmov rax, [rbp+48]
0040e0dfmov rcx, [rax]
0040e0e2call fn_40ce10
0040e0e7mov rcx, rax
0040e0eamov edx, [rbp+60]
0040e0edmov r8, rdi
0040e0f0mov r9l, ebx
0040e0f3mov [rsp+32], r13l
0040e0f8call fn_40bf50
0040e0fdjmp 0x40e108
0040e0ff
0040e0ffloc_40e0ff:
0040e0ffmov rcx, [rbp+48]
0040e103call fn_40c620
0040e108
0040e108loc_40e108:
0040e108xor eax, eax
0040e10amov rcx, [rbp+48]
0040e10emov rcx, [rcx]
0040e111test rcx, rcx
0040e114je 0x40e119
0040e116mov eax, [rcx-4]
0040e119
0040e119loc_40e119:
0040e119test eax, eax
0040e11bjle 0x40e126
0040e11dmovzx rax, [rbp+56]
0040e122mov [rcx-12], ax
0040e126
0040e126loc_40e126:
0040e126nop
0040e127
0040e127loc_40e127:
0040e127lea rcx, [rbp+72]
0040e12bcall fn_40bcf0
0040e130lea rsp, [rbp+80]
0040e134pop rbx
0040e135pop rsi
0040e136pop rdi
0040e137pop r13
0040e139pop rbp
0040e13aret
0040dfb0
0040e13b
0040e13b 48 8d 44 20 00 H.D .
0040e13b 48 8d 44 20 00 H.D .
0040e140
0040e140fn_40e140:
0040e140push rbp
0040e141sub rsp, 32
0040e145mov rbp, rsp
0040e148lea rcx, [rdx+72]
0040e14ccall fn_40bcf0
0040e151lea rsp, [rbp+32]
0040e155pop rbp
0040e156ret
0040e140
0040e140fn_40e140:
0040e140push rbp
0040e141sub rsp, 32
0040e145mov rbp, rsp
0040e148lea rcx, [rdx+72]
0040e14ccall fn_40bcf0
0040e151lea rsp, [rbp+32]
0040e155pop rbp
0040e156ret
0040e140
0040e157
0040e157 // align 0x10
0040e157 // align 0x10
0040e160
0040e160fn_40e160:
0040e160push rbp
0040e161push rbx
0040e162sub rsp, 88
0040e166mov rbp, rsp
0040e169mov [rbp+40], rbp
0040e16dmov [rbp+112], rcx
0040e171mov [rbp+120], rdx
0040e175mov rax, [rbp+120]
0040e179movzx rcx, [rax+1]
0040e17elea rcx, [rax+rcx]
0040e182mov [rbp+64], rcx
0040e186cmp [rax], 22
0040e189jne 0x40e1c8
0040e18bmov rax, [rbp+64]
0040e18fmov rcx, [rbp+64]
0040e193mov ecx, [rcx+6]
0040e196shl ecx, 4
0040e199mov ecx, ecx
0040e19blea rax, [rax+rcx+10]
0040e1a0mov [rbp+48], rax
0040e1a4mov rax, [rbp+48]
0040e1a8cmp [rax], 1
0040e1abjbe 0x40e1c8
0040e1admov rax, [rbp+48]
0040e1b1cmp [rax+9], 0
0040e1b6je 0x40e1c8
0040e1b8mov rcx, [rbp+112]
0040e1bcmov rbx, [rbp+48]
0040e1c0call [rbx+9]
0040e1c3jmp 0x40e2a7
0040e1c8
0040e1c8loc_40e1c8:
0040e1c8mov rax, [rbp+64]
0040e1cccmp [rax+6], 0
0040e1d0jbe 0x40e2a7
0040e1d6mov [rbp+76], 0
0040e1ddmov [rbp+72], 0
0040e1e4nop
0040e1e5jmp 0x40e239
0040e1e7
0040e1e7loc_40e1e7:
0040e1e7mov eax, [rbp+76]
0040e1eamov rcx, [rbp+64]
0040e1eemov rdx, rax
0040e1f1add rdx, rdx
0040e1f4cmp [rcx+8*rdx+10], 0
0040e1fajne 0x40e204
0040e1fcmov eax, [rbp+76]
0040e1ffmov [rbp+72], eax
0040e202jmp 0x40e235
0040e204
0040e204loc_40e204:
0040e204mov rcx, [rbp+112]
0040e208mov rdx, [rbp+64]
0040e20cmov r8, rax
0040e20fadd r8, r8
0040e212mov edx, [rdx+8*r8+18]
0040e217lea rcx, [rcx+rdx]
0040e21bmov rdx, [rbp+64]
0040e21fadd rax, rax
0040e222mov rax, [rdx+8*rax+10]
0040e227mov rdx, [rax]
0040e22amov r8l, 1
0040e230call fn_40e2c0
0040e235
0040e235loc_40e235:
0040e235add [rbp+76], 1
0040e239
0040e239loc_40e239:
0040e239mov rax, [rbp+64]
0040e23dmov ecx, [rbp+76]
0040e240cmp ecx, [rax+6]
0040e243jb 0x40e1e7
0040e245jmp 0x40e2a7
0040e247
0040e247 90 90 8b 45 4c 3b 45 48 76 ...EL;EHv
0040e250 06 8b 45 48 89 45 4c 83 7d 4c 00 76 3e 83 6d 4c ..EH.EL.}L.v>.mL
0040e260 01 8b 45 4c 48 8b 4d 70 48 8b 55 40 4c 8b c0 4d ..ELH.MpH.U@L..M
0040e270 03 c0 42 8b 54 c2 12 48 8d 0c 11 48 8b 55 40 48 ..B.T..H...H.U@H
0040e280 03 c0 48 8b 44 c2 0a 48 8b 10 41 b8 01 00 00 00 ..H.D..H..A.....
0040e290 e8 ab 09 00 00 83 7d 4c 00 77 c2 90 e8 6f cd ff ......}L.w...o..
0040e2a0 ff e8 7a ce ff ff 90 ..z....
0040e2a7
0040e2a7loc_40e2a7:
0040e2a7lea rsp, [rbp+88]
0040e2abpop rbx
0040e2acpop rbp
0040e2adret
0040e160
0040e160fn_40e160:
0040e160push rbp
0040e161push rbx
0040e162sub rsp, 88
0040e166mov rbp, rsp
0040e169mov [rbp+40], rbp
0040e16dmov [rbp+112], rcx
0040e171mov [rbp+120], rdx
0040e175mov rax, [rbp+120]
0040e179movzx rcx, [rax+1]
0040e17elea rcx, [rax+rcx]
0040e182mov [rbp+64], rcx
0040e186cmp [rax], 22
0040e189jne 0x40e1c8
0040e18bmov rax, [rbp+64]
0040e18fmov rcx, [rbp+64]
0040e193mov ecx, [rcx+6]
0040e196shl ecx, 4
0040e199mov ecx, ecx
0040e19blea rax, [rax+rcx+10]
0040e1a0mov [rbp+48], rax
0040e1a4mov rax, [rbp+48]
0040e1a8cmp [rax], 1
0040e1abjbe 0x40e1c8
0040e1admov rax, [rbp+48]
0040e1b1cmp [rax+9], 0
0040e1b6je 0x40e1c8
0040e1b8mov rcx, [rbp+112]
0040e1bcmov rbx, [rbp+48]
0040e1c0call [rbx+9]
0040e1c3jmp 0x40e2a7
0040e1c8
0040e1c8loc_40e1c8:
0040e1c8mov rax, [rbp+64]
0040e1cccmp [rax+6], 0
0040e1d0jbe 0x40e2a7
0040e1d6mov [rbp+76], 0
0040e1ddmov [rbp+72], 0
0040e1e4nop
0040e1e5jmp 0x40e239
0040e1e7
0040e1e7loc_40e1e7:
0040e1e7mov eax, [rbp+76]
0040e1eamov rcx, [rbp+64]
0040e1eemov rdx, rax
0040e1f1add rdx, rdx
0040e1f4cmp [rcx+8*rdx+10], 0
0040e1fajne 0x40e204
0040e1fcmov eax, [rbp+76]
0040e1ffmov [rbp+72], eax
0040e202jmp 0x40e235
0040e204
0040e204loc_40e204:
0040e204mov rcx, [rbp+112]
0040e208mov rdx, [rbp+64]
0040e20cmov r8, rax
0040e20fadd r8, r8
0040e212mov edx, [rdx+8*r8+18]
0040e217lea rcx, [rcx+rdx]
0040e21bmov rdx, [rbp+64]
0040e21fadd rax, rax
0040e222mov rax, [rdx+8*rax+10]
0040e227mov rdx, [rax]
0040e22amov r8l, 1
0040e230call fn_40e2c0
0040e235
0040e235loc_40e235:
0040e235add [rbp+76], 1
0040e239
0040e239loc_40e239:
0040e239mov rax, [rbp+64]
0040e23dmov ecx, [rbp+76]
0040e240cmp ecx, [rax+6]
0040e243jb 0x40e1e7
0040e245jmp 0x40e2a7
0040e247
0040e247 90 90 8b 45 4c 3b 45 48 76 ...EL;EHv
0040e250 06 8b 45 48 89 45 4c 83 7d 4c 00 76 3e 83 6d 4c ..EH.EL.}L.v>.mL
0040e260 01 8b 45 4c 48 8b 4d 70 48 8b 55 40 4c 8b c0 4d ..ELH.MpH.U@L..M
0040e270 03 c0 42 8b 54 c2 12 48 8d 0c 11 48 8b 55 40 48 ..B.T..H...H.U@H
0040e280 03 c0 48 8b 44 c2 0a 48 8b 10 41 b8 01 00 00 00 ..H.D..H..A.....
0040e290 e8 ab 09 00 00 83 7d 4c 00 77 c2 90 e8 6f cd ff ......}L.w...o..
0040e2a0 ff e8 7a ce ff ff 90 ..z....
0040e2a7
0040e2a7loc_40e2a7:
0040e2a7lea rsp, [rbp+88]
0040e2abpop rbx
0040e2acpop rbp
0040e2adret
0040e160
0040e2ae
0040e2ae 48 90 H.
0040e2ae 48 90 H.
0040e2b0
0040e2b0fn_40e2b0:
0040e2b0sub rsp, 40
0040e2b4call fn_40b050
0040e2b9add rsp, 40
0040e2bdret
0040e2b0
0040e2b0fn_40e2b0:
0040e2b0sub rsp, 40
0040e2b4call fn_40b050
0040e2b9add rsp, 40
0040e2bdret
0040e2b0
0040e2be
0040e2be // align 0x10
0040e2be // align 0x10
0040e2c0
0040e2c0fn_40e2c0:
0040e2c0push rbp
0040e2c1sub rsp, 80
0040e2c5mov rbp, rsp
0040e2c8mov [rbp+40], rbp
0040e2ccmov [rbp+96], rcx
0040e2d0mov [rbp+104], rdx
0040e2d4mov [rbp+112], r8
0040e2d8cmp [rbp+112], 0
0040e2ddje 0x40e4c0
0040e2e3mov rax, [rbp+104]
0040e2e7movzx rcx, [rax]
0040e2ebcmp ecx, 14
0040e2eejg 0x40e315
0040e2f0cmp ecx, 14
0040e2f3je 0x40e438
0040e2f9sub ecx, 10
0040e2fccmp ecx, 2
0040e2ffjb 0x40e349
0040e301sub ecx, 2
0040e304test ecx, ecx
0040e306je 0x40e387
0040e308sub ecx, 1
0040e30btest ecx, ecx
0040e30djne 0x40e4b9
0040e313jmp 0x40e393
0040e315
0040e315loc_40e315:
0040e315sub ecx, 15
0040e318test ecx, ecx
0040e31aje 0x40e349
0040e31csub ecx, 2
0040e31fcmp ecx, 2
0040e322jb 0x40e349
0040e324sub ecx, 5
0040e327test ecx, ecx
0040e329jne 0x40e4b9
0040e32fjmp 0x40e438
0040e334
0040e334loc_40e334:
0040e334mov rax, [rbp+96]
0040e338mov [rax], 0
0040e33fadd [rbp+96], 8
0040e344sub [rbp+112], 1
0040e349
0040e349loc_40e349:
0040e349cmp [rbp+112], 0
0040e34eja 0x40e334
0040e350jmp 0x40e4c0
0040e355
0040e355loc_40e355:
0040e355mov rax, [rbp+96]
0040e359mov [rbp+48], rax
0040e35dmov [rbp+60], 0
0040e364
0040e364loc_40e364:
0040e364mov rax, [rbp+48]
0040e368mov ecx, [rbp+60]
0040e36bmov [rax+4*rcx], 0
0040e372add [rbp+60], 1
0040e376cmp [rbp+60], 6
0040e37ajne 0x40e364
0040e37cnop
0040e37dadd [rbp+96], 24
0040e382sub [rbp+112], 1
0040e387
0040e387loc_40e387:
0040e387cmp [rbp+112], 0
0040e38cja 0x40e355
0040e38ejmp 0x40e4c0
0040e393
0040e393loc_40e393:
0040e393movzx rcx, [rax+1]
0040e398lea rax, [rax+rcx]
0040e39cmov [rbp+64], rax
0040e3a0mov [rbp+72], 0
0040e3a8nop
0040e3a9jmp 0x40e3d7
0040e3ab
0040e3abloc_40e3ab:
0040e3abmov rcx, [rbp+96]
0040e3afmov rax, [rbp+64]
0040e3b3mov rax, [rax+10]
0040e3b7mov rdx, [rax]
0040e3bamov rax, [rbp+64]
0040e3bemov r8l, [rax+6]
0040e3c2call fn_40e2c0
0040e3c7mov rax, [rbp+64]
0040e3cbmov eax, [rax+2]
0040e3ceadd [rbp+96], rax
0040e3d2add [rbp+72], 1
0040e3d7
0040e3d7loc_40e3d7:
0040e3d7mov rax, [rbp+72]
0040e3dbcmp rax, [rbp+112]
0040e3dfjb 0x40e3ab
0040e3e1jmp 0x40e4c0
0040e3e6
0040e3e6 90 90 eb 37 48 83 6d 48 01 48 ...7H.mH.H
0040e3f0 8b 45 40 8b 40 02 48 29 45 60 90 48 8b 4d 60 48 .E@.@.H)E`.H.M`H
0040e400 8b 45 40 48 8b 40 0a 48 8b 10 48 8b 45 40 44 8b .E@H.@.H..H.E@D.
0040e410 40 06 e8 29 08 00 00 eb 08 90 90 e8 00 cd ff ff @..)............
0040e420 90 48 83 7d 48 00 77 c2 e8 e3 cb ff ff e8 ee cc .H.}H.w.........
0040e430 ff ff 90 e9 88 00 00 00 ........
0040e438
0040e438loc_40e438:
0040e438movzx rcx, [rax+1]
0040e43dlea rax, [rax+rcx]
0040e441mov [rbp+64], rax
0040e445mov [rbp+72], 0
0040e44dnop
0040e44ejmp 0x40e46d
0040e450
0040e450loc_40e450:
0040e450mov rcx, [rbp+96]
0040e454mov rdx, [rbp+104]
0040e458call fn_40e160
0040e45dmov rax, [rbp+64]
0040e461mov eax, [rax+2]
0040e464add [rbp+96], rax
0040e468add [rbp+72], 1
0040e46d
0040e46dloc_40e46d:
0040e46dmov rax, [rbp+72]
0040e471cmp rax, [rbp+112]
0040e475jb 0x40e450
0040e477jmp 0x40e4c0
0040e479
0040e479 90 90 eb 28 48 83 6d ...(H.m
0040e480 48 01 48 8b 45 40 8b 40 02 48 29 45 60 90 48 8b H.H.E@.@.H)E`.H.
0040e490 4d 60 48 8b 55 68 e8 95 01 00 00 eb 08 90 90 e8 M`H.Uh..........
0040e4a0 7c cc ff ff 90 48 83 7d 48 00 77 d1 e8 5f cb ff |....H.}H.w.._..
0040e4b0 ff e8 6a cc ff ff 90 eb 07 ..j......
0040e4b9
0040e4b9loc_40e4b9:
0040e4b9mov cl, 2
0040e4bbcall fn_405a20
0040e4c0
0040e4c0loc_40e4c0:
0040e4c0lea rsp, [rbp+80]
0040e4c4pop rbp
0040e4c5ret
0040e2c0
0040e2c0fn_40e2c0:
0040e2c0push rbp
0040e2c1sub rsp, 80
0040e2c5mov rbp, rsp
0040e2c8mov [rbp+40], rbp
0040e2ccmov [rbp+96], rcx
0040e2d0mov [rbp+104], rdx
0040e2d4mov [rbp+112], r8
0040e2d8cmp [rbp+112], 0
0040e2ddje 0x40e4c0
0040e2e3mov rax, [rbp+104]
0040e2e7movzx rcx, [rax]
0040e2ebcmp ecx, 14
0040e2eejg 0x40e315
0040e2f0cmp ecx, 14
0040e2f3je 0x40e438
0040e2f9sub ecx, 10
0040e2fccmp ecx, 2
0040e2ffjb 0x40e349
0040e301sub ecx, 2
0040e304test ecx, ecx
0040e306je 0x40e387
0040e308sub ecx, 1
0040e30btest ecx, ecx
0040e30djne 0x40e4b9
0040e313jmp 0x40e393
0040e315
0040e315loc_40e315:
0040e315sub ecx, 15
0040e318test ecx, ecx
0040e31aje 0x40e349
0040e31csub ecx, 2
0040e31fcmp ecx, 2
0040e322jb 0x40e349
0040e324sub ecx, 5
0040e327test ecx, ecx
0040e329jne 0x40e4b9
0040e32fjmp 0x40e438
0040e334
0040e334loc_40e334:
0040e334mov rax, [rbp+96]
0040e338mov [rax], 0
0040e33fadd [rbp+96], 8
0040e344sub [rbp+112], 1
0040e349
0040e349loc_40e349:
0040e349cmp [rbp+112], 0
0040e34eja 0x40e334
0040e350jmp 0x40e4c0
0040e355
0040e355loc_40e355:
0040e355mov rax, [rbp+96]
0040e359mov [rbp+48], rax
0040e35dmov [rbp+60], 0
0040e364
0040e364loc_40e364:
0040e364mov rax, [rbp+48]
0040e368mov ecx, [rbp+60]
0040e36bmov [rax+4*rcx], 0
0040e372add [rbp+60], 1
0040e376cmp [rbp+60], 6
0040e37ajne 0x40e364
0040e37cnop
0040e37dadd [rbp+96], 24
0040e382sub [rbp+112], 1
0040e387
0040e387loc_40e387:
0040e387cmp [rbp+112], 0
0040e38cja 0x40e355
0040e38ejmp 0x40e4c0
0040e393
0040e393loc_40e393:
0040e393movzx rcx, [rax+1]
0040e398lea rax, [rax+rcx]
0040e39cmov [rbp+64], rax
0040e3a0mov [rbp+72], 0
0040e3a8nop
0040e3a9jmp 0x40e3d7
0040e3ab
0040e3abloc_40e3ab:
0040e3abmov rcx, [rbp+96]
0040e3afmov rax, [rbp+64]
0040e3b3mov rax, [rax+10]
0040e3b7mov rdx, [rax]
0040e3bamov rax, [rbp+64]
0040e3bemov r8l, [rax+6]
0040e3c2call fn_40e2c0
0040e3c7mov rax, [rbp+64]
0040e3cbmov eax, [rax+2]
0040e3ceadd [rbp+96], rax
0040e3d2add [rbp+72], 1
0040e3d7
0040e3d7loc_40e3d7:
0040e3d7mov rax, [rbp+72]
0040e3dbcmp rax, [rbp+112]
0040e3dfjb 0x40e3ab
0040e3e1jmp 0x40e4c0
0040e3e6
0040e3e6 90 90 eb 37 48 83 6d 48 01 48 ...7H.mH.H
0040e3f0 8b 45 40 8b 40 02 48 29 45 60 90 48 8b 4d 60 48 .E@.@.H)E`.H.M`H
0040e400 8b 45 40 48 8b 40 0a 48 8b 10 48 8b 45 40 44 8b .E@H.@.H..H.E@D.
0040e410 40 06 e8 29 08 00 00 eb 08 90 90 e8 00 cd ff ff @..)............
0040e420 90 48 83 7d 48 00 77 c2 e8 e3 cb ff ff e8 ee cc .H.}H.w.........
0040e430 ff ff 90 e9 88 00 00 00 ........
0040e438
0040e438loc_40e438:
0040e438movzx rcx, [rax+1]
0040e43dlea rax, [rax+rcx]
0040e441mov [rbp+64], rax
0040e445mov [rbp+72], 0
0040e44dnop
0040e44ejmp 0x40e46d
0040e450
0040e450loc_40e450:
0040e450mov rcx, [rbp+96]
0040e454mov rdx, [rbp+104]
0040e458call fn_40e160
0040e45dmov rax, [rbp+64]
0040e461mov eax, [rax+2]
0040e464add [rbp+96], rax
0040e468add [rbp+72], 1
0040e46d
0040e46dloc_40e46d:
0040e46dmov rax, [rbp+72]
0040e471cmp rax, [rbp+112]
0040e475jb 0x40e450
0040e477jmp 0x40e4c0
0040e479
0040e479 90 90 eb 28 48 83 6d ...(H.m
0040e480 48 01 48 8b 45 40 8b 40 02 48 29 45 60 90 48 8b H.H.E@.@.H)E`.H.
0040e490 4d 60 48 8b 55 68 e8 95 01 00 00 eb 08 90 90 e8 M`H.Uh..........
0040e4a0 7c cc ff ff 90 48 83 7d 48 00 77 d1 e8 5f cb ff |....H.}H.w.._..
0040e4b0 ff e8 6a cc ff ff 90 eb 07 ..j......
0040e4b9
0040e4b9loc_40e4b9:
0040e4b9mov cl, 2
0040e4bbcall fn_405a20
0040e4c0
0040e4c0loc_40e4c0:
0040e4c0lea rsp, [rbp+80]
0040e4c4pop rbp
0040e4c5ret
0040e2c0
0040e4c6
0040e4c6 48 90 48 8d 04 05 00 00 00 00 H.H.......
0040e4c6 48 90 48 8d 04 05 00 00 00 00 H.H.......
0040e4d0
0040e4d0fn_40e4d0:
0040e4d0sub rsp, 40
0040e4d4call fn_40b050
0040e4d9add rsp, 40
0040e4ddret
0040e4d0
0040e4d0fn_40e4d0:
0040e4d0sub rsp, 40
0040e4d4call fn_40b050
0040e4d9add rsp, 40
0040e4ddret
0040e4d0
0040e4de
0040e4de 48 90 H.
0040e4de 48 90 H.
0040e4e0
0040e4e0fn_40e4e0:
0040e4e0sub rsp, 40
0040e4e4call fn_40b050
0040e4e9add rsp, 40
0040e4edret
0040e4e0
0040e4e0fn_40e4e0:
0040e4e0sub rsp, 40
0040e4e4call fn_40b050
0040e4e9add rsp, 40
0040e4edret
0040e4e0
0040e4ee
0040e4ee 48 90 H.
0040e4ee 48 90 H.
0040e4f0
0040e4f0fn_40e4f0:
0040e4f0sub rsp, 40
0040e4f4call fn_40b050
0040e4f9add rsp, 40
0040e4fdret
0040e4f0
0040e4f0fn_40e4f0:
0040e4f0sub rsp, 40
0040e4f4call fn_40b050
0040e4f9add rsp, 40
0040e4fdret
0040e4f0
0040e4fe
0040e4fe 48 90 H.
0040e4fe 48 90 H.
0040e500
0040e500fn_40e500:
0040e500sub rsp, 40
0040e504call fn_40b050
0040e509add rsp, 40
0040e50dret
0040e500
0040e500fn_40e500:
0040e500sub rsp, 40
0040e504call fn_40b050
0040e509add rsp, 40
0040e50dret
0040e500
0040e50e
0040e50e // align 0x10
0040e50e // align 0x10
0040e510
0040e510fn_40e510:
0040e510sub rsp, 40
0040e514mov r8l, 1
0040e51acall fn_40e2c0
0040e51fadd rsp, 40
0040e523ret
0040e510
0040e510fn_40e510:
0040e510sub rsp, 40
0040e514mov r8l, 1
0040e51acall fn_40e2c0
0040e51fadd rsp, 40
0040e523ret
0040e510
0040e524
0040e524 // align 0x10
0040e524 // align 0x10
0040e530
0040e530fn_40e530:
0040e530push rdi
0040e531push rsi
0040e532push rbx
0040e533sub rsp, 32
0040e537mov rax, rcx
0040e53axor ecx, ecx
0040e53cjmp 0x40e54e
0040e53e
0040e53eloc_40e53e:
0040e53emovzx rax, [rdx+1]
0040e543lea rbx, [rdx+rax]
0040e547mov rax, [rbx+10]
0040e54bmov rax, [rax]
0040e54e
0040e54eloc_40e54e:
0040e54emov rdx, rax
0040e551cmp [rdx], 13
0040e554je 0x40e53e
0040e556mov rdx, rax
0040e559cmp [rdx], 22
0040e55cjne 0x40e586
0040e55emovzx rcx, [rdx+1]
0040e563lea rbx, [rdx+rcx]
0040e567mov ecx, [rbx+6]
0040e56ashl ecx, 4
0040e56dmov ecx, ecx
0040e56flea rcx, [rbx+rcx+10]
0040e574cmp [rcx], 1
0040e577jbe 0x40e580
0040e579cmp [rcx+9], 0
0040e57ejne 0x40e584
0040e580
0040e580loc_40e580:
0040e580xor ecx, ecx
0040e582jmp 0x40e586
0040e584
0040e584loc_40e584:
0040e584mov cl, 1
0040e586
0040e586loc_40e586:
0040e586test cl, cl
0040e588jne 0x40e5eb
0040e58amovzx rdx, [rax]
0040e58ecmp dl, 14
0040e591je 0x40e598
0040e593cmp dl, 22
0040e596jne 0x40e5eb
0040e598
0040e598loc_40e598:
0040e598movzx rdx, [rax+1]
0040e59dlea rbx, [rax+rdx]
0040e5a1mov eax, [rbx+6]
0040e5a4test eax, eax
0040e5a6jbe 0x40e5eb
0040e5a8xor edx, edx
0040e5aamov edi, eax
0040e5acsub edi, 1
0040e5afmov esi, edx
0040e5b1cmp esi, edi
0040e5b3ja 0x40e5ea
0040e5b5sub edi, edx
0040e5b7add edi, 1
0040e5ba
0040e5baloc_40e5ba:
0040e5bamov eax, esi
0040e5bcmov rdx, rax
0040e5bfadd rdx, rdx
0040e5c2cmp [rbx+8*rdx+10], 0
0040e5c8je 0x40e5e0
0040e5caadd rax, rax
0040e5cdmov rax, [rbx+8*rax+10]
0040e5d2mov rcx, [rax]
0040e5d5call fn_40e530
0040e5damov ecx, eax
0040e5dctest cl, cl
0040e5dejne 0x40e5ea
0040e5e0
0040e5e0loc_40e5e0:
0040e5e0add esi, 1
0040e5e3sub edi, 1
0040e5e6test edi, edi
0040e5e8jne 0x40e5ba
0040e5ea
0040e5ealoc_40e5ea:
0040e5eanop
0040e5eb
0040e5ebloc_40e5eb:
0040e5ebmov eax, ecx
0040e5edadd rsp, 32
0040e5f1pop rbx
0040e5f2pop rsi
0040e5f3pop rdi
0040e5f4ret
0040e530
0040e530fn_40e530:
0040e530push rdi
0040e531push rsi
0040e532push rbx
0040e533sub rsp, 32
0040e537mov rax, rcx
0040e53axor ecx, ecx
0040e53cjmp 0x40e54e
0040e53e
0040e53eloc_40e53e:
0040e53emovzx rax, [rdx+1]
0040e543lea rbx, [rdx+rax]
0040e547mov rax, [rbx+10]
0040e54bmov rax, [rax]
0040e54e
0040e54eloc_40e54e:
0040e54emov rdx, rax
0040e551cmp [rdx], 13
0040e554je 0x40e53e
0040e556mov rdx, rax
0040e559cmp [rdx], 22
0040e55cjne 0x40e586
0040e55emovzx rcx, [rdx+1]
0040e563lea rbx, [rdx+rcx]
0040e567mov ecx, [rbx+6]
0040e56ashl ecx, 4
0040e56dmov ecx, ecx
0040e56flea rcx, [rbx+rcx+10]
0040e574cmp [rcx], 1
0040e577jbe 0x40e580
0040e579cmp [rcx+9], 0
0040e57ejne 0x40e584
0040e580
0040e580loc_40e580:
0040e580xor ecx, ecx
0040e582jmp 0x40e586
0040e584
0040e584loc_40e584:
0040e584mov cl, 1
0040e586
0040e586loc_40e586:
0040e586test cl, cl
0040e588jne 0x40e5eb
0040e58amovzx rdx, [rax]
0040e58ecmp dl, 14
0040e591je 0x40e598
0040e593cmp dl, 22
0040e596jne 0x40e5eb
0040e598
0040e598loc_40e598:
0040e598movzx rdx, [rax+1]
0040e59dlea rbx, [rax+rdx]
0040e5a1mov eax, [rbx+6]
0040e5a4test eax, eax
0040e5a6jbe 0x40e5eb
0040e5a8xor edx, edx
0040e5aamov edi, eax
0040e5acsub edi, 1
0040e5afmov esi, edx
0040e5b1cmp esi, edi
0040e5b3ja 0x40e5ea
0040e5b5sub edi, edx
0040e5b7add edi, 1
0040e5ba
0040e5baloc_40e5ba:
0040e5bamov eax, esi
0040e5bcmov rdx, rax
0040e5bfadd rdx, rdx
0040e5c2cmp [rbx+8*rdx+10], 0
0040e5c8je 0x40e5e0
0040e5caadd rax, rax
0040e5cdmov rax, [rbx+8*rax+10]
0040e5d2mov rcx, [rax]
0040e5d5call fn_40e530
0040e5damov ecx, eax
0040e5dctest cl, cl
0040e5dejne 0x40e5ea
0040e5e0
0040e5e0loc_40e5e0:
0040e5e0add esi, 1
0040e5e3sub edi, 1
0040e5e6test edi, edi
0040e5e8jne 0x40e5ba
0040e5ea
0040e5ealoc_40e5ea:
0040e5eanop
0040e5eb
0040e5ebloc_40e5eb:
0040e5ebmov eax, ecx
0040e5edadd rsp, 32
0040e5f1pop rbx
0040e5f2pop rsi
0040e5f3pop rdi
0040e5f4ret
0040e530
0040e5f5
0040e5f5 // align 0x10
0040e5f5 // align 0x10
0040e600
0040e600fn_40e600:
0040e600sub rsp, 40
0040e604cmp [rip+0x4aa0c], 0
0040e60cje 0x40e616
0040e60ecall [rip+0x4aa04]
0040e614jmp 0x40e61d
0040e616
0040e616loc_40e616:
0040e616mov cl, 16
0040e618call fn_405a20
0040e61d
0040e61dloc_40e61d:
0040e61dadd rsp, 40
0040e621ret
0040e600
0040e600fn_40e600:
0040e600sub rsp, 40
0040e604cmp [rip+0x4aa0c], 0
0040e60cje 0x40e616
0040e60ecall [rip+0x4aa04]
0040e614jmp 0x40e61d
0040e616
0040e616loc_40e616:
0040e616mov cl, 16
0040e618call fn_405a20
0040e61d
0040e61dloc_40e61d:
0040e61dadd rsp, 40
0040e621ret
0040e600
0040e622
0040e622 // align 0x10
0040e622 // align 0x10
0040e630
0040e630fn_40e630:
0040e630push rbp
0040e631push rbx
0040e632sub rsp, 152
0040e639mov rbp, rsp
0040e63cmov [rbp+40], rbp
0040e640mov [rbp+176], rcx
0040e647mov [rbp+184], rdx
0040e64emov rax, [rbp+184]
0040e655movzx rcx, [rax+1]
0040e65alea rcx, [rax+rcx]
0040e65emov [rbp+128], rcx
0040e665mov rcx, [rbp+128]
0040e66cmov rdx, [rbp+128]
0040e673mov edx, [rdx+6]
0040e676shl edx, 4
0040e679mov edx, edx
0040e67blea rcx, [rcx+rdx+10]
0040e680mov [rbp+48], rcx
0040e684cmp [rax], 22
0040e687jne 0x40e6d2
0040e689mov rax, [rbp+48]
0040e68dcmp [rax], 2
0040e690jbe 0x40e6bb
0040e692mov rax, [rbp+48]
0040e696cmp [rax+17], 0
0040e69bje 0x40e6bb
0040e69dmov rcx, [rbp+176]
0040e6a4mov rbx, [rbp+48]
0040e6a8call [rbx+17]
0040e6abmov rax, [rbp+176]
0040e6b2mov [rbp+72], rax
0040e6b6jmp 0x40ea9e
0040e6bb
0040e6bbloc_40e6bb:
0040e6bbmov rax, [rbp+48]
0040e6bfmov rax, [rax+1]
0040e6c3test rax, 2
0040e6casetne al
0040e6cdmov [rbp+119], al
0040e6d0jmp 0x40e6f5
0040e6d2
0040e6d2loc_40e6d2:
0040e6d2mov rax, [rbp+48]
0040e6d6cmp [rax], 0
0040e6d9jbe 0x40e6ec
0040e6dbmov rax, [rbp+48]
0040e6dfmov rax, [rax+1]
0040e6e3test rax, 2
0040e6eajne 0x40e6f0
0040e6ec
0040e6ecloc_40e6ec:
0040e6ecxor eax, eax
0040e6eejmp 0x40e6f2
0040e6f0
0040e6f0loc_40e6f0:
0040e6f0mov al, 1
0040e6f2
0040e6f2loc_40e6f2:
0040e6f2mov [rbp+119], al
0040e6f5
0040e6f5loc_40e6f5:
0040e6f5mov rax, [rbp+128]
0040e6fcmov eax, [rax+6]
0040e6fftest eax, eax
0040e701jbe 0x40ea93
0040e707mov eax, eax
0040e709mov [rbp+120], rax
0040e70dnop
0040e70emov rax, [rbp+128]
0040e715mov rcx, [rbp+120]
0040e719add rcx, rcx
0040e71clea rax, [rax+8*rcx+10]
0040e721mov [rbp+56], rax
0040e725cmp [rbp+119], 0
0040e729je 0x40e8a4
0040e72f
0040e72floc_40e72f:
0040e72fsub [rbp+56], 16
0040e734sub [rbp+120], 1
0040e739mov rax, [rbp+56]
0040e73dmov rax, [rax]
0040e740test rax, rax
0040e743je 0x40e785
0040e745mov rcx, [rbp+176]
0040e74cmov rdx, [rbp+56]
0040e750mov edx, [rdx+8]
0040e753lea rcx, [rcx+rdx]
0040e757mov [rbp+104], rcx
0040e75bmov [rbp+96], rax
0040e75fmov rax, [rbp+96]
0040e763mov rax, [rax]
0040e766movzx rax, [rax]
0040e76asub al, 15
0040e76dtest al, al
0040e76fjne 0x40e77c
0040e771mov rcx, [rbp+104]
0040e775call fn_414150
0040e77ajmp 0x40e72f
0040e77c
0040e77cloc_40e77c:
0040e77cmov cl, 2
0040e77ecall fn_405a20
0040e783jmp 0x40e72f
0040e785
0040e785loc_40e785:
0040e785nop
0040e786mov [rbp+119], 0
0040e78ajmp 0x40e8a4
0040e78f
0040e78floc_40e78f:
0040e78fsub [rbp+56], 16
0040e794sub [rbp+120], 1
0040e799mov rax, [rbp+56]
0040e79dmov rax, [rax]
0040e7a0mov [rbp+96], rax
0040e7a4mov rax, [rbp+176]
0040e7abmov rcx, [rbp+56]
0040e7afmov ecx, [rcx+8]
0040e7b2lea rax, [rax+rcx]
0040e7b6mov [rbp+104], rax
0040e7bamov rax, [rbp+96]
0040e7bemov rax, [rax]
0040e7c1movzx rcx, [rax]
0040e7c5cmp ecx, 14
0040e7c8jg 0x40e7f5
0040e7cacmp ecx, 14
0040e7cdje 0x40e876
0040e7d3sub ecx, 10
0040e7d6test ecx, ecx
0040e7d8je 0x40e81f
0040e7dasub ecx, 1
0040e7ddtest ecx, ecx
0040e7dfje 0x40e82a
0040e7e1sub ecx, 1
0040e7e4test ecx, ecx
0040e7e6je 0x40e840
0040e7e8sub ecx, 1
0040e7ebtest ecx, ecx
0040e7edjne 0x40e89d
0040e7f3jmp 0x40e84b
0040e7f5
0040e7f5loc_40e7f5:
0040e7f5sub ecx, 15
0040e7f8test ecx, ecx
0040e7faje 0x40e884
0040e800sub ecx, 2
0040e803test ecx, ecx
0040e805je 0x40e88f
0040e80bsub ecx, 1
0040e80etest ecx, ecx
0040e810je 0x40e835
0040e812sub ecx, 4
0040e815test ecx, ecx
0040e817jne 0x40e89d
0040e81djmp 0x40e876
0040e81f
0040e81floc_40e81f:
0040e81fmov rcx, [rbp+104]
0040e823call fn_40bd40
0040e828jmp 0x40e8a4
0040e82a
0040e82aloc_40e82a:
0040e82amov rcx, [rbp+104]
0040e82ecall fn_40bd90
0040e833jmp 0x40e8a4
0040e835
0040e835loc_40e835:
0040e835mov rcx, [rbp+104]
0040e839call fn_40bcf0
0040e83ejmp 0x40e8a4
0040e840
0040e840loc_40e840:
0040e840mov rcx, [rbp+104]
0040e844call fn_40e600
0040e849jmp 0x40e8a4
0040e84b
0040e84bloc_40e84b:
0040e84bmovzx rcx, [rax+1]
0040e850lea rax, [rax+rcx]
0040e854mov [rbp+64], rax
0040e858mov rcx, [rbp+104]
0040e85cmov rax, [rbp+64]
0040e860mov rax, [rax+10]
0040e864mov rdx, [rax]
0040e867mov rax, [rbp+64]
0040e86bmov r8l, [rax+6]
0040e86fcall fn_40ec40
0040e874jmp 0x40e8a4
0040e876
0040e876loc_40e876:
0040e876mov rcx, [rbp+104]
0040e87amov rdx, rax
0040e87dcall fn_40e630
0040e882jmp 0x40e8a4
0040e884
0040e884loc_40e884:
0040e884mov rcx, [rbp+104]
0040e888call fn_412500
0040e88djmp 0x40e8a4
0040e88f
0040e88floc_40e88f:
0040e88fmov rcx, [rbp+104]
0040e893mov rdx, rax
0040e896call fn_410600
0040e89bjmp 0x40e8a4
0040e89d
0040e89dloc_40e89d:
0040e89dmov cl, 2
0040e89fcall fn_405a20
0040e8a4
0040e8a4loc_40e8a4:
0040e8a4cmp [rbp+120], 0
0040e8a9ja 0x40e78f
0040e8afjmp 0x40ea93
0040e8b4
0040e8b4 90 90 48 8b 85 80 00 00 00 48 8b 4d ..H......H.M
0040e8c0 78 48 03 c9 48 8d 44 c8 0a 48 89 85 88 00 00 00 xH..H.D..H......
0040e8d0 80 7d 77 00 0f 84 a3 01 00 00 eb 63 48 83 ad 88 .}w........cH...
0040e8e0 00 00 00 10 48 83 6d 78 01 90 48 8b 85 b0 00 00 ....H.mx..H.....
0040e8f0 00 48 8b 8d 88 00 00 00 8b 49 08 48 8d 04 08 48 .H.......I.H...H
0040e900 89 45 68 48 8b 85 88 00 00 00 48 8b 00 48 89 45 .EhH......H..H.E
0040e910 60 48 8b 45 60 48 8b 00 48 0f b6 00 80 e8 0f 84 `H.E`H..H.......
0040e920 c0 75 0b 48 8b 4d 68 e8 24 58 00 00 eb 11 b1 02 .u.H.Mh.$X......
0040e930 e8 eb 70 ff ff eb 08 90 90 e8 e2 c7 ff ff 90 48 ..p............H
0040e940 8b 85 88 00 00 00 48 83 38 00 75 90 e9 2c 01 00 ......H.8.u..,..
0040e950 00 48 83 ad 88 00 00 00 10 48 83 6d 78 01 48 8b .H.......H.mx.H.
0040e960 85 88 00 00 00 48 8b 00 48 89 45 60 90 48 8b 85 .....H..H.E`.H..
0040e970 b0 00 00 00 48 8b 8d 88 00 00 00 8b 49 08 48 8d ....H.......I.H.
0040e980 04 08 48 89 45 68 48 8b 45 60 48 8b 00 48 0f b6 ..H.EhH.E`H..H..
0040e990 08 83 f9 0e 7f 2b 83 f9 0e 0f 84 a6 00 00 00 83 .....+..........
0040e9a0 e9 0a 85 c9 74 45 83 e9 01 85 c9 74 4c 83 e9 01 ....tE.....tL...
0040e9b0 85 c9 74 5b 83 e9 01 85 c9 0f 85 ad 00 00 00 eb ..t[............
0040e9c0 59 83 e9 0f 85 c9 0f 84 87 00 00 00 83 e9 02 85 Y...............
0040e9d0 c9 0f 84 87 00 00 00 83 e9 01 85 c9 74 26 83 e9 ............t&..
0040e9e0 04 85 c9 0f 85 83 00 00 00 eb 5a 48 8b 4d 68 e8 ..........ZH.Mh.
0040e9f0 4c d3 ff ff e9 84 00 00 00 48 8b 4d 68 e8 8e d3 L........H.Mh...
0040ea00 ff ff eb 79 48 8b 4d 68 e8 e3 d2 ff ff eb 6e 48 ...yH.Mh......nH
0040ea10 8b 4d 68 e8 e8 fb ff ff eb 63 48 0f b6 48 01 48 .Mh......cH..H.H
0040ea20 8d 04 08 48 89 45 50 48 8b 4d 68 48 8b 45 50 48 ...H.EPH.MhH.EPH
0040ea30 8b 40 0a 48 8b 10 48 8b 45 50 44 8b 40 06 e8 fd .@.H..H.EPD.@...
0040ea40 01 00 00 eb 38 48 8b 4d 68 48 89 c2 e8 df fb ff ....8H.MhH......
0040ea50 ff eb 2a 48 8b 4d 68 e8 a4 3a 00 00 eb 1f 48 8b ..*H.Mh..:....H.
0040ea60 4d 68 48 89 c2 e8 96 1b 00 00 eb 11 b1 02 e8 ad MhH.............
0040ea70 6f ff ff eb 08 90 90 e8 a4 c6 ff ff 90 48 83 7d o............H.}
0040ea80 78 00 0f 87 c9 fe ff ff e8 83 c5 ff ff e8 8e c6 x...............
0040ea90 ff ff 90 ...
0040ea93
0040ea93loc_40ea93:
0040ea93mov rax, [rbp+176]
0040ea9amov [rbp+72], rax
0040ea9e
0040ea9eloc_40ea9e:
0040ea9emov rax, [rbp+72]
0040eaa2lea rsp, [rbp+152]
0040eaa9pop rbx
0040eaaapop rbp
0040eaabret
0040e630
0040e630fn_40e630:
0040e630push rbp
0040e631push rbx
0040e632sub rsp, 152
0040e639mov rbp, rsp
0040e63cmov [rbp+40], rbp
0040e640mov [rbp+176], rcx
0040e647mov [rbp+184], rdx
0040e64emov rax, [rbp+184]
0040e655movzx rcx, [rax+1]
0040e65alea rcx, [rax+rcx]
0040e65emov [rbp+128], rcx
0040e665mov rcx, [rbp+128]
0040e66cmov rdx, [rbp+128]
0040e673mov edx, [rdx+6]
0040e676shl edx, 4
0040e679mov edx, edx
0040e67blea rcx, [rcx+rdx+10]
0040e680mov [rbp+48], rcx
0040e684cmp [rax], 22
0040e687jne 0x40e6d2
0040e689mov rax, [rbp+48]
0040e68dcmp [rax], 2
0040e690jbe 0x40e6bb
0040e692mov rax, [rbp+48]
0040e696cmp [rax+17], 0
0040e69bje 0x40e6bb
0040e69dmov rcx, [rbp+176]
0040e6a4mov rbx, [rbp+48]
0040e6a8call [rbx+17]
0040e6abmov rax, [rbp+176]
0040e6b2mov [rbp+72], rax
0040e6b6jmp 0x40ea9e
0040e6bb
0040e6bbloc_40e6bb:
0040e6bbmov rax, [rbp+48]
0040e6bfmov rax, [rax+1]
0040e6c3test rax, 2
0040e6casetne al
0040e6cdmov [rbp+119], al
0040e6d0jmp 0x40e6f5
0040e6d2
0040e6d2loc_40e6d2:
0040e6d2mov rax, [rbp+48]
0040e6d6cmp [rax], 0
0040e6d9jbe 0x40e6ec
0040e6dbmov rax, [rbp+48]
0040e6dfmov rax, [rax+1]
0040e6e3test rax, 2
0040e6eajne 0x40e6f0
0040e6ec
0040e6ecloc_40e6ec:
0040e6ecxor eax, eax
0040e6eejmp 0x40e6f2
0040e6f0
0040e6f0loc_40e6f0:
0040e6f0mov al, 1
0040e6f2
0040e6f2loc_40e6f2:
0040e6f2mov [rbp+119], al
0040e6f5
0040e6f5loc_40e6f5:
0040e6f5mov rax, [rbp+128]
0040e6fcmov eax, [rax+6]
0040e6fftest eax, eax
0040e701jbe 0x40ea93
0040e707mov eax, eax
0040e709mov [rbp+120], rax
0040e70dnop
0040e70emov rax, [rbp+128]
0040e715mov rcx, [rbp+120]
0040e719add rcx, rcx
0040e71clea rax, [rax+8*rcx+10]
0040e721mov [rbp+56], rax
0040e725cmp [rbp+119], 0
0040e729je 0x40e8a4
0040e72f
0040e72floc_40e72f:
0040e72fsub [rbp+56], 16
0040e734sub [rbp+120], 1
0040e739mov rax, [rbp+56]
0040e73dmov rax, [rax]
0040e740test rax, rax
0040e743je 0x40e785
0040e745mov rcx, [rbp+176]
0040e74cmov rdx, [rbp+56]
0040e750mov edx, [rdx+8]
0040e753lea rcx, [rcx+rdx]
0040e757mov [rbp+104], rcx
0040e75bmov [rbp+96], rax
0040e75fmov rax, [rbp+96]
0040e763mov rax, [rax]
0040e766movzx rax, [rax]
0040e76asub al, 15
0040e76dtest al, al
0040e76fjne 0x40e77c
0040e771mov rcx, [rbp+104]
0040e775call fn_414150
0040e77ajmp 0x40e72f
0040e77c
0040e77cloc_40e77c:
0040e77cmov cl, 2
0040e77ecall fn_405a20
0040e783jmp 0x40e72f
0040e785
0040e785loc_40e785:
0040e785nop
0040e786mov [rbp+119], 0
0040e78ajmp 0x40e8a4
0040e78f
0040e78floc_40e78f:
0040e78fsub [rbp+56], 16
0040e794sub [rbp+120], 1
0040e799mov rax, [rbp+56]
0040e79dmov rax, [rax]
0040e7a0mov [rbp+96], rax
0040e7a4mov rax, [rbp+176]
0040e7abmov rcx, [rbp+56]
0040e7afmov ecx, [rcx+8]
0040e7b2lea rax, [rax+rcx]
0040e7b6mov [rbp+104], rax
0040e7bamov rax, [rbp+96]
0040e7bemov rax, [rax]
0040e7c1movzx rcx, [rax]
0040e7c5cmp ecx, 14
0040e7c8jg 0x40e7f5
0040e7cacmp ecx, 14
0040e7cdje 0x40e876
0040e7d3sub ecx, 10
0040e7d6test ecx, ecx
0040e7d8je 0x40e81f
0040e7dasub ecx, 1
0040e7ddtest ecx, ecx
0040e7dfje 0x40e82a
0040e7e1sub ecx, 1
0040e7e4test ecx, ecx
0040e7e6je 0x40e840
0040e7e8sub ecx, 1
0040e7ebtest ecx, ecx
0040e7edjne 0x40e89d
0040e7f3jmp 0x40e84b
0040e7f5
0040e7f5loc_40e7f5:
0040e7f5sub ecx, 15
0040e7f8test ecx, ecx
0040e7faje 0x40e884
0040e800sub ecx, 2
0040e803test ecx, ecx
0040e805je 0x40e88f
0040e80bsub ecx, 1
0040e80etest ecx, ecx
0040e810je 0x40e835
0040e812sub ecx, 4
0040e815test ecx, ecx
0040e817jne 0x40e89d
0040e81djmp 0x40e876
0040e81f
0040e81floc_40e81f:
0040e81fmov rcx, [rbp+104]
0040e823call fn_40bd40
0040e828jmp 0x40e8a4
0040e82a
0040e82aloc_40e82a:
0040e82amov rcx, [rbp+104]
0040e82ecall fn_40bd90
0040e833jmp 0x40e8a4
0040e835
0040e835loc_40e835:
0040e835mov rcx, [rbp+104]
0040e839call fn_40bcf0
0040e83ejmp 0x40e8a4
0040e840
0040e840loc_40e840:
0040e840mov rcx, [rbp+104]
0040e844call fn_40e600
0040e849jmp 0x40e8a4
0040e84b
0040e84bloc_40e84b:
0040e84bmovzx rcx, [rax+1]
0040e850lea rax, [rax+rcx]
0040e854mov [rbp+64], rax
0040e858mov rcx, [rbp+104]
0040e85cmov rax, [rbp+64]
0040e860mov rax, [rax+10]
0040e864mov rdx, [rax]
0040e867mov rax, [rbp+64]
0040e86bmov r8l, [rax+6]
0040e86fcall fn_40ec40
0040e874jmp 0x40e8a4
0040e876
0040e876loc_40e876:
0040e876mov rcx, [rbp+104]
0040e87amov rdx, rax
0040e87dcall fn_40e630
0040e882jmp 0x40e8a4
0040e884
0040e884loc_40e884:
0040e884mov rcx, [rbp+104]
0040e888call fn_412500
0040e88djmp 0x40e8a4
0040e88f
0040e88floc_40e88f:
0040e88fmov rcx, [rbp+104]
0040e893mov rdx, rax
0040e896call fn_410600
0040e89bjmp 0x40e8a4
0040e89d
0040e89dloc_40e89d:
0040e89dmov cl, 2
0040e89fcall fn_405a20
0040e8a4
0040e8a4loc_40e8a4:
0040e8a4cmp [rbp+120], 0
0040e8a9ja 0x40e78f
0040e8afjmp 0x40ea93
0040e8b4
0040e8b4 90 90 48 8b 85 80 00 00 00 48 8b 4d ..H......H.M
0040e8c0 78 48 03 c9 48 8d 44 c8 0a 48 89 85 88 00 00 00 xH..H.D..H......
0040e8d0 80 7d 77 00 0f 84 a3 01 00 00 eb 63 48 83 ad 88 .}w........cH...
0040e8e0 00 00 00 10 48 83 6d 78 01 90 48 8b 85 b0 00 00 ....H.mx..H.....
0040e8f0 00 48 8b 8d 88 00 00 00 8b 49 08 48 8d 04 08 48 .H.......I.H...H
0040e900 89 45 68 48 8b 85 88 00 00 00 48 8b 00 48 89 45 .EhH......H..H.E
0040e910 60 48 8b 45 60 48 8b 00 48 0f b6 00 80 e8 0f 84 `H.E`H..H.......
0040e920 c0 75 0b 48 8b 4d 68 e8 24 58 00 00 eb 11 b1 02 .u.H.Mh.$X......
0040e930 e8 eb 70 ff ff eb 08 90 90 e8 e2 c7 ff ff 90 48 ..p............H
0040e940 8b 85 88 00 00 00 48 83 38 00 75 90 e9 2c 01 00 ......H.8.u..,..
0040e950 00 48 83 ad 88 00 00 00 10 48 83 6d 78 01 48 8b .H.......H.mx.H.
0040e960 85 88 00 00 00 48 8b 00 48 89 45 60 90 48 8b 85 .....H..H.E`.H..
0040e970 b0 00 00 00 48 8b 8d 88 00 00 00 8b 49 08 48 8d ....H.......I.H.
0040e980 04 08 48 89 45 68 48 8b 45 60 48 8b 00 48 0f b6 ..H.EhH.E`H..H..
0040e990 08 83 f9 0e 7f 2b 83 f9 0e 0f 84 a6 00 00 00 83 .....+..........
0040e9a0 e9 0a 85 c9 74 45 83 e9 01 85 c9 74 4c 83 e9 01 ....tE.....tL...
0040e9b0 85 c9 74 5b 83 e9 01 85 c9 0f 85 ad 00 00 00 eb ..t[............
0040e9c0 59 83 e9 0f 85 c9 0f 84 87 00 00 00 83 e9 02 85 Y...............
0040e9d0 c9 0f 84 87 00 00 00 83 e9 01 85 c9 74 26 83 e9 ............t&..
0040e9e0 04 85 c9 0f 85 83 00 00 00 eb 5a 48 8b 4d 68 e8 ..........ZH.Mh.
0040e9f0 4c d3 ff ff e9 84 00 00 00 48 8b 4d 68 e8 8e d3 L........H.Mh...
0040ea00 ff ff eb 79 48 8b 4d 68 e8 e3 d2 ff ff eb 6e 48 ...yH.Mh......nH
0040ea10 8b 4d 68 e8 e8 fb ff ff eb 63 48 0f b6 48 01 48 .Mh......cH..H.H
0040ea20 8d 04 08 48 89 45 50 48 8b 4d 68 48 8b 45 50 48 ...H.EPH.MhH.EPH
0040ea30 8b 40 0a 48 8b 10 48 8b 45 50 44 8b 40 06 e8 fd .@.H..H.EPD.@...
0040ea40 01 00 00 eb 38 48 8b 4d 68 48 89 c2 e8 df fb ff ....8H.MhH......
0040ea50 ff eb 2a 48 8b 4d 68 e8 a4 3a 00 00 eb 1f 48 8b ..*H.Mh..:....H.
0040ea60 4d 68 48 89 c2 e8 96 1b 00 00 eb 11 b1 02 e8 ad MhH.............
0040ea70 6f ff ff eb 08 90 90 e8 a4 c6 ff ff 90 48 83 7d o............H.}
0040ea80 78 00 0f 87 c9 fe ff ff e8 83 c5 ff ff e8 8e c6 x...............
0040ea90 ff ff 90 ...
0040ea93
0040ea93loc_40ea93:
0040ea93mov rax, [rbp+176]
0040ea9amov [rbp+72], rax
0040ea9e
0040ea9eloc_40ea9e:
0040ea9emov rax, [rbp+72]
0040eaa2lea rsp, [rbp+152]
0040eaa9pop rbx
0040eaaapop rbp
0040eaabret
0040e630
0040eaac
0040eaac 48 8d 40 00 H.@.
0040eaac 48 8d 40 00 H.@.
0040eab0
0040eab0fn_40eab0:
0040eab0sub rsp, 40
0040eab4call fn_40b050
0040eab9add rsp, 40
0040eabdret
0040eab0
0040eab0fn_40eab0:
0040eab0sub rsp, 40
0040eab4call fn_40b050
0040eab9add rsp, 40
0040eabdret
0040eab0
0040eabe
0040eabe 48 90 H.
0040eabe 48 90 H.
0040eac0
0040eac0fn_40eac0:
0040eac0sub rsp, 40
0040eac4call fn_40b050
0040eac9add rsp, 40
0040eacdret
0040eac0
0040eac0fn_40eac0:
0040eac0sub rsp, 40
0040eac4call fn_40b050
0040eac9add rsp, 40
0040eacdret
0040eac0
0040eace
0040eace 48 90 H.
0040eace 48 90 H.
0040ead0
0040ead0fn_40ead0:
0040ead0sub rsp, 40
0040ead4call fn_40b050
0040ead9add rsp, 40
0040eaddret
0040ead0
0040ead0fn_40ead0:
0040ead0sub rsp, 40
0040ead4call fn_40b050
0040ead9add rsp, 40
0040eaddret
0040ead0
0040eade
0040eade // align 0x10
0040eade // align 0x10
0040eae0
0040eae0fn_40eae0:
0040eae0push rbp
0040eae1sub rsp, 64
0040eae5mov rbp, rsp
0040eae8mov [rbp+40], rbp
0040eaecmov [rbp+80], rcx
0040eaf0mov [rbp+88], rdx
0040eaf4mov [rbp+96], r8
0040eaf8mov [rbp+104], r9
0040eafcmov rax, [rbp+96]
0040eb00movzx rcx, [rax+1]
0040eb05lea rcx, [rax+rcx]
0040eb09mov [rbp+56], rcx
0040eb0dmovzx rax, [rax]
0040eb11sub al, 8
0040eb14cmp al, 15
0040eb17ja 0x40eb37
0040eb19mov dx, 1
0040eb1dmovzx cx, al
0040eb21and cx, 127
0040eb25shl edx, cl
0040eb27movzx rax, [rip+257]
0040eb2ftest dx, ax
0040eb32setne al
0040eb35jmp 0x40eb39
0040eb37
0040eb37loc_40eb37:
0040eb37xor eax, eax
0040eb39
0040eb39loc_40eb39:
0040eb39test al, al
0040eb3bje 0x40eb4a
0040eb3dmov rax, [rbp+56]
0040eb41mov eax, [rax+2]
0040eb44mov [rbp+48], rax
0040eb48jmp 0x40eb52
0040eb4a
0040eb4aloc_40eb4a:
0040eb4amov [rbp+48], 8
0040eb52
0040eb52loc_40eb52:
0040eb52mov rax, [rbp+48]
0040eb56add [rbp+88], rax
0040eb5asub [rbp+104], 1
0040eb5fcmp [rbp+104], 0
0040eb64jbe 0x40ec0d
0040eb6a
0040eb6aloc_40eb6a:
0040eb6anop
0040eb6bmov rax, [rbp+96]
0040eb6fmovzx rax, [rax]
0040eb73cmp eax, 15
0040eb76jg 0x40eb8d
0040eb78cmp eax, 15
0040eb7bje 0x40ebca
0040eb7dsub eax, 13
0040eb80test eax, eax
0040eb82je 0x40eb9d
0040eb84sub eax, 1
0040eb87test eax, eax
0040eb89jne 0x40ebe4
0040eb8bjmp 0x40ebbb
0040eb8d
0040eb8dloc_40eb8d:
0040eb8dsub eax, 17
0040eb90test eax, eax
0040eb92je 0x40ebd5
0040eb94sub eax, 5
0040eb97test eax, eax
0040eb99jne 0x40ebe4
0040eb9bjmp 0x40ebbb
0040eb9d
0040eb9dloc_40eb9d:
0040eb9dmov rcx, [rbp+88]
0040eba1mov rax, [rbp+56]
0040eba5mov rax, [rax+10]
0040eba9mov rdx, [rax]
0040ebacmov rax, [rbp+56]
0040ebb0mov r8l, [rax+6]
0040ebb4call fn_40ec40
0040ebb9jmp 0x40ebf5
0040ebbb
0040ebbbloc_40ebbb:
0040ebbbmov rcx, [rbp+88]
0040ebbfmov rdx, [rbp+96]
0040ebc3call fn_40e630
0040ebc8jmp 0x40ebf5
0040ebca
0040ebcaloc_40ebca:
0040ebcamov rcx, [rbp+88]
0040ebcecall fn_412500
0040ebd3jmp 0x40ebf5
0040ebd5
0040ebd5loc_40ebd5:
0040ebd5mov rcx, [rbp+88]
0040ebd9mov rdx, [rbp+96]
0040ebddcall fn_410600
0040ebe2jmp 0x40ebf5
0040ebe4
0040ebe4loc_40ebe4:
0040ebe4mov cl, 2
0040ebe6call fn_405a20
0040ebebjmp 0x40ebf5
0040ebed
0040ebed 90 90 e8 ...
0040ebf0 2c c5 ff ff 90 ,....
0040ebf5
0040ebf5loc_40ebf5:
0040ebf5mov rax, [rbp+48]
0040ebf9add [rbp+88], rax
0040ebfdsub [rbp+104], 1
0040ec02cmp [rbp+104], 0
0040ec07jne 0x40eb6a
0040ec0d
0040ec0dloc_40ec0d:
0040ec0dlea rsp, [rbp+64]
0040ec11pop rbp
0040ec12ret
0040eae0
0040eae0fn_40eae0:
0040eae0push rbp
0040eae1sub rsp, 64
0040eae5mov rbp, rsp
0040eae8mov [rbp+40], rbp
0040eaecmov [rbp+80], rcx
0040eaf0mov [rbp+88], rdx
0040eaf4mov [rbp+96], r8
0040eaf8mov [rbp+104], r9
0040eafcmov rax, [rbp+96]
0040eb00movzx rcx, [rax+1]
0040eb05lea rcx, [rax+rcx]
0040eb09mov [rbp+56], rcx
0040eb0dmovzx rax, [rax]
0040eb11sub al, 8
0040eb14cmp al, 15
0040eb17ja 0x40eb37
0040eb19mov dx, 1
0040eb1dmovzx cx, al
0040eb21and cx, 127
0040eb25shl edx, cl
0040eb27movzx rax, [rip+257]
0040eb2ftest dx, ax
0040eb32setne al
0040eb35jmp 0x40eb39
0040eb37
0040eb37loc_40eb37:
0040eb37xor eax, eax
0040eb39
0040eb39loc_40eb39:
0040eb39test al, al
0040eb3bje 0x40eb4a
0040eb3dmov rax, [rbp+56]
0040eb41mov eax, [rax+2]
0040eb44mov [rbp+48], rax
0040eb48jmp 0x40eb52
0040eb4a
0040eb4aloc_40eb4a:
0040eb4amov [rbp+48], 8
0040eb52
0040eb52loc_40eb52:
0040eb52mov rax, [rbp+48]
0040eb56add [rbp+88], rax
0040eb5asub [rbp+104], 1
0040eb5fcmp [rbp+104], 0
0040eb64jbe 0x40ec0d
0040eb6a
0040eb6aloc_40eb6a:
0040eb6anop
0040eb6bmov rax, [rbp+96]
0040eb6fmovzx rax, [rax]
0040eb73cmp eax, 15
0040eb76jg 0x40eb8d
0040eb78cmp eax, 15
0040eb7bje 0x40ebca
0040eb7dsub eax, 13
0040eb80test eax, eax
0040eb82je 0x40eb9d
0040eb84sub eax, 1
0040eb87test eax, eax
0040eb89jne 0x40ebe4
0040eb8bjmp 0x40ebbb
0040eb8d
0040eb8dloc_40eb8d:
0040eb8dsub eax, 17
0040eb90test eax, eax
0040eb92je 0x40ebd5
0040eb94sub eax, 5
0040eb97test eax, eax
0040eb99jne 0x40ebe4
0040eb9bjmp 0x40ebbb
0040eb9d
0040eb9dloc_40eb9d:
0040eb9dmov rcx, [rbp+88]
0040eba1mov rax, [rbp+56]
0040eba5mov rax, [rax+10]
0040eba9mov rdx, [rax]
0040ebacmov rax, [rbp+56]
0040ebb0mov r8l, [rax+6]
0040ebb4call fn_40ec40
0040ebb9jmp 0x40ebf5
0040ebbb
0040ebbbloc_40ebbb:
0040ebbbmov rcx, [rbp+88]
0040ebbfmov rdx, [rbp+96]
0040ebc3call fn_40e630
0040ebc8jmp 0x40ebf5
0040ebca
0040ebcaloc_40ebca:
0040ebcamov rcx, [rbp+88]
0040ebcecall fn_412500
0040ebd3jmp 0x40ebf5
0040ebd5
0040ebd5loc_40ebd5:
0040ebd5mov rcx, [rbp+88]
0040ebd9mov rdx, [rbp+96]
0040ebddcall fn_410600
0040ebe2jmp 0x40ebf5
0040ebe4
0040ebe4loc_40ebe4:
0040ebe4mov cl, 2
0040ebe6call fn_405a20
0040ebebjmp 0x40ebf5
0040ebed
0040ebed 90 90 e8 ...
0040ebf0 2c c5 ff ff 90 ,....
0040ebf5
0040ebf5loc_40ebf5:
0040ebf5mov rax, [rbp+48]
0040ebf9add [rbp+88], rax
0040ebfdsub [rbp+104], 1
0040ec02cmp [rbp+104], 0
0040ec07jne 0x40eb6a
0040ec0d
0040ec0dloc_40ec0d:
0040ec0dlea rsp, [rbp+64]
0040ec11pop rbp
0040ec12ret
0040eae0
Loading..