File trigona_be6dfedd91e1ebc81d58a61b05b0ef93322425b247636a0f7f5c3eeebbc52edd.exe
Function:
Loading..
00406286
00406286 // align 0x10
00406286 // align 0x10
00406296
00406296 // align 0x10
00406296 // align 0x10
004062ad
004062ad // align 0x10
004062ad // align 0x10
004062bf
004062bf // align 0x10
004062bf // align 0x10
004062c0
004062c0fn_4062c0:
004062c0push rsi
004062c1push rbx
004062c2sub rsp, 40
004062c6mov rbx, rcx
004062c9mov esi, edx
004062cbmovzx rax, [rbx+8]
004062d0cmp ax, -10320
004062d5jb 0x4062de
004062d7cmp ax, -10317
004062dcjbe 0x4062e5
004062de
004062deloc_4062de:
004062demov ebx, 102
004062e3jmp 0x406322
004062e5
004062e5loc_4062e5:
004062e5mov rcx, rbx
004062e8call fn_4062b0
004062edcmp [rbx+8], -10320
004062f3je 0x4062fd
004062f5mov rcx, rbx
004062f8call fn_406940
004062fd
004062fdloc_4062fd:
004062fdmov [rbx+8], si
00406301cmp [rbx+96], 0
00406306jne 0x40631a
00406308cmp [rbx+32], 0
0040630djne 0x40631a
0040630flea rax, [rip+442]
00406316mov [rbx+32], rax
0040631a
0040631aloc_40631a:
0040631amov rcx, rbx
0040631dcall [rbx+32]
00406320mov ebx, eax
00406322
00406322loc_406322:
00406322test ebx, ebx
00406324je 0x40632d
00406326mov ecx, ebx
00406328call fn_405a70
0040632d
0040632dloc_40632d:
0040632dmov eax, ebx
0040632fadd rsp, 40
00406333pop rbx
00406334pop rsi
00406335ret
004062c0
004062c0fn_4062c0:
004062c0push rsi
004062c1push rbx
004062c2sub rsp, 40
004062c6mov rbx, rcx
004062c9mov esi, edx
004062cbmovzx rax, [rbx+8]
004062d0cmp ax, -10320
004062d5jb 0x4062de
004062d7cmp ax, -10317
004062dcjbe 0x4062e5
004062de
004062deloc_4062de:
004062demov ebx, 102
004062e3jmp 0x406322
004062e5
004062e5loc_4062e5:
004062e5mov rcx, rbx
004062e8call fn_4062b0
004062edcmp [rbx+8], -10320
004062f3je 0x4062fd
004062f5mov rcx, rbx
004062f8call fn_406940
004062fd
004062fdloc_4062fd:
004062fdmov [rbx+8], si
00406301cmp [rbx+96], 0
00406306jne 0x40631a
00406308cmp [rbx+32], 0
0040630djne 0x40631a
0040630flea rax, [rip+442]
00406316mov [rbx+32], rax
0040631a
0040631aloc_40631a:
0040631amov rcx, rbx
0040631dcall [rbx+32]
00406320mov ebx, eax
00406322
00406322loc_406322:
00406322test ebx, ebx
00406324je 0x40632d
00406326mov ecx, ebx
00406328call fn_405a70
0040632d
0040632dloc_40632d:
0040632dmov eax, ebx
0040632fadd rsp, 40
00406333pop rbx
00406334pop rsi
00406335ret
004062c0
00406336
00406336 // align 0x10
00406336 // align 0x10
00406340
00406340fn_406340:
00406340sub rsp, 40
00406344mov dx, -10319
00406348call fn_4062c0
0040634dadd rsp, 40
00406351ret
00406340
00406340fn_406340:
00406340sub rsp, 40
00406344mov dx, -10319
00406348call fn_4062c0
0040634dadd rsp, 40
00406351ret
00406340
00406352
00406352 // align 0x10
00406352 // align 0x10
00406360
00406360fn_406360:
00406360sub rsp, 40
00406364mov dx, -10318
00406368call fn_4062c0
0040636dadd rsp, 40
00406371ret
00406360
00406360fn_406360:
00406360sub rsp, 40
00406364mov dx, -10318
00406368call fn_4062c0
0040636dadd rsp, 40
00406371ret
00406360
00406372
00406372 // align 0x10
00406372 // align 0x10
00406380
00406380fn_406380:
00406380sub rsp, 40
00406384mov dx, -10317
00406388call fn_4062c0
0040638dadd rsp, 40
00406391ret
00406380
00406380fn_406380:
00406380sub rsp, 40
00406384mov dx, -10317
00406388call fn_4062c0
0040638dadd rsp, 40
00406391ret
00406380
00406392
00406392 // align 0x10
00406392 // align 0x10
004063a0
004063a0fn_4063a0:
004063a0sub rsp, 40
004063a4mov [rcx+20], 0
004063abmov [rcx+16], 0
004063b2mov rax, [rcx]
004063b5mov rdx, [rcx+24]
004063b9mov r8l, [rcx+12]
004063bdlea r9, [rcx+20]
004063c1mov [rsp+32], 0
004063camov rcx, rax
004063cdcall ReadFile
004063d2test eax, eax
004063d4jne 0x4063e4
004063d6call GetLastError
004063dbcmp eax, 109
004063dejne 0x4063e6
004063e0xor eax, eax
004063e2jmp 0x4063e6
004063e4
004063e4loc_4063e4:
004063e4xor eax, eax
004063e6
004063e6loc_4063e6:
004063e6add rsp, 40
004063earet
004063a0
004063a0fn_4063a0:
004063a0sub rsp, 40
004063a4mov [rcx+20], 0
004063abmov [rcx+16], 0
004063b2mov rax, [rcx]
004063b5mov rdx, [rcx+24]
004063b9mov r8l, [rcx+12]
004063bdlea r9, [rcx+20]
004063c1mov [rsp+32], 0
004063camov rcx, rax
004063cdcall ReadFile
004063d2test eax, eax
004063d4jne 0x4063e4
004063d6call GetLastError
004063dbcmp eax, 109
004063dejne 0x4063e6
004063e0xor eax, eax
004063e2jmp 0x4063e6
004063e4
004063e4loc_4063e4:
004063e4xor eax, eax
004063e6
004063e6loc_4063e6:
004063e6add rsp, 40
004063earet
004063a0
004063eb
004063eb // align 0x10
004063eb // align 0x10
004063f3
004063f3 // align 0x10
004063f3 // align 0x10
00406400
00406400fn_406400:
00406400push rbp
00406401push rbx
00406402sub rsp, 72
00406406mov rbp, rsp
00406409mov rbx, rcx
0040640cmov eax, [rbx+16]
0040640ftest eax, eax
00406411jne 0x406417
00406413xor eax, eax
00406415jmp 0x406447
00406417
00406417loc_406417:
00406417mov rcx, [rbx]
0040641amov rdx, [rbx+24]
0040641emov r8l, eax
00406421lea r9, [rbp+60]
00406425mov [rsp+32], 0
0040642ecall WriteFile
00406433test eax, eax
00406435jne 0x40643e
00406437call GetLastError
0040643cjmp 0x406440
0040643e
0040643eloc_40643e:
0040643exor eax, eax
00406440
00406440loc_406440:
00406440mov [rbx+16], 0
00406447
00406447loc_406447:
00406447lea rsp, [rbp+72]
0040644bpop rbx
0040644cpop rbp
0040644dret
00406400
00406400fn_406400:
00406400push rbp
00406401push rbx
00406402sub rsp, 72
00406406mov rbp, rsp
00406409mov rbx, rcx
0040640cmov eax, [rbx+16]
0040640ftest eax, eax
00406411jne 0x406417
00406413xor eax, eax
00406415jmp 0x406447
00406417
00406417loc_406417:
00406417mov rcx, [rbx]
0040641amov rdx, [rbx+24]
0040641emov r8l, eax
00406421lea r9, [rbp+60]
00406425mov [rsp+32], 0
0040642ecall WriteFile
00406433test eax, eax
00406435jne 0x40643e
00406437call GetLastError
0040643cjmp 0x406440
0040643e
0040643eloc_40643e:
0040643exor eax, eax
00406440
00406440loc_406440:
00406440mov [rbx+16], 0
00406447
00406447loc_406447:
00406447lea rsp, [rbp+72]
0040644bpop rbx
0040644cpop rbp
0040644dret
00406400
0040644e
0040644e // align 0x10
0040644e // align 0x10
00406450
00406450fn_406450:
00406450sub rsp, 40
00406454call CloseHandle
00406459test eax, eax
0040645bsetne al
0040645eadd rsp, 40
00406462ret
00406450
00406450fn_406450:
00406450sub rsp, 40
00406454call CloseHandle
00406459test eax, eax
0040645bsetne al
0040645eadd rsp, 40
00406462ret
00406450
00406463
00406463 // align 0x10
00406463 // align 0x10
00406470
00406470fn_406470:
00406470sub rsp, 40
00406474mov [rcx+8], -10320
0040647amov rcx, [rcx]
0040647dcall fn_406450
00406482test al, al
00406484jne 0x40648d
00406486call GetLastError
0040648bjmp 0x40648f
0040648d
0040648dloc_40648d:
0040648dxor eax, eax
0040648f
0040648floc_40648f:
0040648fadd rsp, 40
00406493ret
00406470
00406470fn_406470:
00406470sub rsp, 40
00406474mov [rcx+8], -10320
0040647amov rcx, [rcx]
0040647dcall fn_406450
00406482test al, al
00406484jne 0x40648d
00406486call GetLastError
0040648bjmp 0x40648f
0040648d
0040648dloc_40648d:
0040648dxor eax, eax
0040648f
0040648floc_40648f:
0040648fadd rsp, 40
00406493ret
00406470
00406494
00406494 // align 0x10
00406494 // align 0x10
004064a0
004064a0fn_4064a0:
004064a0push rbx
004064a1sub rsp, 32
004064a5mov rbx, rcx
004064a8mov rcx, [rbx]
004064abcall fn_406450
004064b0mov [rbx+8], -10320
004064b6call GetLastError
004064bbadd rsp, 32
004064bfpop rbx
004064c0ret
004064a0
004064a0fn_4064a0:
004064a0push rbx
004064a1sub rsp, 32
004064a5mov rbx, rcx
004064a8mov rcx, [rbx]
004064abcall fn_406450
004064b0mov [rbx+8], -10320
004064b6call GetLastError
004064bbadd rsp, 32
004064bfpop rbx
004064c0ret
004064a0
004064c1
004064c1 // align 0x10
004064c1 // align 0x10
004064d0
004064d0fn_4064d0:
004064d0push rbp
004064d1push rsi
004064d2push rbx
004064d3sub rsp, 80
004064d7mov rbp, rsp
004064damov rbx, rcx
004064ddxor esi, esi
004064dfmov [rbx+16], 0
004064e6mov [rbx+20], 0
004064edmovzx rax, [rbx+8]
004064f2sub ax, -10319
004064f7test ax, ax
004064faje 0x406514
004064fcsub ax, 1
00406500test ax, ax
00406503je 0x40652b
00406505sub ax, 1
00406509test ax, ax
0040650cjne 0x4067c2
00406512jmp 0x406542
00406514
00406514loc_406514:
00406514mov eax, 0xffffffff80000000
00406519mov ecx, 3
0040651elea rdx, [rip-389]
00406525mov [rbx+40], rdx
00406529jmp 0x406557
0040652b
0040652bloc_40652b:
0040652bmov eax, 0x40000000
00406530mov ecx, 2
00406535lea rdx, [rip-316]
0040653cmov [rbx+40], rdx
00406540jmp 0x406557
00406542
00406542loc_406542:
00406542mov eax, 0xffffffffc0000000
00406547mov ecx, 3
0040654clea rdx, [rip-339]
00406553mov [rbx+40], rdx
00406557
00406557loc_406557:
00406557lea rdx, [rip-366]
0040655emov [rbx+48], rdx
00406562cmp [rbx+96], 0
00406567jne 0x406623
0040656dcmp [rbx+24], 0
00406572jne 0x406586
00406574lea rax, [rbx+616]
0040657bmov [rbx+24], rax
0040657fmov [rbx+12], 128
00406586
00406586loc_406586:
00406586lea rax, [rip-413]
0040658dmov [rbx+56], rax
00406591cmp [rbx+8], -10318
00406597jne 0x4065bd
00406599lea rax, [rip+0x5f0f8]
004065a0cmp rbx, rax
004065a3jne 0x4065ac
004065a5mov eax, -12
004065aajmp 0x4065b1
004065ac
004065acloc_4065ac:
004065acmov eax, -11
004065b1
004065b1loc_4065b1:
004065b1mov ecx, eax
004065b3call GetStdHandle
004065b8mov [rbx], rax
004065bbjmp 0x4065ca
004065bd
004065bdloc_4065bd:
004065bdmov ecx, -10
004065c2call GetStdHandle
004065c7mov [rbx], rax
004065ca
004065caloc_4065ca:
004065cacmp [rbx+744], 0
004065d2jne 0x406787
004065d8mov rcx, [rbx]
004065dbcall GetFileType
004065e0cmp eax, 2
004065e3jne 0x40660f
004065e5cmp [rbx+8], -10318
004065ebjne 0x4065fe
004065edcall GetConsoleOutputCP
004065f2mov [rbx+744], ax
004065f9jmp 0x406787
004065fe
004065feloc_4065fe:
004065fecall GetConsoleCP
00406603mov [rbx+744], ax
0040660ajmp 0x406787
0040660f
0040660floc_40660f:
0040660fmovzx rax, [rip+0x5f401]
00406617mov [rbx+744], ax
0040661ejmp 0x406787
00406623
00406623loc_406623:
00406623lea rdx, [rip-442]
0040662amov [rbx+56], rdx
0040662elea rdx, [rbx+96]
00406632mov r8l, 1
00406638xor r9, r9
0040663bmov [rsp+32], ecx
0040663fmov [rsp+40], 128
00406647mov [rsp+48], 0
00406650mov rcx, rdx
00406653mov edx, eax
00406655call CreateFileW
0040665acmp rax, -1
0040665ejne 0x406672
00406660mov [rbx+8], -10320
00406666call GetLastError
0040666bmov esi, eax
0040666djmp 0x4067c2
00406672
00406672loc_406672:
00406672mov [rbx], rax
00406675cmp [rbx+8], -10317
0040667bjne 0x40676e
00406681mov [rbx+8], -10318
00406687mov rcx, [rbx]
0040668axor edx, edx
0040668ccall GetFileSize
00406691cmp eax, -1
00406694jne 0x4066a5
00406696mov rcx, rbx
00406699call fn_4064a0
0040669emov esi, eax
004066a0jmp 0x4067c2
004066a5
004066a5loc_4066a5:
004066a5sub eax, 128
004066abtest eax, eax
004066adjge 0x4066b1
004066afxor eax, eax
004066b1
004066b1loc_4066b1:
004066b1mov rcx, [rbx]
004066b4mov edx, eax
004066b6xor r8, r8
004066b9xor r9, r9
004066bccall SetFilePointer
004066c1cmp eax, -1
004066c4je 0x4066ec
004066c6mov rcx, [rbx]
004066c9lea rdx, [rbx+616]
004066d0mov r8l, 128
004066d6lea r9, [rbp+76]
004066damov [rsp+32], 0
004066e3call ReadFile
004066e8test eax, eax
004066eajne 0x4066fb
004066ec
004066ecloc_4066ec:
004066ecmov rcx, rbx
004066efcall fn_4064a0
004066f4mov esi, eax
004066f6jmp 0x4067c2
004066fb
004066fbloc_4066fb:
004066fbmovzx rax, [rbx+10]
00406700test ax, 1
00406705je 0x40676e
00406707cmp [rbp+76], 0
0040670bjbe 0x40676e
0040670dxor ecx, ecx
0040670fmov edx, [rbp+76]
00406712sub edx, 1
00406715mov eax, ecx
00406717cmp eax, edx
00406719ja 0x40676d
0040671bsub edx, ecx
0040671dadd edx, 1
00406720lea rcx, [rbx+616]
00406727
00406727loc_406727:
00406727cmp [rcx], 26
0040672ajne 0x40675f
0040672cmov rcx, [rbx]
0040672fmov edx, eax
00406731sub edx, [rbp+76]
00406734xor r8, r8
00406737mov r9l, 2
0040673dcall SetFilePointer
00406742cmp eax, -1
00406745je 0x406753
00406747mov rcx, [rbx]
0040674acall SetEndOfFile
0040674ftest eax, eax
00406751jne 0x40676d
00406753
00406753loc_406753:
00406753mov rcx, rbx
00406756call fn_4064a0
0040675bmov esi, eax
0040675djmp 0x4067c2
0040675f
0040675floc_40675f:
0040675fadd eax, 1
00406762add rcx, 1
00406766sub edx, 1
00406769test edx, edx
0040676bjne 0x406727
0040676d
0040676dloc_40676d:
0040676dnop
0040676e
0040676eloc_40676e:
0040676ecmp [rbx+744], 0
00406776jne 0x406787
00406778movzx rax, [rip+0x5f298]
00406780mov [rbx+744], ax
00406787
00406787loc_406787:
00406787cmp [rbx+8], -10319
0040678dje 0x4067c2
0040678fmov rcx, [rbx]
00406792call GetFileType
00406797sub eax, 1
0040679acmp eax, -1
0040679dje 0x4067a8
0040679fsub eax, 1
004067a2test eax, eax
004067a4jne 0x4067c2
004067a6jmp 0x4067b7
004067a8
004067a8loc_4067a8:
004067a8mov rcx, rbx
004067abcall fn_4064a0
004067b0mov esi, 105
004067b5jmp 0x4067c2
004067b7
004067b7loc_4067b7:
004067b7lea rax, [rip-958]
004067bemov [rbx+48], rax
004067c2
004067c2loc_4067c2:
004067c2mov eax, esi
004067c4lea rsp, [rbp+80]
004067c8pop rbx
004067c9pop rsi
004067capop rbp
004067cbret
004064d0
004064d0fn_4064d0:
004064d0push rbp
004064d1push rsi
004064d2push rbx
004064d3sub rsp, 80
004064d7mov rbp, rsp
004064damov rbx, rcx
004064ddxor esi, esi
004064dfmov [rbx+16], 0
004064e6mov [rbx+20], 0
004064edmovzx rax, [rbx+8]
004064f2sub ax, -10319
004064f7test ax, ax
004064faje 0x406514
004064fcsub ax, 1
00406500test ax, ax
00406503je 0x40652b
00406505sub ax, 1
00406509test ax, ax
0040650cjne 0x4067c2
00406512jmp 0x406542
00406514
00406514loc_406514:
00406514mov eax, 0xffffffff80000000
00406519mov ecx, 3
0040651elea rdx, [rip-389]
00406525mov [rbx+40], rdx
00406529jmp 0x406557
0040652b
0040652bloc_40652b:
0040652bmov eax, 0x40000000
00406530mov ecx, 2
00406535lea rdx, [rip-316]
0040653cmov [rbx+40], rdx
00406540jmp 0x406557
00406542
00406542loc_406542:
00406542mov eax, 0xffffffffc0000000
00406547mov ecx, 3
0040654clea rdx, [rip-339]
00406553mov [rbx+40], rdx
00406557
00406557loc_406557:
00406557lea rdx, [rip-366]
0040655emov [rbx+48], rdx
00406562cmp [rbx+96], 0
00406567jne 0x406623
0040656dcmp [rbx+24], 0
00406572jne 0x406586
00406574lea rax, [rbx+616]
0040657bmov [rbx+24], rax
0040657fmov [rbx+12], 128
00406586
00406586loc_406586:
00406586lea rax, [rip-413]
0040658dmov [rbx+56], rax
00406591cmp [rbx+8], -10318
00406597jne 0x4065bd
00406599lea rax, [rip+0x5f0f8]
004065a0cmp rbx, rax
004065a3jne 0x4065ac
004065a5mov eax, -12
004065aajmp 0x4065b1
004065ac
004065acloc_4065ac:
004065acmov eax, -11
004065b1
004065b1loc_4065b1:
004065b1mov ecx, eax
004065b3call GetStdHandle
004065b8mov [rbx], rax
004065bbjmp 0x4065ca
004065bd
004065bdloc_4065bd:
004065bdmov ecx, -10
004065c2call GetStdHandle
004065c7mov [rbx], rax
004065ca
004065caloc_4065ca:
004065cacmp [rbx+744], 0
004065d2jne 0x406787
004065d8mov rcx, [rbx]
004065dbcall GetFileType
004065e0cmp eax, 2
004065e3jne 0x40660f
004065e5cmp [rbx+8], -10318
004065ebjne 0x4065fe
004065edcall GetConsoleOutputCP
004065f2mov [rbx+744], ax
004065f9jmp 0x406787
004065fe
004065feloc_4065fe:
004065fecall GetConsoleCP
00406603mov [rbx+744], ax
0040660ajmp 0x406787
0040660f
0040660floc_40660f:
0040660fmovzx rax, [rip+0x5f401]
00406617mov [rbx+744], ax
0040661ejmp 0x406787
00406623
00406623loc_406623:
00406623lea rdx, [rip-442]
0040662amov [rbx+56], rdx
0040662elea rdx, [rbx+96]
00406632mov r8l, 1
00406638xor r9, r9
0040663bmov [rsp+32], ecx
0040663fmov [rsp+40], 128
00406647mov [rsp+48], 0
00406650mov rcx, rdx
00406653mov edx, eax
00406655call CreateFileW
0040665acmp rax, -1
0040665ejne 0x406672
00406660mov [rbx+8], -10320
00406666call GetLastError
0040666bmov esi, eax
0040666djmp 0x4067c2
00406672
00406672loc_406672:
00406672mov [rbx], rax
00406675cmp [rbx+8], -10317
0040667bjne 0x40676e
00406681mov [rbx+8], -10318
00406687mov rcx, [rbx]
0040668axor edx, edx
0040668ccall GetFileSize
00406691cmp eax, -1
00406694jne 0x4066a5
00406696mov rcx, rbx
00406699call fn_4064a0
0040669emov esi, eax
004066a0jmp 0x4067c2
004066a5
004066a5loc_4066a5:
004066a5sub eax, 128
004066abtest eax, eax
004066adjge 0x4066b1
004066afxor eax, eax
004066b1
004066b1loc_4066b1:
004066b1mov rcx, [rbx]
004066b4mov edx, eax
004066b6xor r8, r8
004066b9xor r9, r9
004066bccall SetFilePointer
004066c1cmp eax, -1
004066c4je 0x4066ec
004066c6mov rcx, [rbx]
004066c9lea rdx, [rbx+616]
004066d0mov r8l, 128
004066d6lea r9, [rbp+76]
004066damov [rsp+32], 0
004066e3call ReadFile
004066e8test eax, eax
004066eajne 0x4066fb
004066ec
004066ecloc_4066ec:
004066ecmov rcx, rbx
004066efcall fn_4064a0
004066f4mov esi, eax
004066f6jmp 0x4067c2
004066fb
004066fbloc_4066fb:
004066fbmovzx rax, [rbx+10]
00406700test ax, 1
00406705je 0x40676e
00406707cmp [rbp+76], 0
0040670bjbe 0x40676e
0040670dxor ecx, ecx
0040670fmov edx, [rbp+76]
00406712sub edx, 1
00406715mov eax, ecx
00406717cmp eax, edx
00406719ja 0x40676d
0040671bsub edx, ecx
0040671dadd edx, 1
00406720lea rcx, [rbx+616]
00406727
00406727loc_406727:
00406727cmp [rcx], 26
0040672ajne 0x40675f
0040672cmov rcx, [rbx]
0040672fmov edx, eax
00406731sub edx, [rbp+76]
00406734xor r8, r8
00406737mov r9l, 2
0040673dcall SetFilePointer
00406742cmp eax, -1
00406745je 0x406753
00406747mov rcx, [rbx]
0040674acall SetEndOfFile
0040674ftest eax, eax
00406751jne 0x40676d
00406753
00406753loc_406753:
00406753mov rcx, rbx
00406756call fn_4064a0
0040675bmov esi, eax
0040675djmp 0x4067c2
0040675f
0040675floc_40675f:
0040675fadd eax, 1
00406762add rcx, 1
00406766sub edx, 1
00406769test edx, edx
0040676bjne 0x406727
0040676d
0040676dloc_40676d:
0040676dnop
0040676e
0040676eloc_40676e:
0040676ecmp [rbx+744], 0
00406776jne 0x406787
00406778movzx rax, [rip+0x5f298]
00406780mov [rbx+744], ax
00406787
00406787loc_406787:
00406787cmp [rbx+8], -10319
0040678dje 0x4067c2
0040678fmov rcx, [rbx]
00406792call GetFileType
00406797sub eax, 1
0040679acmp eax, -1
0040679dje 0x4067a8
0040679fsub eax, 1
004067a2test eax, eax
004067a4jne 0x4067c2
004067a6jmp 0x4067b7
004067a8
004067a8loc_4067a8:
004067a8mov rcx, rbx
004067abcall fn_4064a0
004067b0mov esi, 105
004067b5jmp 0x4067c2
004067b7
004067b7loc_4067b7:
004067b7lea rax, [rip-958]
004067bemov [rbx+48], rax
004067c2
004067c2loc_4067c2:
004067c2mov eax, esi
004067c4lea rsp, [rbp+80]
004067c8pop rbx
004067c9pop rsi
004067capop rbp
004067cbret
004064d0
004067cc
004067cc // align 0x10
004067cc // align 0x10
004067d0
004067d0fn_4067d0:
004067d0push rbp
004067d1push rdi
004067d2push rsi
004067d3push rbx
004067d4sub rsp, 56
004067d8mov rbp, rsp
004067dbmov rbx, rcx
004067demov rsi, rdx
004067e1mov edi, r8l
004067e4mov rcx, rbx
004067e7mov edx, 754
004067ecxor r8, r8
004067efcall fn_4069b0
004067f4lea rax, [rbx+616]
004067fbmov [rbx+24], rax
004067ffmov [rbx+8], -10320
00406805movzx ax, [rip+0x5282e]
0040680dmov [rbx+10], ax
00406811test di, di
00406814jne 0x406827
00406816movzx rax, [rip+0x5f1fa]
0040681emov [rbx+744], ax
00406825jmp 0x40682e
00406827
00406827loc_406827:
00406827mov [rbx+744], di
0040682e
0040682eloc_40682e:
0040682emov [rbx+12], 128
00406835lea rax, [rip-876]
0040683cmov [rbx+32], rax
00406840mov rcx, rsi
00406843call fn_40c5a0
00406848mov edi, eax
0040684acmp edi, 259
00406850jle 0x406861
00406852mov ecx, 3
00406857call fn_405a70
0040685cmov edi, 259
00406861
00406861loc_406861:
00406861lea rax, [rbx+96]
00406865mov [rbp+40], rax
00406869mov rcx, rsi
0040686cmov rdx, [rbp+40]
00406870mov r8l, edi
00406873add r8l, r8l
00406876movsxd r8, r8l
00406879call fn_405ac0
0040687emovsxd rdi, edi
00406881mov [rbx+2*rdi+96], 0
00406888mov [rbx+746], 0
0040688fxor eax, eax
00406891lea rsp, [rbp+56]
00406895pop rbx
00406896pop rsi
00406897pop rdi
00406898pop rbp
00406899ret
004067d0
004067d0fn_4067d0:
004067d0push rbp
004067d1push rdi
004067d2push rsi
004067d3push rbx
004067d4sub rsp, 56
004067d8mov rbp, rsp
004067dbmov rbx, rcx
004067demov rsi, rdx
004067e1mov edi, r8l
004067e4mov rcx, rbx
004067e7mov edx, 754
004067ecxor r8, r8
004067efcall fn_4069b0
004067f4lea rax, [rbx+616]
004067fbmov [rbx+24], rax
004067ffmov [rbx+8], -10320
00406805movzx ax, [rip+0x5282e]
0040680dmov [rbx+10], ax
00406811test di, di
00406814jne 0x406827
00406816movzx rax, [rip+0x5f1fa]
0040681emov [rbx+744], ax
00406825jmp 0x40682e
00406827
00406827loc_406827:
00406827mov [rbx+744], di
0040682e
0040682eloc_40682e:
0040682emov [rbx+12], 128
00406835lea rax, [rip-876]
0040683cmov [rbx+32], rax
00406840mov rcx, rsi
00406843call fn_40c5a0
00406848mov edi, eax
0040684acmp edi, 259
00406850jle 0x406861
00406852mov ecx, 3
00406857call fn_405a70
0040685cmov edi, 259
00406861
00406861loc_406861:
00406861lea rax, [rbx+96]
00406865mov [rbp+40], rax
00406869mov rcx, rsi
0040686cmov rdx, [rbp+40]
00406870mov r8l, edi
00406873add r8l, r8l
00406876movsxd r8, r8l
00406879call fn_405ac0
0040687emovsxd rdi, edi
00406881mov [rbx+2*rdi+96], 0
00406888mov [rbx+746], 0
0040688fxor eax, eax
00406891lea rsp, [rbp+56]
00406895pop rbx
00406896pop rsi
00406897pop rdi
00406898pop rbp
00406899ret
004067d0
0040689a
0040689a // align 0x10
0040689a // align 0x10
004068a0
004068a0fn_4068a0:
004068a0push rbx
004068a1sub rsp, 32
004068a5mov rax, rdx
004068a8movzx rdx, [rcx+8]
004068adsub dx, -10319
004068b2test dx, dx
004068b5je 0x4068c7
004068b7sub dx, 1
004068bbcmp dx, 2
004068bfjae 0x4068cb
004068c1call rax
004068c3mov ebx, eax
004068c5jmp 0x4068ec
004068c7
004068c7loc_4068c7:
004068c7xor ebx, ebx
004068c9jmp 0x4068ec
004068cb
004068cbloc_4068cb:
004068cblea rax, [rip+0x5eace]
004068d2cmp rcx, rax
004068d5je 0x4068e3
004068d7lea rax, [rip+0x5edba]
004068decmp rcx, rax
004068e1jne 0x4068e7
004068e3
004068e3loc_4068e3:
004068e3xor ebx, ebx
004068e5jmp 0x4068ec
004068e7
004068e7loc_4068e7:
004068e7mov ebx, 103
004068ec
004068ecloc_4068ec:
004068ectest ebx, ebx
004068eeje 0x4068f7
004068f0mov ecx, ebx
004068f2call fn_405a70
004068f7
004068f7loc_4068f7:
004068f7mov eax, ebx
004068f9add rsp, 32
004068fdpop rbx
004068feret
004068a0
004068a0fn_4068a0:
004068a0push rbx
004068a1sub rsp, 32
004068a5mov rax, rdx
004068a8movzx rdx, [rcx+8]
004068adsub dx, -10319
004068b2test dx, dx
004068b5je 0x4068c7
004068b7sub dx, 1
004068bbcmp dx, 2
004068bfjae 0x4068cb
004068c1call rax
004068c3mov ebx, eax
004068c5jmp 0x4068ec
004068c7
004068c7loc_4068c7:
004068c7xor ebx, ebx
004068c9jmp 0x4068ec
004068cb
004068cbloc_4068cb:
004068cblea rax, [rip+0x5eace]
004068d2cmp rcx, rax
004068d5je 0x4068e3
004068d7lea rax, [rip+0x5edba]
004068decmp rcx, rax
004068e1jne 0x4068e7
004068e3
004068e3loc_4068e3:
004068e3xor ebx, ebx
004068e5jmp 0x4068ec
004068e7
004068e7loc_4068e7:
004068e7mov ebx, 103
004068ec
004068ecloc_4068ec:
004068ectest ebx, ebx
004068eeje 0x4068f7
004068f0mov ecx, ebx
004068f2call fn_405a70
004068f7
004068f7loc_4068f7:
004068f7mov eax, ebx
004068f9add rsp, 32
004068fdpop rbx
004068feret
004068a0
004068ff
004068ff // align 0x10
004068ff // align 0x10
00406900
00406900fn_406900:
00406900sub rsp, 40
00406904mov rax, rcx
00406907mov rdx, [rcx+40]
0040690bmov rcx, rax
0040690ecall fn_4068a0
00406913add rsp, 40
00406917ret
00406900
00406900fn_406900:
00406900sub rsp, 40
00406904mov rax, rcx
00406907mov rdx, [rcx+40]
0040690bmov rcx, rax
0040690ecall fn_4068a0
00406913add rsp, 40
00406917ret
00406900
00406918
00406918 // align 0x10
00406918 // align 0x10
00406920
00406920fn_406920:
00406920sub rsp, 40
00406924mov rax, rcx
00406927mov rdx, [rcx+48]
0040692bmov rcx, rax
0040692ecall fn_4068a0
00406933add rsp, 40
00406937ret
00406920
00406920fn_406920:
00406920sub rsp, 40
00406924mov rax, rcx
00406927mov rdx, [rcx+48]
0040692bmov rcx, rax
0040692ecall fn_4068a0
00406933add rsp, 40
00406937ret
00406920
00406938
00406938 // align 0x10
00406938 // align 0x10
00406940
00406940fn_406940:
00406940push rsi
00406941push rbx
00406942sub rsp, 40
00406946mov rbx, rcx
00406949xor esi, esi
0040694bmovzx rax, [rbx+8]
00406950cmp ax, -10319
00406955jb 0x40698b
00406957cmp ax, -10317
0040695cja 0x40698b
0040695eand ax, -10318
00406963cmp ax, -10318
00406968jne 0x406972
0040696amov rcx, rbx
0040696dcall [rbx+40]
00406970mov esi, eax
00406972
00406972loc_406972:
00406972test esi, esi
00406974jne 0x40697e
00406976mov rcx, rbx
00406979call [rbx+56]
0040697cmov esi, eax
0040697e
0040697eloc_40697e:
0040697etest esi, esi
00406980je 0x4069a1
00406982mov ecx, esi
00406984call fn_405a70
00406989jmp 0x4069a1
0040698b
0040698bloc_40698b:
0040698blea rax, [rip+0x5e716]
00406992cmp rbx, rax
00406995je 0x4069a1
00406997mov ecx, 103
0040699ccall fn_405a70
004069a1
004069a1loc_4069a1:
004069a1mov eax, esi
004069a3add rsp, 40
004069a7pop rbx
004069a8pop rsi
004069a9ret
00406940
00406940fn_406940:
00406940push rsi
00406941push rbx
00406942sub rsp, 40
00406946mov rbx, rcx
00406949xor esi, esi
0040694bmovzx rax, [rbx+8]
00406950cmp ax, -10319
00406955jb 0x40698b
00406957cmp ax, -10317
0040695cja 0x40698b
0040695eand ax, -10318
00406963cmp ax, -10318
00406968jne 0x406972
0040696amov rcx, rbx
0040696dcall [rbx+40]
00406970mov esi, eax
00406972
00406972loc_406972:
00406972test esi, esi
00406974jne 0x40697e
00406976mov rcx, rbx
00406979call [rbx+56]
0040697cmov esi, eax
0040697e
0040697eloc_40697e:
0040697etest esi, esi
00406980je 0x4069a1
00406982mov ecx, esi
00406984call fn_405a70
00406989jmp 0x4069a1
0040698b
0040698bloc_40698b:
0040698blea rax, [rip+0x5e716]
00406992cmp rbx, rax
00406995je 0x4069a1
00406997mov ecx, 103
0040699ccall fn_405a70
004069a1
004069a1loc_4069a1:
004069a1mov eax, esi
004069a3add rsp, 40
004069a7pop rbx
004069a8pop rsi
004069a9ret
00406940
004069aa
004069aa // align 0x10
004069aa // align 0x10
004069b0
004069b0fn_4069b0:
004069b0test rdx, rdx
004069b3jle 0x406afb
004069b9mov eax, [rip+0x5f04d]
004069bftest eax, 512
004069c4jne 0x406aed
004069camovzx rax, r8b
004069cecmp rdx, 16
004069d2jl 0x406acc
004069d8test rax, rax
004069dbje 0x4069f1
004069ddmov r8, rax
004069e0shl rax, 8
004069e4or rax, r8
004069e7mov r8, rax
004069eashl rax, 16
004069eeor rax, r8
004069f1
004069f1loc_4069f1:
004069f1movd x0, eax
004069f5shufps x0, x0, 0
004069f9mov r8, rcx
004069fcand r8, 15
00406a00je 0x406a17
00406a02sub r8, 16
00406a06add rdx, r8
00406a09sub rcx, r8
00406a0cnop
00406a0d
00406a0dloc_406a0d:
00406a0dmov [rcx+r8], al
00406a11add r8, 1
00406a15jne 0x406a0d
00406a17
00406a17loc_406a17:
00406a17mov r8, 128
00406a1ecmp rdx, r8
00406a21jl 0x406a5f
00406a23sub rdx, r8
00406a26nop [rax]
00406a2d
00406a2dloc_406a2d:
00406a2dmovdqa [rcx], x0
00406a31movdqa [rcx+16], x0
00406a36movdqa [rcx+32], x0
00406a3bmovdqa [rcx+48], x0
00406a40movdqa [rcx+64], x0
00406a45movdqa [rcx+80], x0
00406a4amovdqa [rcx+96], x0
00406a4fmovdqa [rcx+112], x0
00406a54add rcx, r8
00406a57sub rdx, r8
00406a5ajg 0x406a2d
00406a5cadd rdx, r8
00406a5f
00406a5floc_406a5f:
00406a5fshr r8, 1
00406a62cmp rdx, r8
00406a65jl 0x406a8b
00406a67sub rdx, r8
00406a6anop [rax]
00406a6d
00406a6dloc_406a6d:
00406a6dmovdqa [rcx], x0
00406a71movdqa [rcx+16], x0
00406a76movdqa [rcx+32], x0
00406a7bmovdqa [rcx+48], x0
00406a80add rcx, r8
00406a83sub rdx, r8
00406a86jg 0x406a6d
00406a88add rdx, r8
00406a8b
00406a8bloc_406a8b:
00406a8bshr r8, 1
00406a8ecmp rdx, r8
00406a91jl 0x406ab1
00406a93sub rdx, r8
00406a96nop [rax]
00406a9d
00406a9dloc_406a9d:
00406a9dmovdqa [rcx], x0
00406aa1movdqa [rcx+16], x0
00406aa6add rcx, r8
00406aa9sub rdx, r8
00406aacjg 0x406a9d
00406aaeadd rdx, r8
00406ab1
00406ab1loc_406ab1:
00406ab1shr r8, 1
00406ab4cmp rdx, r8
00406ab7jl 0x406acc
00406ab9sub rdx, r8
00406abcnop
00406abd
00406abdloc_406abd:
00406abdmovdqa [rcx], x0
00406ac1add rcx, r8
00406ac4sub rdx, r8
00406ac7jg 0x406abd
00406ac9add rdx, r8
00406acc
00406accloc_406acc:
00406acctest rdx, rdx
00406acfje 0x406afb
00406ad1add rcx, rdx
00406ad4neg rdx
00406ad7nop [rax+rax]
00406add
00406addloc_406add:
00406addmov [rcx+rdx], al
00406ae0add rdx, 1
00406ae4jne 0x406add
00406ae6ret
00406ae7
00406ae7 66 0f 1f 44 00 00 f..D..
00406aed
00406aedloc_406aed:
00406aedpush rdi
00406aeecld
00406aefmov rdi, rcx
00406af2mov rcx, rdx
00406af5mov al, r8b
00406af8rep stosb [rdi], al
00406afapop rdi
00406afb
00406afbloc_406afb:
00406afbret
004069b0
004069b0fn_4069b0:
004069b0test rdx, rdx
004069b3jle 0x406afb
004069b9mov eax, [rip+0x5f04d]
004069bftest eax, 512
004069c4jne 0x406aed
004069camovzx rax, r8b
004069cecmp rdx, 16
004069d2jl 0x406acc
004069d8test rax, rax
004069dbje 0x4069f1
004069ddmov r8, rax
004069e0shl rax, 8
004069e4or rax, r8
004069e7mov r8, rax
004069eashl rax, 16
004069eeor rax, r8
004069f1
004069f1loc_4069f1:
004069f1movd x0, eax
004069f5shufps x0, x0, 0
004069f9mov r8, rcx
004069fcand r8, 15
00406a00je 0x406a17
00406a02sub r8, 16
00406a06add rdx, r8
00406a09sub rcx, r8
00406a0cnop
00406a0d
00406a0dloc_406a0d:
00406a0dmov [rcx+r8], al
00406a11add r8, 1
00406a15jne 0x406a0d
00406a17
00406a17loc_406a17:
00406a17mov r8, 128
00406a1ecmp rdx, r8
00406a21jl 0x406a5f
00406a23sub rdx, r8
00406a26nop [rax]
00406a2d
00406a2dloc_406a2d:
00406a2dmovdqa [rcx], x0
00406a31movdqa [rcx+16], x0
00406a36movdqa [rcx+32], x0
00406a3bmovdqa [rcx+48], x0
00406a40movdqa [rcx+64], x0
00406a45movdqa [rcx+80], x0
00406a4amovdqa [rcx+96], x0
00406a4fmovdqa [rcx+112], x0
00406a54add rcx, r8
00406a57sub rdx, r8
00406a5ajg 0x406a2d
00406a5cadd rdx, r8
00406a5f
00406a5floc_406a5f:
00406a5fshr r8, 1
00406a62cmp rdx, r8
00406a65jl 0x406a8b
00406a67sub rdx, r8
00406a6anop [rax]
00406a6d
00406a6dloc_406a6d:
00406a6dmovdqa [rcx], x0
00406a71movdqa [rcx+16], x0
00406a76movdqa [rcx+32], x0
00406a7bmovdqa [rcx+48], x0
00406a80add rcx, r8
00406a83sub rdx, r8
00406a86jg 0x406a6d
00406a88add rdx, r8
00406a8b
00406a8bloc_406a8b:
00406a8bshr r8, 1
00406a8ecmp rdx, r8
00406a91jl 0x406ab1
00406a93sub rdx, r8
00406a96nop [rax]
00406a9d
00406a9dloc_406a9d:
00406a9dmovdqa [rcx], x0
00406aa1movdqa [rcx+16], x0
00406aa6add rcx, r8
00406aa9sub rdx, r8
00406aacjg 0x406a9d
00406aaeadd rdx, r8
00406ab1
00406ab1loc_406ab1:
00406ab1shr r8, 1
00406ab4cmp rdx, r8
00406ab7jl 0x406acc
00406ab9sub rdx, r8
00406abcnop
00406abd
00406abdloc_406abd:
00406abdmovdqa [rcx], x0
00406ac1add rcx, r8
00406ac4sub rdx, r8
00406ac7jg 0x406abd
00406ac9add rdx, r8
00406acc
00406accloc_406acc:
00406acctest rdx, rdx
00406acfje 0x406afb
00406ad1add rcx, rdx
00406ad4neg rdx
00406ad7nop [rax+rax]
00406add
00406addloc_406add:
00406addmov [rcx+rdx], al
00406ae0add rdx, 1
00406ae4jne 0x406add
00406ae6ret
00406ae7
00406ae7 66 0f 1f 44 00 00 f..D..
00406aed
00406aedloc_406aed:
00406aedpush rdi
00406aeecld
00406aefmov rdi, rcx
00406af2mov rcx, rdx
00406af5mov al, r8b
00406af8rep stosb [rdi], al
00406afapop rdi
00406afb
00406afbloc_406afb:
00406afbret
004069b0
00406afc
00406afc // align 0x10
00406afc // align 0x10
00406b00
00406b00fn_406b00:
00406b00push rbx
00406b01sub rsp, 32
00406b05mov rbx, rcx
00406b08lea rax, [rip+0x5e599]
00406b0fcmp rbx, rax
00406b12jne 0x406b28
00406b14movzx ax, [rip+0x5251f]
00406b1cmov [rbx+10], ax
00406b20mov rcx, rbx
00406b23call fn_406340
00406b28
00406b28loc_406b28:
00406b28cmp [rbx+8], -10319
00406b2esete bl
00406b31test bl, bl
00406b33jne 0x406b3f
00406b35mov ecx, 104
00406b3acall fn_405a70
00406b3f
00406b3floc_406b3f:
00406b3fmov eax, ebx
00406b41add rsp, 32
00406b45pop rbx
00406b46ret
00406b00
00406b00fn_406b00:
00406b00push rbx
00406b01sub rsp, 32
00406b05mov rbx, rcx
00406b08lea rax, [rip+0x5e599]
00406b0fcmp rbx, rax
00406b12jne 0x406b28
00406b14movzx ax, [rip+0x5251f]
00406b1cmov [rbx+10], ax
00406b20mov rcx, rbx
00406b23call fn_406340
00406b28
00406b28loc_406b28:
00406b28cmp [rbx+8], -10319
00406b2esete bl
00406b31test bl, bl
00406b33jne 0x406b3f
00406b35mov ecx, 104
00406b3acall fn_405a70
00406b3f
00406b3floc_406b3f:
00406b3fmov eax, ebx
00406b41add rsp, 32
00406b45pop rbx
00406b46ret
00406b00
00406b47
00406b47 // align 0x10
00406b47 // align 0x10
00406b50
00406b50fn_406b50:
00406b50push rdi
00406b51push rsi
00406b52push rbx
00406b53sub rsp, 32
00406b57mov rbx, rcx
00406b5amov rsi, rdx
00406b5dmov dil, 26
00406b60mov [rsi], 1
00406b63cmp [rbx+8], -10319
00406b69je 0x406b77
00406b6bmov rcx, rbx
00406b6ecall fn_406b00
00406b73test al, al
00406b75je 0x406be1
00406b77
00406b77loc_406b77:
00406b77mov eax, [rbx+16]
00406b7acmp eax, [rbx+20]
00406b7djb 0x406bb9
00406b7fmov rcx, rbx
00406b82call [rbx+40]
00406b85test eax, eax
00406b87je 0x406b92
00406b89mov ecx, eax
00406b8bcall fn_405a70
00406b90jmp 0x406be1
00406b92
00406b92loc_406b92:
00406b92mov eax, [rbx+16]
00406b95cmp eax, [rbx+20]
00406b98jb 0x406bb9
00406b9amovzx rcx, [rbx+10]
00406b9ftest cx, 1
00406ba4je 0x406be1
00406ba6mov rcx, [rbx+24]
00406baamov eax, eax
00406bacmov [rcx+rax], 26
00406bb0lea rax, [rbx+20]
00406bb4add [rax], 1
00406bb7jmp 0x406be1
00406bb9
00406bb9loc_406bb9:
00406bb9mov rax, [rbx+24]
00406bbdmov ecx, [rbx+16]
00406bc0movzx rdi, [rax+rcx]
00406bc5movzx rax, [rbx+10]
00406bcatest ax, 1
00406bcfje 0x406bd7
00406bd1cmp dil, 26
00406bd5je 0x406be1
00406bd7
00406bd7loc_406bd7:
00406bd7lea rax, [rbx+16]
00406bdbadd [rax], 1
00406bdemov [rsi], 0
00406be1
00406be1loc_406be1:
00406be1mov eax, edi
00406be4add rsp, 32
00406be8pop rbx
00406be9pop rsi
00406beapop rdi
00406bebret
00406b50
00406b50fn_406b50:
00406b50push rdi
00406b51push rsi
00406b52push rbx
00406b53sub rsp, 32
00406b57mov rbx, rcx
00406b5amov rsi, rdx
00406b5dmov dil, 26
00406b60mov [rsi], 1
00406b63cmp [rbx+8], -10319
00406b69je 0x406b77
00406b6bmov rcx, rbx
00406b6ecall fn_406b00
00406b73test al, al
00406b75je 0x406be1
00406b77
00406b77loc_406b77:
00406b77mov eax, [rbx+16]
00406b7acmp eax, [rbx+20]
00406b7djb 0x406bb9
00406b7fmov rcx, rbx
00406b82call [rbx+40]
00406b85test eax, eax
00406b87je 0x406b92
00406b89mov ecx, eax
00406b8bcall fn_405a70
00406b90jmp 0x406be1
00406b92
00406b92loc_406b92:
00406b92mov eax, [rbx+16]
00406b95cmp eax, [rbx+20]
00406b98jb 0x406bb9
00406b9amovzx rcx, [rbx+10]
00406b9ftest cx, 1
00406ba4je 0x406be1
00406ba6mov rcx, [rbx+24]
00406baamov eax, eax
00406bacmov [rcx+rax], 26
00406bb0lea rax, [rbx+20]
00406bb4add [rax], 1
00406bb7jmp 0x406be1
00406bb9
00406bb9loc_406bb9:
00406bb9mov rax, [rbx+24]
00406bbdmov ecx, [rbx+16]
00406bc0movzx rdi, [rax+rcx]
00406bc5movzx rax, [rbx+10]
00406bcatest ax, 1
00406bcfje 0x406bd7
00406bd1cmp dil, 26
00406bd5je 0x406be1
00406bd7
00406bd7loc_406bd7:
00406bd7lea rax, [rbx+16]
00406bdbadd [rax], 1
00406bdemov [rsi], 0
00406be1
00406be1loc_406be1:
00406be1mov eax, edi
00406be4add rsp, 32
00406be8pop rbx
00406be9pop rsi
00406beapop rdi
00406bebret
00406b50
00406bec
00406bec // align 0x10
00406bec // align 0x10
00406bf0
00406bf0fn_406bf0:
00406bf0push rdi
00406bf1push rsi
00406bf2push rbx
00406bf3sub rsp, 32
00406bf7mov rbx, rcx
00406bfamov rsi, rdx
00406bfdmov di, 26
00406c01mov [rsi], 1
00406c04cmp [rbx+8], -10319
00406c0aje 0x406c18
00406c0cmov rcx, rbx
00406c0fcall fn_406b00
00406c14test al, al
00406c16je 0x406c82
00406c18
00406c18loc_406c18:
00406c18mov eax, [rbx+16]
00406c1bcmp eax, [rbx+20]
00406c1ejb 0x406c5a
00406c20mov rcx, rbx
00406c23call [rbx+40]
00406c26test eax, eax
00406c28je 0x406c33
00406c2amov ecx, eax
00406c2ccall fn_405a70
00406c31jmp 0x406c82
00406c33
00406c33loc_406c33:
00406c33mov eax, [rbx+16]
00406c36cmp eax, [rbx+20]
00406c39jb 0x406c5a
00406c3bmovzx rcx, [rbx+10]
00406c40test cx, 1
00406c45je 0x406c82
00406c47mov rcx, [rbx+24]
00406c4bmov eax, eax
00406c4dmov [rcx+rax], 26
00406c51lea rax, [rbx+20]
00406c55add [rax], 1
00406c58jmp 0x406c82
00406c5a
00406c5aloc_406c5a:
00406c5amov rax, [rbx+24]
00406c5emov ecx, [rbx+16]
00406c61movzx rdi, [rax+rcx]
00406c66movzx rax, [rbx+10]
00406c6btest ax, 1
00406c70je 0x406c78
00406c72cmp di, 26
00406c76je 0x406c82
00406c78
00406c78loc_406c78:
00406c78lea rax, [rbx+16]
00406c7cadd [rax], 2
00406c7fmov [rsi], 0
00406c82
00406c82loc_406c82:
00406c82mov eax, edi
00406c84add rsp, 32
00406c88pop rbx
00406c89pop rsi
00406c8apop rdi
00406c8bret
00406bf0
00406bf0fn_406bf0:
00406bf0push rdi
00406bf1push rsi
00406bf2push rbx
00406bf3sub rsp, 32
00406bf7mov rbx, rcx
00406bfamov rsi, rdx
00406bfdmov di, 26
00406c01mov [rsi], 1
00406c04cmp [rbx+8], -10319
00406c0aje 0x406c18
00406c0cmov rcx, rbx
00406c0fcall fn_406b00
00406c14test al, al
00406c16je 0x406c82
00406c18
00406c18loc_406c18:
00406c18mov eax, [rbx+16]
00406c1bcmp eax, [rbx+20]
00406c1ejb 0x406c5a
00406c20mov rcx, rbx
00406c23call [rbx+40]
00406c26test eax, eax
00406c28je 0x406c33
00406c2amov ecx, eax
00406c2ccall fn_405a70
00406c31jmp 0x406c82
00406c33
00406c33loc_406c33:
00406c33mov eax, [rbx+16]
00406c36cmp eax, [rbx+20]
00406c39jb 0x406c5a
00406c3bmovzx rcx, [rbx+10]
00406c40test cx, 1
00406c45je 0x406c82
00406c47mov rcx, [rbx+24]
00406c4bmov eax, eax
00406c4dmov [rcx+rax], 26
00406c51lea rax, [rbx+20]
00406c55add [rax], 1
00406c58jmp 0x406c82
00406c5a
00406c5aloc_406c5a:
00406c5amov rax, [rbx+24]
00406c5emov ecx, [rbx+16]
00406c61movzx rdi, [rax+rcx]
00406c66movzx rax, [rbx+10]
00406c6btest ax, 1
00406c70je 0x406c78
00406c72cmp di, 26
00406c76je 0x406c82
00406c78
00406c78loc_406c78:
00406c78lea rax, [rbx+16]
00406c7cadd [rax], 2
00406c7fmov [rsi], 0
00406c82
00406c82loc_406c82:
00406c82mov eax, edi
00406c84add rsp, 32
00406c88pop rbx
00406c89pop rsi
00406c8apop rdi
00406c8bret
00406bf0
00406c8c
00406c8c // align 0x10
00406c8c // align 0x10
00406c90
00406c90fn_406c90:
00406c90push rbp
00406c91push rbx
00406c92sub rsp, 120
00406c96mov rbp, rsp
00406c99mov [rbp+56], rcx
00406c9dmov [rbp+64], rdx
00406ca1mov [rbp+76], r8w
00406ca6mov [rbp+96], 0
00406caenop
00406cafmov rax, [rbp+64]
00406cb3mov [rax], 0
00406cb6mov rax, [rbp+56]
00406cbamovzx rax, [rax+746]
00406cc2test al, al
00406cc4jge 0x406d2f
00406cc6mov rcx, [rbp+56]
00406ccacmp [rcx+747], 0
00406cd1je 0x406ce0
00406cd3mov rax, [rbp+56]
00406cd7mov [rax+746], 0
00406cdejmp 0x406d2f
00406ce0
00406ce0loc_406ce0:
00406ce0lea rcx, [rbp+89]
00406ce4mov edx, 6
00406ce9mov r8, [rbp+56]
00406cedlea r8, [r8+748]
00406cf4movsx r9, al
00406cf8neg r9l
00406cfbmovzx rax, [rbp+76]
00406d00movzx eax, ax
00406d03mov [rsp+32], eax
00406d07call fn_40bf50
00406d0cmov ebx, eax
00406d0emov rax, [rbp+56]
00406d12mov [rax+746], bl
00406d18lea rcx, [rbp+89]
00406d1cmov rax, [rbp+56]
00406d20lea rdx, [rax+748]
00406d27movsxd r8, ebx
00406d2acall fn_405ac0
00406d2f
00406d2floc_406d2f:
00406d2fmov rax, [rbp+56]
00406d33cmp [rax+746], 0
00406d3ajle 0x406d59
00406d3cmov rcx, [rbp+56]
00406d40movzx rax, [rcx+747]
00406d48movzx rax, [rcx+rax+748]
00406d51mov [rbp+79], al
00406d54jmp 0x406e72
00406d59
00406d59loc_406d59:
00406d59movzx rax, [rbp+76]
00406d5emov rcx, [rbp+56]
00406d62cmp [rcx+744], ax
00406d69jne 0x406d98
00406d6bmov rcx, [rbp+56]
00406d6fmov rdx, [rbp+64]
00406d73call fn_406b50
00406d78mov [rbp+79], al
00406d7bmov rax, [rbp+64]
00406d7fcmp [rax], 0
00406d82jne 0x406e71
00406d88mov rax, [rbp+56]
00406d8clea rax, [rax+16]
00406d90sub [rax], 1
00406d93jmp 0x406e71
00406d98
00406d98loc_406d98:
00406d98mov ebx, 1
00406d9dmov rcx, [rbp+56]
00406da1mov rdx, [rbp+64]
00406da5call fn_406ef0
00406daamov [rbp+106], ax
00406daemov rax, [rbp+64]
00406db2cmp [rax], 0
00406db5jne 0x406e6c
00406dbbmovzx rax, [rbp+106]
00406dc0cmp ax, -10240
00406dc5jb 0x406dfb
00406dc7cmp ax, -9216
00406dccjae 0x406dfb
00406dceadd ebx, 1
00406dd1mov rcx, [rbp+56]
00406dd5call fn_407220
00406ddamov rcx, [rbp+56]
00406ddemov rdx, [rbp+64]
00406de2call fn_406ef0
00406de7mov [rbp+108], ax
00406debmov rax, [rbp+64]
00406defcmp [rax], 0
00406df2je 0x406dfb
00406df4mov al, 26
00406df6mov [rbp+79], al
00406df9jmp 0x406e72
00406dfb
00406dfbloc_406dfb:
00406dfbmov rcx, [rbp+56]
00406dffcall fn_407220
00406e04lea rcx, [rbp+96]
00406e08lea rdx, [rbp+106]
00406e0cmov r8l, ebx
00406e0fmovzx r9, [rbp+76]
00406e14call fn_40c2b0
00406e19mov rcx, [rbp+96]
00406e1dcall fn_40c570
00406e22mov ebx, eax
00406e24test ebx, ebx
00406e26jne 0x406e2f
00406e28xor eax, eax
00406e2amov [rbp+79], al
00406e2djmp 0x406e71
00406e2f
00406e2floc_406e2f:
00406e2flea rcx, [rbp+96]
00406e33call fn_40c690
00406e38mov rcx, rax
00406e3bmov rax, [rbp+56]
00406e3flea rdx, [rax+748]
00406e46movsxd r8, ebx
00406e49call fn_405ac0
00406e4emov rax, [rbp+56]
00406e52mov [rax+747], 0
00406e59mov [rax+746], bl
00406e5fmov rax, [rbp+96]
00406e63movzx rax, [rax]
00406e67mov [rbp+79], al
00406e6ajmp 0x406e71
00406e6c
00406e6cloc_406e6c:
00406e6cmov al, 26
00406e6emov [rbp+79], al
00406e71
00406e71loc_406e71:
00406e71nop
00406e72
00406e72loc_406e72:
00406e72lea rcx, [rbp+96]
00406e76call fn_40bd40
00406e7bmovzx rax, [rbp+79]
00406e80lea rsp, [rbp+120]
00406e84pop rbx
00406e85pop rbp
00406e86ret
00406c90
00406c90fn_406c90:
00406c90push rbp
00406c91push rbx
00406c92sub rsp, 120
00406c96mov rbp, rsp
00406c99mov [rbp+56], rcx
00406c9dmov [rbp+64], rdx
00406ca1mov [rbp+76], r8w
00406ca6mov [rbp+96], 0
00406caenop
00406cafmov rax, [rbp+64]
00406cb3mov [rax], 0
00406cb6mov rax, [rbp+56]
00406cbamovzx rax, [rax+746]
00406cc2test al, al
00406cc4jge 0x406d2f
00406cc6mov rcx, [rbp+56]
00406ccacmp [rcx+747], 0
00406cd1je 0x406ce0
00406cd3mov rax, [rbp+56]
00406cd7mov [rax+746], 0
00406cdejmp 0x406d2f
00406ce0
00406ce0loc_406ce0:
00406ce0lea rcx, [rbp+89]
00406ce4mov edx, 6
00406ce9mov r8, [rbp+56]
00406cedlea r8, [r8+748]
00406cf4movsx r9, al
00406cf8neg r9l
00406cfbmovzx rax, [rbp+76]
00406d00movzx eax, ax
00406d03mov [rsp+32], eax
00406d07call fn_40bf50
00406d0cmov ebx, eax
00406d0emov rax, [rbp+56]
00406d12mov [rax+746], bl
00406d18lea rcx, [rbp+89]
00406d1cmov rax, [rbp+56]
00406d20lea rdx, [rax+748]
00406d27movsxd r8, ebx
00406d2acall fn_405ac0
00406d2f
00406d2floc_406d2f:
00406d2fmov rax, [rbp+56]
00406d33cmp [rax+746], 0
00406d3ajle 0x406d59
00406d3cmov rcx, [rbp+56]
00406d40movzx rax, [rcx+747]
00406d48movzx rax, [rcx+rax+748]
00406d51mov [rbp+79], al
00406d54jmp 0x406e72
00406d59
00406d59loc_406d59:
00406d59movzx rax, [rbp+76]
00406d5emov rcx, [rbp+56]
00406d62cmp [rcx+744], ax
00406d69jne 0x406d98
00406d6bmov rcx, [rbp+56]
00406d6fmov rdx, [rbp+64]
00406d73call fn_406b50
00406d78mov [rbp+79], al
00406d7bmov rax, [rbp+64]
00406d7fcmp [rax], 0
00406d82jne 0x406e71
00406d88mov rax, [rbp+56]
00406d8clea rax, [rax+16]
00406d90sub [rax], 1
00406d93jmp 0x406e71
00406d98
00406d98loc_406d98:
00406d98mov ebx, 1
00406d9dmov rcx, [rbp+56]
00406da1mov rdx, [rbp+64]
00406da5call fn_406ef0
00406daamov [rbp+106], ax
00406daemov rax, [rbp+64]
00406db2cmp [rax], 0
00406db5jne 0x406e6c
00406dbbmovzx rax, [rbp+106]
00406dc0cmp ax, -10240
00406dc5jb 0x406dfb
00406dc7cmp ax, -9216
00406dccjae 0x406dfb
00406dceadd ebx, 1
00406dd1mov rcx, [rbp+56]
00406dd5call fn_407220
00406ddamov rcx, [rbp+56]
00406ddemov rdx, [rbp+64]
00406de2call fn_406ef0
00406de7mov [rbp+108], ax
00406debmov rax, [rbp+64]
00406defcmp [rax], 0
00406df2je 0x406dfb
00406df4mov al, 26
00406df6mov [rbp+79], al
00406df9jmp 0x406e72
00406dfb
00406dfbloc_406dfb:
00406dfbmov rcx, [rbp+56]
00406dffcall fn_407220
00406e04lea rcx, [rbp+96]
00406e08lea rdx, [rbp+106]
00406e0cmov r8l, ebx
00406e0fmovzx r9, [rbp+76]
00406e14call fn_40c2b0
00406e19mov rcx, [rbp+96]
00406e1dcall fn_40c570
00406e22mov ebx, eax
00406e24test ebx, ebx
00406e26jne 0x406e2f
00406e28xor eax, eax
00406e2amov [rbp+79], al
00406e2djmp 0x406e71
00406e2f
00406e2floc_406e2f:
00406e2flea rcx, [rbp+96]
00406e33call fn_40c690
00406e38mov rcx, rax
00406e3bmov rax, [rbp+56]
00406e3flea rdx, [rax+748]
00406e46movsxd r8, ebx
00406e49call fn_405ac0
00406e4emov rax, [rbp+56]
00406e52mov [rax+747], 0
00406e59mov [rax+746], bl
00406e5fmov rax, [rbp+96]
00406e63movzx rax, [rax]
00406e67mov [rbp+79], al
00406e6ajmp 0x406e71
00406e6c
00406e6cloc_406e6c:
00406e6cmov al, 26
00406e6emov [rbp+79], al
00406e71
00406e71loc_406e71:
00406e71nop
00406e72
00406e72loc_406e72:
00406e72lea rcx, [rbp+96]
00406e76call fn_40bd40
00406e7bmovzx rax, [rbp+79]
00406e80lea rsp, [rbp+120]
00406e84pop rbx
00406e85pop rbp
00406e86ret
00406c90
00406e87
00406e87 90 48 8d 04 05 00 00 00 00 .H.......
00406e87 90 48 8d 04 05 00 00 00 00 .H.......
00406e90
00406e90fn_406e90:
00406e90push rbp
00406e91sub rsp, 32
00406e95mov rbp, rsp
00406e98lea rcx, [rdx+96]
00406e9ccall fn_40bd40
00406ea1lea rsp, [rbp+32]
00406ea5pop rbp
00406ea6ret
00406e90
00406e90fn_406e90:
00406e90push rbp
00406e91sub rsp, 32
00406e95mov rbp, rsp
00406e98lea rcx, [rdx+96]
00406e9ccall fn_40bd40
00406ea1lea rsp, [rbp+32]
00406ea5pop rbp
00406ea6ret
00406e90
00406ea7
00406ea7 // align 0x10
00406ea7 // align 0x10
00406eb0
00406eb0fn_406eb0:
00406eb0cmp [rcx+746], 0
00406eb7jle 0x406edc
00406eb9lea rax, [rcx+747]
00406ec0add [rax], 1
00406ec3movzx rax, [rcx+746]
00406ecbcmp al, [rcx+747]
00406ed1jne 0x406ee3
00406ed3mov [rcx+746], 0
00406edajmp 0x406ee3
00406edc
00406edcloc_406edc:
00406edclea rax, [rcx+16]
00406ee0add [rax], 1
00406ee3
00406ee3loc_406ee3:
00406ee3ret
00406eb0
00406eb0fn_406eb0:
00406eb0cmp [rcx+746], 0
00406eb7jle 0x406edc
00406eb9lea rax, [rcx+747]
00406ec0add [rax], 1
00406ec3movzx rax, [rcx+746]
00406ecbcmp al, [rcx+747]
00406ed1jne 0x406ee3
00406ed3mov [rcx+746], 0
00406edajmp 0x406ee3
00406edc
00406edcloc_406edc:
00406edclea rax, [rcx+16]
00406ee0add [rax], 1
00406ee3
00406ee3loc_406ee3:
00406ee3ret
00406eb0
00406ee4
00406ee4 // align 0x10
00406ee4 // align 0x10
00406ef0
00406ef0fn_406ef0:
00406ef0push rbp
00406ef1push rdi
00406ef2push rsi
00406ef3push rbx
00406ef4sub rsp, 120
00406ef8mov rbp, rsp
00406efbmov [rbp+56], rcx
00406effmov [rbp+64], rdx
00406f03mov [rbp+96], 0
00406f0bmov [rbp+88], 0
00406f13nop
00406f14mov rax, [rbp+64]
00406f18mov [rax], 0
00406f1bmov rax, [rbp+56]
00406f1fmovzx rax, [rax+746]
00406f27test al, al
00406f29jle 0x406f9a
00406f2bmov rcx, [rbp+56]
00406f2fcmp [rcx+747], 0
00406f36je 0x406f45
00406f38mov rax, [rbp+56]
00406f3cmov [rax+746], 0
00406f43jmp 0x406f9a
00406f45
00406f45loc_406f45:
00406f45lea rcx, [rbp+108]
00406f49mov edx, 2
00406f4emov r8, [rbp+56]
00406f52lea r8, [r8+748]
00406f59movsx r9, al
00406f5dmov eax, [rip+0x5eab5]
00406f63mov [rsp+32], eax
00406f67call fn_40bfa0
00406f6cmov edi, eax
00406f6emov eax, edi
00406f71neg al
00406f73mov rcx, [rbp+56]
00406f77mov [rcx+746], al
00406f7dlea rcx, [rbp+108]
00406f81mov rax, [rbp+56]
00406f85lea rdx, [rax+748]
00406f8cmov r8l, edi
00406f8fadd r8l, r8l
00406f92movsxd r8, r8l
00406f95call fn_405ac0
00406f9a
00406f9aloc_406f9a:
00406f9amov rax, [rbp+56]
00406f9ecmp [rax+746], 0
00406fa5jge 0x406fc5
00406fa7mov rcx, [rbp+56]
00406fabmovzx rax, [rcx+747]
00406fb3movzx rax, [rcx+2*rax+748]
00406fbcmov [rbp+78], ax
00406fc0jmp 0x4071cf
00406fc5
00406fc5loc_406fc5:
00406fc5mov rax, [rbp+56]
00406fc9cmp [rax+744], 1200
00406fd2jne 0x407002
00406fd4mov rcx, [rbp+56]
00406fd8mov rdx, [rbp+64]
00406fdccall fn_406bf0
00406fe1mov [rbp+78], ax
00406fe5mov rax, [rbp+64]
00406fe9cmp [rax], 0
00406fecjne 0x4071ce
00406ff2mov rax, [rbp+56]
00406ff6lea rax, [rax+16]
00406ffasub [rax], 2
00406ffdjmp 0x4071ce
00407002
00407002loc_407002:
00407002mov rcx, [rbp+56]
00407006mov rdx, [rbp+64]
0040700acall fn_406b50
0040700fmov ebx, eax
00407011mov rax, [rbp+64]
00407015cmp [rax], 0
00407018je 0x407027
0040701amov ax, 26
0040701emov [rbp+78], ax
00407022jmp 0x4071cf
00407027
00407027loc_407027:
00407027mov rax, [rbp+56]
0040702bcmp [rax+744], -535
00407034jne 0x4070d5
0040703amov eax, ebx
0040703csub al, -64
0040703fcmp al, 31
00407042ja 0x40705f
00407044mov edx, 1
00407049movzx rcx, al
0040704dand ecx, 127
00407050shl edx, cl
00407052mov eax, [rip+448]
00407058test edx, eax
0040705asetne al
0040705djmp 0x407061
0040705f
0040705floc_40705f:
0040705fxor eax, eax
00407061
00407061loc_407061:
00407061test al, al
00407063je 0x40706f
00407065mov edi, 2
0040706ajmp 0x4070f2
0040706f
0040706floc_40706f:
0040706fmov eax, ebx
00407071sub al, -32
00407074cmp al, 15
00407077ja 0x407097
00407079mov dx, 1
0040707dmovzx cx, al
00407081and cx, 127
00407085shl edx, cl
00407087movzx rax, [rip+397]
0040708ftest dx, ax
00407092setne al
00407095jmp 0x407099
00407097
00407097loc_407097:
00407097xor eax, eax
00407099
00407099loc_407099:
00407099test al, al
0040709bje 0x4070a4
0040709dmov edi, 3
004070a2jmp 0x4070f2
004070a4
004070a4loc_4070a4:
004070a4mov ecx, ebx
004070a6sub cl, -16
004070a9cmp cl, 7
004070acja 0x4070c1
004070aemov al, 1
004070b0shl eax, cl
004070b2movzx rcx, [rip+356]
004070batest al, cl
004070bcsetne al
004070bfjmp 0x4070c3
004070c1
004070c1loc_4070c1:
004070c1xor eax, eax
004070c3
004070c3loc_4070c3:
004070c3test al, al
004070c5je 0x4070ce
004070c7mov edi, 4
004070ccjmp 0x4070f2
004070ce
004070celoc_4070ce:
004070cemov edi, 1
004070d3jmp 0x4070f2
004070d5
004070d5loc_4070d5:
004070d5mov ecx, [rip+0x5e93d]
004070dbmov edx, ebx
004070ddcall IsDBCSLeadByteEx
004070e2test eax, eax
004070e4je 0x4070ed
004070e6mov edi, 2
004070ebjmp 0x4070f2
004070ed
004070edloc_4070ed:
004070edmov edi, 1
004070f2
004070f2loc_4070f2:
004070f2lea rcx, [rbp+96]
004070f6mov edx, edi
004070f8xor r8, r8
004070fbcall fn_40cf30
00407100lea rcx, [rbp+96]
00407104mov rax, [rbp+56]
00407108movzx rdx, [rax+744]
00407110xor r8, r8
00407113call fn_40dfb0
00407118lea rcx, [rbp+96]
0040711ccall fn_40c690
00407121mov [rax], bl
00407123mov esi, 2
00407128sub edi, 1
0040712btest edi, edi
0040712djle 0x407158
0040712f
0040712floc_40712f:
0040712fmov rcx, [rbp+56]
00407133mov rdx, [rbp+64]
00407137call fn_406b50
0040713cmov ebx, eax
0040713elea rcx, [rbp+96]
00407142call fn_40c690
00407147movsxd rcx, esi
0040714amov [rax+rcx-1], bl
0040714eadd esi, 1
00407151sub edi, 1
00407154test edi, edi
00407156jg 0x40712f
00407158
00407158loc_407158:
00407158nop
00407159lea rcx, [rbp+88]
0040715dmov rdx, [rbp+96]
00407161call fn_40d7f0
00407166mov rcx, [rbp+88]
0040716acall fn_40c560
0040716fmov edi, eax
00407171test edi, edi
00407173jle 0x4071c8
00407175lea rcx, [rbp+88]
00407179call fn_40c680
0040717emov rcx, rax
00407181mov rax, [rbp+56]
00407185lea rdx, [rax+748]
0040718cmov r8l, edi
0040718fadd r8l, r8l
00407192movsxd r8, r8l
00407195call fn_405ac0
0040719amov rax, [rbp+56]
0040719emov [rax+747], 0
004071a5mov rcx, [rbp+88]
004071a9call fn_40c560
004071aeneg al
004071b0mov rcx, [rbp+56]
004071b4mov [rcx+746], al
004071bamov rax, [rbp+88]
004071bemovzx rax, [rax]
004071c2mov [rbp+78], ax
004071c6jmp 0x4071ce
004071c8
004071c8loc_4071c8:
004071c8xor eax, eax
004071camov [rbp+78], ax
004071ce
004071celoc_4071ce:
004071cenop
004071cf
004071cfloc_4071cf:
004071cflea rcx, [rbp+88]
004071d3call fn_40bcf0
004071d8lea rcx, [rbp+96]
004071dccall fn_40bd40
004071e1movzx rax, [rbp+78]
004071e6lea rsp, [rbp+120]
004071eapop rbx
004071ebpop rsi
004071ecpop rdi
004071edpop rbp
004071eeret
00406ef0
00406ef0fn_406ef0:
00406ef0push rbp
00406ef1push rdi
00406ef2push rsi
00406ef3push rbx
00406ef4sub rsp, 120
00406ef8mov rbp, rsp
00406efbmov [rbp+56], rcx
00406effmov [rbp+64], rdx
00406f03mov [rbp+96], 0
00406f0bmov [rbp+88], 0
00406f13nop
00406f14mov rax, [rbp+64]
00406f18mov [rax], 0
00406f1bmov rax, [rbp+56]
00406f1fmovzx rax, [rax+746]
00406f27test al, al
00406f29jle 0x406f9a
00406f2bmov rcx, [rbp+56]
00406f2fcmp [rcx+747], 0
00406f36je 0x406f45
00406f38mov rax, [rbp+56]
00406f3cmov [rax+746], 0
00406f43jmp 0x406f9a
00406f45
00406f45loc_406f45:
00406f45lea rcx, [rbp+108]
00406f49mov edx, 2
00406f4emov r8, [rbp+56]
00406f52lea r8, [r8+748]
00406f59movsx r9, al
00406f5dmov eax, [rip+0x5eab5]
00406f63mov [rsp+32], eax
00406f67call fn_40bfa0
00406f6cmov edi, eax
00406f6emov eax, edi
00406f71neg al
00406f73mov rcx, [rbp+56]
00406f77mov [rcx+746], al
00406f7dlea rcx, [rbp+108]
00406f81mov rax, [rbp+56]
00406f85lea rdx, [rax+748]
00406f8cmov r8l, edi
00406f8fadd r8l, r8l
00406f92movsxd r8, r8l
00406f95call fn_405ac0
00406f9a
00406f9aloc_406f9a:
00406f9amov rax, [rbp+56]
00406f9ecmp [rax+746], 0
00406fa5jge 0x406fc5
00406fa7mov rcx, [rbp+56]
00406fabmovzx rax, [rcx+747]
00406fb3movzx rax, [rcx+2*rax+748]
00406fbcmov [rbp+78], ax
00406fc0jmp 0x4071cf
00406fc5
00406fc5loc_406fc5:
00406fc5mov rax, [rbp+56]
00406fc9cmp [rax+744], 1200
00406fd2jne 0x407002
00406fd4mov rcx, [rbp+56]
00406fd8mov rdx, [rbp+64]
00406fdccall fn_406bf0
00406fe1mov [rbp+78], ax
00406fe5mov rax, [rbp+64]
00406fe9cmp [rax], 0
00406fecjne 0x4071ce
00406ff2mov rax, [rbp+56]
00406ff6lea rax, [rax+16]
00406ffasub [rax], 2
00406ffdjmp 0x4071ce
00407002
00407002loc_407002:
00407002mov rcx, [rbp+56]
00407006mov rdx, [rbp+64]
0040700acall fn_406b50
0040700fmov ebx, eax
00407011mov rax, [rbp+64]
00407015cmp [rax], 0
00407018je 0x407027
0040701amov ax, 26
0040701emov [rbp+78], ax
00407022jmp 0x4071cf
00407027
00407027loc_407027:
00407027mov rax, [rbp+56]
0040702bcmp [rax+744], -535
00407034jne 0x4070d5
0040703amov eax, ebx
0040703csub al, -64
0040703fcmp al, 31
00407042ja 0x40705f
00407044mov edx, 1
00407049movzx rcx, al
0040704dand ecx, 127
00407050shl edx, cl
00407052mov eax, [rip+448]
00407058test edx, eax
0040705asetne al
0040705djmp 0x407061
0040705f
0040705floc_40705f:
0040705fxor eax, eax
00407061
00407061loc_407061:
00407061test al, al
00407063je 0x40706f
00407065mov edi, 2
0040706ajmp 0x4070f2
0040706f
0040706floc_40706f:
0040706fmov eax, ebx
00407071sub al, -32
00407074cmp al, 15
00407077ja 0x407097
00407079mov dx, 1
0040707dmovzx cx, al
00407081and cx, 127
00407085shl edx, cl
00407087movzx rax, [rip+397]
0040708ftest dx, ax
00407092setne al
00407095jmp 0x407099
00407097
00407097loc_407097:
00407097xor eax, eax
00407099
00407099loc_407099:
00407099test al, al
0040709bje 0x4070a4
0040709dmov edi, 3
004070a2jmp 0x4070f2
004070a4
004070a4loc_4070a4:
004070a4mov ecx, ebx
004070a6sub cl, -16
004070a9cmp cl, 7
004070acja 0x4070c1
004070aemov al, 1
004070b0shl eax, cl
004070b2movzx rcx, [rip+356]
004070batest al, cl
004070bcsetne al
004070bfjmp 0x4070c3
004070c1
004070c1loc_4070c1:
004070c1xor eax, eax
004070c3
004070c3loc_4070c3:
004070c3test al, al
004070c5je 0x4070ce
004070c7mov edi, 4
004070ccjmp 0x4070f2
004070ce
004070celoc_4070ce:
004070cemov edi, 1
004070d3jmp 0x4070f2
004070d5
004070d5loc_4070d5:
004070d5mov ecx, [rip+0x5e93d]
004070dbmov edx, ebx
004070ddcall IsDBCSLeadByteEx
004070e2test eax, eax
004070e4je 0x4070ed
004070e6mov edi, 2
004070ebjmp 0x4070f2
004070ed
004070edloc_4070ed:
004070edmov edi, 1
004070f2
004070f2loc_4070f2:
004070f2lea rcx, [rbp+96]
004070f6mov edx, edi
004070f8xor r8, r8
004070fbcall fn_40cf30
00407100lea rcx, [rbp+96]
00407104mov rax, [rbp+56]
00407108movzx rdx, [rax+744]
00407110xor r8, r8
00407113call fn_40dfb0
00407118lea rcx, [rbp+96]
0040711ccall fn_40c690
00407121mov [rax], bl
00407123mov esi, 2
00407128sub edi, 1
0040712btest edi, edi
0040712djle 0x407158
0040712f
0040712floc_40712f:
0040712fmov rcx, [rbp+56]
00407133mov rdx, [rbp+64]
00407137call fn_406b50
0040713cmov ebx, eax
0040713elea rcx, [rbp+96]
00407142call fn_40c690
00407147movsxd rcx, esi
0040714amov [rax+rcx-1], bl
0040714eadd esi, 1
00407151sub edi, 1
00407154test edi, edi
00407156jg 0x40712f
00407158
00407158loc_407158:
00407158nop
00407159lea rcx, [rbp+88]
0040715dmov rdx, [rbp+96]
00407161call fn_40d7f0
00407166mov rcx, [rbp+88]
0040716acall fn_40c560
0040716fmov edi, eax
00407171test edi, edi
00407173jle 0x4071c8
00407175lea rcx, [rbp+88]
00407179call fn_40c680
0040717emov rcx, rax
00407181mov rax, [rbp+56]
00407185lea rdx, [rax+748]
0040718cmov r8l, edi
0040718fadd r8l, r8l
00407192movsxd r8, r8l
00407195call fn_405ac0
0040719amov rax, [rbp+56]
0040719emov [rax+747], 0
004071a5mov rcx, [rbp+88]
004071a9call fn_40c560
004071aeneg al
004071b0mov rcx, [rbp+56]
004071b4mov [rcx+746], al
004071bamov rax, [rbp+88]
004071bemovzx rax, [rax]
004071c2mov [rbp+78], ax
004071c6jmp 0x4071ce
004071c8
004071c8loc_4071c8:
004071c8xor eax, eax
004071camov [rbp+78], ax
004071ce
004071celoc_4071ce:
004071cenop
004071cf
004071cfloc_4071cf:
004071cflea rcx, [rbp+88]
004071d3call fn_40bcf0
004071d8lea rcx, [rbp+96]
004071dccall fn_40bd40
004071e1movzx rax, [rbp+78]
004071e6lea rsp, [rbp+120]
004071eapop rbx
004071ebpop rsi
004071ecpop rdi
004071edpop rbp
004071eeret
00406ef0
004071ef
004071ef // align 0x10
004071ef // align 0x10
004071f0
004071f0fn_4071f0:
004071f0push rbp
004071f1push rbx
004071f2sub rsp, 40
004071f6mov rbp, rsp
004071f9mov rbx, rdx
004071fclea rcx, [rbx+88]
00407200call fn_40bcf0
00407205lea rcx, [rbx+96]
00407209call fn_40bd40
0040720elea rsp, [rbp+40]
00407212pop rbx
00407213pop rbp
00407214ret
004071f0
004071f0fn_4071f0:
004071f0push rbp
004071f1push rbx
004071f2sub rsp, 40
004071f6mov rbp, rsp
004071f9mov rbx, rdx
004071fclea rcx, [rbx+88]
00407200call fn_40bcf0
00407205lea rcx, [rbx+96]
00407209call fn_40bd40
0040720elea rsp, [rbp+40]
00407212pop rbx
00407213pop rbp
00407214ret
004071f0
00407215
00407215 00 00 00 fc ff ff ff ff ff 1f cc ...........
00407215 00 00 00 fc ff ff ff ff ff 1f cc ...........
00407220
00407220fn_407220:
00407220cmp [rcx+746], 0
00407227jge 0x407252
00407229lea rax, [rcx+747]
00407230add [rax], 1
00407233movsx rax, [rcx+746]
0040723bneg eax
0040723dmovzx rdx, [rcx+747]
00407245cmp eax, edx
00407247jne 0x407259
00407249mov [rcx+746], 0
00407250jmp 0x407259
00407252
00407252loc_407252:
00407252lea rax, [rcx+16]
00407256add [rax], 2
00407259
00407259loc_407259:
00407259ret
00407220
00407220fn_407220:
00407220cmp [rcx+746], 0
00407227jge 0x407252
00407229lea rax, [rcx+747]
00407230add [rax], 1
00407233movsx rax, [rcx+746]
0040723bneg eax
0040723dmovzx rdx, [rcx+747]
00407245cmp eax, edx
00407247jne 0x407259
00407249mov [rcx+746], 0
00407250jmp 0x407259
00407252
00407252loc_407252:
00407252lea rax, [rcx+16]
00407256add [rax], 2
00407259
00407259loc_407259:
00407259ret
00407220
0040725a
0040725a // align 0x10
0040725a // align 0x10
00407260
00407260fn_407260:
00407260mov [rcx+748], 13
00407267mov [rcx+749], 10
0040726emov [rcx+746], 2
00407275mov [rcx+747], 0
0040727cret
00407260
00407260fn_407260:
00407260mov [rcx+748], 13
00407267mov [rcx+749], 10
0040726emov [rcx+746], 2
00407275mov [rcx+747], 0
0040727cret
00407260
0040727d
0040727d // align 0x10
0040727d // align 0x10
00407280
00407280fn_407280:
00407280push rbp
00407281push r14
00407283push r13
00407285push rdi
00407286push rsi
00407287push rbx
00407288sub rsp, 56
0040728cmov rbp, rsp
0040728fmov rbx, rcx
00407292mov rsi, rdx
00407295mov edi, r8l
00407298mov r13, r9
0040729bmov r14, rbx
0040729emov [r13], 0
004072a6cmp [rbx+8], -10319
004072acje 0x4072be
004072aemov rcx, rbx
004072b1call fn_406b00
004072b6test al, al
004072b8je 0x407355
004072be
004072beloc_4072be:
004072betest edi, edi
004072c0jle 0x407355
004072c6cmp [rbp+144], 0
004072cejne 0x4072df
004072d0movzx rax, [rip+0x5e740]
004072d8mov [rbp+144], ax
004072df
004072dfloc_4072df:
004072dftest edi, edi
004072e1jle 0x407354
004072e3
004072e3loc_4072e3:
004072e3mov rcx, rbx
004072e6lea rdx, [rbp+47]
004072eamovzx r8, [rbp+144]
004072f2call fn_406c90
004072f7cmp [rbp+47], 0
004072fbjne 0x407355
004072fdcmp al, 10
00407300je 0x407355
00407302cmp al, 13
00407305jne 0x40733a
00407307mov rcx, rbx
0040730acall fn_406eb0
0040730fmov rcx, rbx
00407312lea rdx, [rbp+47]
00407316movzx r8, [rbp+144]
0040731ecall fn_406c90
00407323cmp al, 10
00407326jne 0x407350
00407328mov rcx, rbx
0040732bcall fn_406eb0
00407330mov rcx, rbx
00407333call fn_407260
00407338jmp 0x407355
0040733a
0040733aloc_40733a:
0040733amov [rsi], al
0040733cmov rcx, rbx
0040733fcall fn_406eb0
00407344add rsi, 1
00407348sub edi, 1
0040734badd [r13], 1
00407350
00407350loc_407350:
00407350test edi, edi
00407352jg 0x4072e3
00407354
00407354loc_407354:
00407354nop
00407355
00407355loc_407355:
00407355mov rax, r14
00407358lea rsp, [rbp+56]
0040735cpop rbx
0040735dpop rsi
0040735epop rdi
0040735fpop r13
00407361pop r14
00407363pop rbp
00407364ret
00407280
00407280fn_407280:
00407280push rbp
00407281push r14
00407283push r13
00407285push rdi
00407286push rsi
00407287push rbx
00407288sub rsp, 56
0040728cmov rbp, rsp
0040728fmov rbx, rcx
00407292mov rsi, rdx
00407295mov edi, r8l
00407298mov r13, r9
0040729bmov r14, rbx
0040729emov [r13], 0
004072a6cmp [rbx+8], -10319
004072acje 0x4072be
004072aemov rcx, rbx
004072b1call fn_406b00
004072b6test al, al
004072b8je 0x407355
004072be
004072beloc_4072be:
004072betest edi, edi
004072c0jle 0x407355
004072c6cmp [rbp+144], 0
004072cejne 0x4072df
004072d0movzx rax, [rip+0x5e740]
004072d8mov [rbp+144], ax
004072df
004072dfloc_4072df:
004072dftest edi, edi
004072e1jle 0x407354
004072e3
004072e3loc_4072e3:
004072e3mov rcx, rbx
004072e6lea rdx, [rbp+47]
004072eamovzx r8, [rbp+144]
004072f2call fn_406c90
004072f7cmp [rbp+47], 0
004072fbjne 0x407355
004072fdcmp al, 10
00407300je 0x407355
00407302cmp al, 13
00407305jne 0x40733a
00407307mov rcx, rbx
0040730acall fn_406eb0
0040730fmov rcx, rbx
00407312lea rdx, [rbp+47]
00407316movzx r8, [rbp+144]
0040731ecall fn_406c90
00407323cmp al, 10
00407326jne 0x407350
00407328mov rcx, rbx
0040732bcall fn_406eb0
00407330mov rcx, rbx
00407333call fn_407260
00407338jmp 0x407355
0040733a
0040733aloc_40733a:
0040733amov [rsi], al
0040733cmov rcx, rbx
0040733fcall fn_406eb0
00407344add rsi, 1
00407348sub edi, 1
0040734badd [r13], 1
00407350
00407350loc_407350:
00407350test edi, edi
00407352jg 0x4072e3
00407354
00407354loc_407354:
00407354nop
00407355
00407355loc_407355:
00407355mov rax, r14
00407358lea rsp, [rbp+56]
0040735cpop rbx
0040735dpop rsi
0040735epop rdi
0040735fpop r13
00407361pop r14
00407363pop rbp
00407364ret
00407280
00407365
00407365 // align 0x10
00407365 // align 0x10
00407370
00407370fn_407370:
00407370push rbp
00407371push r14
00407373push r13
00407375push rdi
00407376push rsi
00407377push rbx
00407378sub rsp, 72
0040737cmov rbp, rsp
0040737fmov rbx, rcx
00407382mov rsi, rdx
00407385mov edi, r8l
00407388mov r13, r9
0040738bcmp [rbx+746], 0
00407392je 0x4073ba
00407394mov rcx, rbx
00407397mov rdx, rsi
0040739amov r8l, edi
0040739dmov r9, r13
004073a0movzx rax, [rbx+744]
004073a8mov [rsp+32], ax
004073adcall fn_407280
004073b2mov r14, rax
004073b5jmp 0x407442
004073ba
004073baloc_4073ba:
004073bamov r14, rbx
004073bdmov [r13], 0
004073c5cmp [rbx+8], -10319
004073cbje 0x4073d9
004073cdmov rcx, rbx
004073d0call fn_406b00
004073d5test al, al
004073d7je 0x407442
004073d9
004073d9loc_4073d9:
004073d9test edi, edi
004073dbjle 0x407442
004073ddtest edi, edi
004073dfjle 0x407441
004073e1
004073e1loc_4073e1:
004073e1mov rcx, rbx
004073e4lea rdx, [rbp+63]
004073e8call fn_406b50
004073edcmp [rbp+63], 0
004073f1jne 0x407442
004073f3cmp al, 10
004073f6jne 0x407401
004073f8lea rax, [rbx+16]
004073fcsub [rax], 1
004073ffjmp 0x407442
00407401
00407401loc_407401:
00407401cmp al, 13
00407404jne 0x40742f
00407406mov rcx, rbx
00407409lea rdx, [rbp+63]
0040740dcall fn_406b50
00407412cmp al, 26
00407415je 0x407442
00407417cmp al, 10
0040741ajne 0x407426
0040741cmov rcx, rbx
0040741fcall fn_407260
00407424jmp 0x407442
00407426
00407426loc_407426:
00407426lea rax, [rbx+16]
0040742asub [rax], 1
0040742djmp 0x40743d
0040742f
0040742floc_40742f:
0040742fmov [rsi], al
00407431add rsi, 1
00407435sub edi, 1
00407438add [r13], 1
0040743d
0040743dloc_40743d:
0040743dtest edi, edi
0040743fjg 0x4073e1
00407441
00407441loc_407441:
00407441nop
00407442
00407442loc_407442:
00407442mov rax, r14
00407445lea rsp, [rbp+72]
00407449pop rbx
0040744apop rsi
0040744bpop rdi
0040744cpop r13
0040744epop r14
00407450pop rbp
00407451ret
00407370
00407370fn_407370:
00407370push rbp
00407371push r14
00407373push r13
00407375push rdi
00407376push rsi
00407377push rbx
00407378sub rsp, 72
0040737cmov rbp, rsp
0040737fmov rbx, rcx
00407382mov rsi, rdx
00407385mov edi, r8l
00407388mov r13, r9
0040738bcmp [rbx+746], 0
00407392je 0x4073ba
00407394mov rcx, rbx
00407397mov rdx, rsi
0040739amov r8l, edi
0040739dmov r9, r13
004073a0movzx rax, [rbx+744]
004073a8mov [rsp+32], ax
004073adcall fn_407280
004073b2mov r14, rax
004073b5jmp 0x407442
004073ba
004073baloc_4073ba:
004073bamov r14, rbx
004073bdmov [r13], 0
004073c5cmp [rbx+8], -10319
004073cbje 0x4073d9
004073cdmov rcx, rbx
004073d0call fn_406b00
004073d5test al, al
004073d7je 0x407442
004073d9
004073d9loc_4073d9:
004073d9test edi, edi
004073dbjle 0x407442
004073ddtest edi, edi
004073dfjle 0x407441
004073e1
004073e1loc_4073e1:
004073e1mov rcx, rbx
004073e4lea rdx, [rbp+63]
004073e8call fn_406b50
004073edcmp [rbp+63], 0
004073f1jne 0x407442
004073f3cmp al, 10
004073f6jne 0x407401
004073f8lea rax, [rbx+16]
004073fcsub [rax], 1
004073ffjmp 0x407442
00407401
00407401loc_407401:
00407401cmp al, 13
00407404jne 0x40742f
00407406mov rcx, rbx
00407409lea rdx, [rbp+63]
0040740dcall fn_406b50
00407412cmp al, 26
00407415je 0x407442
00407417cmp al, 10
0040741ajne 0x407426
0040741cmov rcx, rbx
0040741fcall fn_407260
00407424jmp 0x407442
00407426
00407426loc_407426:
00407426lea rax, [rbx+16]
0040742asub [rax], 1
0040742djmp 0x40743d
0040742f
0040742floc_40742f:
0040742fmov [rsi], al
00407431add rsi, 1
00407435sub edi, 1
00407438add [r13], 1
0040743d
0040743dloc_40743d:
0040743dtest edi, edi
0040743fjg 0x4073e1
00407441
00407441loc_407441:
00407441nop
00407442
00407442loc_407442:
00407442mov rax, r14
00407445lea rsp, [rbp+72]
00407449pop rbx
0040744apop rsi
0040744bpop rdi
0040744cpop r13
0040744epop r14
00407450pop rbp
00407451ret
00407370
00407452
00407452 // align 0x10
00407452 // align 0x10
00407460
00407460fn_407460:
00407460push rbp
00407461push r14
00407463push r13
00407465push rdi
00407466push rsi
00407467push rbx
00407468sub rsp, 72
0040746cmov rbp, rsp
0040746fmov rbx, rcx
00407472mov rsi, rdx
00407475mov edi, r8l
00407478mov r13, r9
0040747bcmp [rbx+746], 0
00407482je 0x4074aa
00407484mov rcx, rbx
00407487mov rdx, rsi
0040748amov r8l, edi
0040748dmov r9, r13
00407490movzx rax, [rbx+744]
00407498mov [rsp+32], ax
0040749dcall fn_407280
004074a2mov r14, rax
004074a5jmp 0x407531
004074aa
004074aaloc_4074aa:
004074aamov r14, rbx
004074admov [r13], 0
004074b5cmp [rbx+8], -10319
004074bbje 0x4074c9
004074bdmov rcx, rbx
004074c0call fn_406b00
004074c5test al, al
004074c7je 0x407531
004074c9
004074c9loc_4074c9:
004074c9test edi, edi
004074cbjle 0x407531
004074cdtest edi, edi
004074cfjle 0x407530
004074d1
004074d1loc_4074d1:
004074d1mov rcx, rbx
004074d4lea rdx, [rbp+63]
004074d8call fn_406bf0
004074ddcmp [rbp+63], 0
004074e1jne 0x407531
004074e3cmp ax, 10
004074e7jne 0x4074f2
004074e9lea rax, [rbx+16]
004074edsub [rax], 2
004074f0jmp 0x407531
004074f2
004074f2loc_4074f2:
004074f2cmp ax, 13
004074f6jne 0x40751d
004074f8mov rcx, rbx
004074fblea rdx, [rbp+63]
004074ffcall fn_406bf0
00407504cmp ax, 10
00407508jne 0x407514
0040750amov rcx, rbx
0040750dcall fn_407260
00407512jmp 0x407531
00407514
00407514loc_407514:
00407514lea rax, [rbx+16]
00407518sub [rax], 2
0040751bjmp 0x40752c
0040751d
0040751dloc_40751d:
0040751dmov [rsi], ax
00407520add rsi, 2
00407524sub edi, 1
00407527add [r13], 1
0040752c
0040752cloc_40752c:
0040752ctest edi, edi
0040752ejg 0x4074d1
00407530
00407530loc_407530:
00407530nop
00407531
00407531loc_407531:
00407531mov rax, r14
00407534lea rsp, [rbp+72]
00407538pop rbx
00407539pop rsi
0040753apop rdi
0040753bpop r13
0040753dpop r14
0040753fpop rbp
00407540ret
00407460
00407460fn_407460:
00407460push rbp
00407461push r14
00407463push r13
00407465push rdi
00407466push rsi
00407467push rbx
00407468sub rsp, 72
0040746cmov rbp, rsp
0040746fmov rbx, rcx
00407472mov rsi, rdx
00407475mov edi, r8l
00407478mov r13, r9
0040747bcmp [rbx+746], 0
00407482je 0x4074aa
00407484mov rcx, rbx
00407487mov rdx, rsi
0040748amov r8l, edi
0040748dmov r9, r13
00407490movzx rax, [rbx+744]
00407498mov [rsp+32], ax
0040749dcall fn_407280
004074a2mov r14, rax
004074a5jmp 0x407531
004074aa
004074aaloc_4074aa:
004074aamov r14, rbx
004074admov [r13], 0
004074b5cmp [rbx+8], -10319
004074bbje 0x4074c9
004074bdmov rcx, rbx
004074c0call fn_406b00
004074c5test al, al
004074c7je 0x407531
004074c9
004074c9loc_4074c9:
004074c9test edi, edi
004074cbjle 0x407531
004074cdtest edi, edi
004074cfjle 0x407530
004074d1
004074d1loc_4074d1:
004074d1mov rcx, rbx
004074d4lea rdx, [rbp+63]
004074d8call fn_406bf0
004074ddcmp [rbp+63], 0
004074e1jne 0x407531
004074e3cmp ax, 10
004074e7jne 0x4074f2
004074e9lea rax, [rbx+16]
004074edsub [rax], 2
004074f0jmp 0x407531
004074f2
004074f2loc_4074f2:
004074f2cmp ax, 13
004074f6jne 0x40751d
004074f8mov rcx, rbx
004074fblea rdx, [rbp+63]
004074ffcall fn_406bf0
00407504cmp ax, 10
00407508jne 0x407514
0040750amov rcx, rbx
0040750dcall fn_407260
00407512jmp 0x407531
00407514
00407514loc_407514:
00407514lea rax, [rbx+16]
00407518sub [rax], 2
0040751bjmp 0x40752c
0040751d
0040751dloc_40751d:
0040751dmov [rsi], ax
00407520add rsi, 2
00407524sub edi, 1
00407527add [r13], 1
0040752c
0040752cloc_40752c:
0040752ctest edi, edi
0040752ejg 0x4074d1
00407530
00407530loc_407530:
00407530nop
00407531
00407531loc_407531:
00407531mov rax, r14
00407534lea rsp, [rbp+72]
00407538pop rbx
00407539pop rsi
0040753apop rdi
0040753bpop r13
0040753dpop r14
0040753fpop rbp
00407540ret
00407460
00407541
00407541 // align 0x10
00407541 // align 0x10
00407550
00407550fn_407550:
00407550push rbp
00407551sub rsp, 96
00407555mov rbp, rsp
00407558mov [rbp+40], rcx
0040755cmov [rbp+48], rdx
00407560mov [rbp+62], r8w
00407565mov [rbp+80], 0
0040756dmov [rbp+72], 0
00407575mov [rbp+64], 0
0040757dnop
0040757emov rcx, [rbp+48]
00407582call fn_40bd40
00407587mov rax, [rbp+40]
0040758bcmp [rax+744], 0
00407593jne 0x40759e
00407595mov rcx, [rbp+40]
00407599call fn_406b00
0040759e
0040759eloc_40759e:
0040759emov rax, [rbp+40]
004075a2cmp [rax+744], 1200
004075abjne 0x4075d1
004075admov rcx, [rbp+40]
004075b1lea rdx, [rbp+64]
004075b5call fn_407750
004075bamov rcx, [rbp+48]
004075bemov rdx, [rbp+64]
004075c2movzx r8, [rbp+62]
004075c7call fn_40cff0
004075ccjmp 0x4076f7
004075d1
004075d1loc_4075d1:
004075d1lea rcx, [rbp+72]
004075d5mov edx, 255
004075daxor r8, r8
004075ddcall fn_40cf30
004075e2lea rcx, [rbp+72]
004075e6mov rax, [rbp+40]
004075eamovzx rdx, [rax+744]
004075f2xor r8, r8
004075f5call fn_40dfb0
004075falea rcx, [rbp+72]
004075fecall fn_40c690
00407603mov rcx, [rbp+40]
00407607mov rdx, rax
0040760amov r8l, 255
00407610lea r9, [rbp+92]
00407614call fn_407370
00407619lea rcx, [rbp+72]
0040761dmov edx, [rbp+92]
00407620xor r8, r8
00407623call fn_40cf30
00407628lea rcx, [rbp+80]
0040762cmov rdx, [rbp+72]
00407630call fn_40c520
00407635cmp [rbp+92], 255
0040763cjne 0x4076ab
0040763e
0040763eloc_40763e:
0040763elea rcx, [rbp+72]
00407642mov edx, 255
00407647xor r8, r8
0040764acall fn_40cf30
0040764flea rcx, [rbp+72]
00407653mov rax, [rbp+40]
00407657movzx rdx, [rax+744]
0040765fxor r8, r8
00407662call fn_40dfb0
00407667lea rcx, [rbp+72]
0040766bcall fn_40c690
00407670mov rcx, [rbp+40]
00407674mov rdx, rax
00407677mov r8l, 255
0040767dlea r9, [rbp+92]
00407681call fn_407370
00407686lea rcx, [rbp+72]
0040768amov edx, [rbp+92]
0040768dxor r8, r8
00407690call fn_40cf30
00407695lea rcx, [rbp+80]
00407699mov rdx, [rbp+72]
0040769dcall fn_40c910
004076a2cmp [rbp+92], 255
004076a9je 0x40763e
004076ab
004076abloc_4076ab:
004076abnop
004076acmovzx rax, [rbp+62]
004076b1mov rcx, [rbp+40]
004076b5cmp ax, [rcx+744]
004076bcmov [rbp+62], ax
004076c0je 0x4076ea
004076c2cmp [rbp+80], 0
004076c7je 0x4076f7
004076c9lea rcx, [rbp+64]
004076cdmov rdx, [rbp+80]
004076d1call fn_40d7f0
004076d6mov rcx, [rbp+48]
004076damov rdx, [rbp+64]
004076demovzx r8, [rbp+62]
004076e3call fn_40cff0
004076e8jmp 0x4076f7
004076ea
004076ealoc_4076ea:
004076eamov rcx, [rbp+48]
004076eemov rdx, [rbp+80]
004076f2call fn_40c4a0
004076f7
004076f7loc_4076f7:
004076f7nop
004076f8lea rcx, [rbp+64]
004076fccall fn_40bcf0
00407701lea rcx, [rbp+72]
00407705mov edx, 2
0040770acall fn_40be20
0040770flea rsp, [rbp+96]
00407713pop rbp
00407714ret
00407550
00407550fn_407550:
00407550push rbp
00407551sub rsp, 96
00407555mov rbp, rsp
00407558mov [rbp+40], rcx
0040755cmov [rbp+48], rdx
00407560mov [rbp+62], r8w
00407565mov [rbp+80], 0
0040756dmov [rbp+72], 0
00407575mov [rbp+64], 0
0040757dnop
0040757emov rcx, [rbp+48]
00407582call fn_40bd40
00407587mov rax, [rbp+40]
0040758bcmp [rax+744], 0
00407593jne 0x40759e
00407595mov rcx, [rbp+40]
00407599call fn_406b00
0040759e
0040759eloc_40759e:
0040759emov rax, [rbp+40]
004075a2cmp [rax+744], 1200
004075abjne 0x4075d1
004075admov rcx, [rbp+40]
004075b1lea rdx, [rbp+64]
004075b5call fn_407750
004075bamov rcx, [rbp+48]
004075bemov rdx, [rbp+64]
004075c2movzx r8, [rbp+62]
004075c7call fn_40cff0
004075ccjmp 0x4076f7
004075d1
004075d1loc_4075d1:
004075d1lea rcx, [rbp+72]
004075d5mov edx, 255
004075daxor r8, r8
004075ddcall fn_40cf30
004075e2lea rcx, [rbp+72]
004075e6mov rax, [rbp+40]
004075eamovzx rdx, [rax+744]
004075f2xor r8, r8
004075f5call fn_40dfb0
004075falea rcx, [rbp+72]
004075fecall fn_40c690
00407603mov rcx, [rbp+40]
00407607mov rdx, rax
0040760amov r8l, 255
00407610lea r9, [rbp+92]
00407614call fn_407370
00407619lea rcx, [rbp+72]
0040761dmov edx, [rbp+92]
00407620xor r8, r8
00407623call fn_40cf30
00407628lea rcx, [rbp+80]
0040762cmov rdx, [rbp+72]
00407630call fn_40c520
00407635cmp [rbp+92], 255
0040763cjne 0x4076ab
0040763e
0040763eloc_40763e:
0040763elea rcx, [rbp+72]
00407642mov edx, 255
00407647xor r8, r8
0040764acall fn_40cf30
0040764flea rcx, [rbp+72]
00407653mov rax, [rbp+40]
00407657movzx rdx, [rax+744]
0040765fxor r8, r8
00407662call fn_40dfb0
00407667lea rcx, [rbp+72]
0040766bcall fn_40c690
00407670mov rcx, [rbp+40]
00407674mov rdx, rax
00407677mov r8l, 255
0040767dlea r9, [rbp+92]
00407681call fn_407370
00407686lea rcx, [rbp+72]
0040768amov edx, [rbp+92]
0040768dxor r8, r8
00407690call fn_40cf30
00407695lea rcx, [rbp+80]
00407699mov rdx, [rbp+72]
0040769dcall fn_40c910
004076a2cmp [rbp+92], 255
004076a9je 0x40763e
004076ab
004076abloc_4076ab:
004076abnop
004076acmovzx rax, [rbp+62]
004076b1mov rcx, [rbp+40]
004076b5cmp ax, [rcx+744]
004076bcmov [rbp+62], ax
004076c0je 0x4076ea
004076c2cmp [rbp+80], 0
004076c7je 0x4076f7
004076c9lea rcx, [rbp+64]
004076cdmov rdx, [rbp+80]
004076d1call fn_40d7f0
004076d6mov rcx, [rbp+48]
004076damov rdx, [rbp+64]
004076demovzx r8, [rbp+62]
004076e3call fn_40cff0
004076e8jmp 0x4076f7
004076ea
004076ealoc_4076ea:
004076eamov rcx, [rbp+48]
004076eemov rdx, [rbp+80]
004076f2call fn_40c4a0
004076f7
004076f7loc_4076f7:
004076f7nop
004076f8lea rcx, [rbp+64]
004076fccall fn_40bcf0
00407701lea rcx, [rbp+72]
00407705mov edx, 2
0040770acall fn_40be20
0040770flea rsp, [rbp+96]
00407713pop rbp
00407714ret
00407550
00407715
00407715 48 8b c0 48 8d 04 05 00 00 00 00 H..H.......
00407715 48 8b c0 48 8d 04 05 00 00 00 00 H..H.......
00407720
00407720fn_407720:
00407720push rbp
00407721push rbx
00407722sub rsp, 40
00407726mov rbp, rsp
00407729mov rbx, rdx
0040772clea rcx, [rbx+64]
00407730call fn_40bcf0
00407735lea rcx, [rbx+72]
00407739mov edx, 2
0040773ecall fn_40be20
00407743lea rsp, [rbp+40]
00407747pop rbx
00407748pop rbp
00407749ret
00407720
00407720fn_407720:
00407720push rbp
00407721push rbx
00407722sub rsp, 40
00407726mov rbp, rsp
00407729mov rbx, rdx
0040772clea rcx, [rbx+64]
00407730call fn_40bcf0
00407735lea rcx, [rbx+72]
00407739mov edx, 2
0040773ecall fn_40be20
00407743lea rsp, [rbp+40]
00407747pop rbx
00407748pop rbp
00407749ret
00407720
0040774a
0040774a // align 0x10
0040774a // align 0x10
00407750
00407750fn_407750:
00407750push rbp
00407751sub rsp, 80
00407755mov rbp, rsp
00407758mov [rbp+32], rcx
0040775cmov [rbp+40], rdx
00407760mov [rbp+64], 0
00407768mov [rbp+56], 0
00407770nop
00407771mov rcx, [rbp+40]
00407775call fn_40bcf0
0040777amov rax, [rbp+32]
0040777ecmp [rax+744], 0
00407786jne 0x407791
00407788mov rcx, [rbp+32]
0040778ccall fn_406b00
00407791
00407791loc_407791:
00407791mov rax, [rbp+32]
00407795movzx rax, [rax+744]
0040779dcmp ax, 1200
004077a2jne 0x40784a
004077a8lea rcx, [rbp+64]
004077acmov edx, 255
004077b1call fn_40d8d0
004077b6mov rcx, [rbp+32]
004077bamov rdx, [rbp+64]
004077bemov r8l, 255
004077c4lea r9, [rbp+76]
004077c8call fn_407460
004077cdlea rcx, [rbp+64]
004077d1mov edx, [rbp+76]
004077d4call fn_40d8d0
004077d9mov rcx, [rbp+40]
004077ddmov rdx, [rbp+64]
004077e1call fn_40c360
004077e6cmp [rbp+76], 255
004077edjne 0x407847
004077ef
004077efloc_4077ef:
004077eflea rcx, [rbp+64]
004077f3mov edx, 255
004077f8call fn_40d8d0
004077fdmov rcx, [rbp+64]
00407801call fn_40d710
00407806mov rcx, [rbp+32]
0040780amov rdx, rax
0040780dmov r8l, 255
00407813lea r9, [rbp+76]
00407817call fn_407460
0040781clea rcx, [rbp+64]
00407820mov edx, [rbp+76]
00407823call fn_40d8d0
00407828mov rcx, [rbp+40]
0040782cmov rdx, [rbp+64]
00407830call fn_40d9b0
00407835lea rcx, [rbp+64]
00407839call fn_40bcf0
0040783ecmp [rbp+76], 255
00407845je 0x4077ef
00407847
00407847loc_407847:
00407847nop
00407848jmp 0x40786e
0040784a
0040784aloc_40784a:
0040784amov rcx, [rbp+32]
0040784elea rdx, [rbp+56]
00407852mov r8l, eax
00407855call fn_407550
0040785acmp [rbp+56], 0
0040785fje 0x40786e
00407861mov rcx, [rbp+40]
00407865mov rdx, [rbp+56]
00407869call fn_40d7f0
0040786e
0040786eloc_40786e:
0040786enop
0040786flea rcx, [rbp+56]
00407873call fn_40bd40
00407878lea rcx, [rbp+64]
0040787ccall fn_40bcf0
00407881lea rsp, [rbp+80]
00407885pop rbp
00407886ret
00407750
00407750fn_407750:
00407750push rbp
00407751sub rsp, 80
00407755mov rbp, rsp
00407758mov [rbp+32], rcx
0040775cmov [rbp+40], rdx
00407760mov [rbp+64], 0
00407768mov [rbp+56], 0
00407770nop
00407771mov rcx, [rbp+40]
00407775call fn_40bcf0
0040777amov rax, [rbp+32]
0040777ecmp [rax+744], 0
00407786jne 0x407791
00407788mov rcx, [rbp+32]
0040778ccall fn_406b00
00407791
00407791loc_407791:
00407791mov rax, [rbp+32]
00407795movzx rax, [rax+744]
0040779dcmp ax, 1200
004077a2jne 0x40784a
004077a8lea rcx, [rbp+64]
004077acmov edx, 255
004077b1call fn_40d8d0
004077b6mov rcx, [rbp+32]
004077bamov rdx, [rbp+64]
004077bemov r8l, 255
004077c4lea r9, [rbp+76]
004077c8call fn_407460
004077cdlea rcx, [rbp+64]
004077d1mov edx, [rbp+76]
004077d4call fn_40d8d0
004077d9mov rcx, [rbp+40]
004077ddmov rdx, [rbp+64]
004077e1call fn_40c360
004077e6cmp [rbp+76], 255
004077edjne 0x407847
004077ef
004077efloc_4077ef:
004077eflea rcx, [rbp+64]
004077f3mov edx, 255
004077f8call fn_40d8d0
004077fdmov rcx, [rbp+64]
00407801call fn_40d710
00407806mov rcx, [rbp+32]
0040780amov rdx, rax
0040780dmov r8l, 255
00407813lea r9, [rbp+76]
00407817call fn_407460
0040781clea rcx, [rbp+64]
00407820mov edx, [rbp+76]
00407823call fn_40d8d0
00407828mov rcx, [rbp+40]
0040782cmov rdx, [rbp+64]
00407830call fn_40d9b0
00407835lea rcx, [rbp+64]
00407839call fn_40bcf0
0040783ecmp [rbp+76], 255
00407845je 0x4077ef
00407847
00407847loc_407847:
00407847nop
00407848jmp 0x40786e
0040784a
0040784aloc_40784a:
0040784amov rcx, [rbp+32]
0040784elea rdx, [rbp+56]
00407852mov r8l, eax
00407855call fn_407550
0040785acmp [rbp+56], 0
0040785fje 0x40786e
00407861mov rcx, [rbp+40]
00407865mov rdx, [rbp+56]
00407869call fn_40d7f0
0040786e
0040786eloc_40786e:
0040786enop
0040786flea rcx, [rbp+56]
00407873call fn_40bd40
00407878lea rcx, [rbp+64]
0040787ccall fn_40bcf0
00407881lea rsp, [rbp+80]
00407885pop rbp
00407886ret
00407750
00407887
00407887 90 48 8d 04 05 00 00 00 00 .H.......
00407887 90 48 8d 04 05 00 00 00 00 .H.......
00407890
00407890fn_407890:
00407890push rbp
00407891push rbx
00407892sub rsp, 40
00407896mov rbp, rsp
00407899mov rbx, rdx
0040789clea rcx, [rbx+56]
004078a0call fn_40bd40
004078a5lea rcx, [rbx+64]
004078a9call fn_40bcf0
004078aelea rsp, [rbp+40]
004078b2pop rbx
004078b3pop rbp
004078b4ret
00407890
00407890fn_407890:
00407890push rbp
00407891push rbx
00407892sub rsp, 40
00407896mov rbp, rsp
00407899mov rbx, rdx
0040789clea rcx, [rbx+56]
004078a0call fn_40bd40
004078a5lea rcx, [rbx+64]
004078a9call fn_40bcf0
004078aelea rsp, [rbp+40]
004078b2pop rbx
004078b3pop rbp
004078b4ret
00407890
004078b5
004078b5 // align 0x10
004078b5 // align 0x10
004078c0
004078c0fn_4078c0:
004078c0push rbp
004078c1push rsi
004078c2push rbx
004078c3sub rsp, 48
004078c7mov rbp, rsp
004078camov rbx, rcx
004078cdmov rcx, rbx
004078d0lea rdx, [rbp+47]
004078d4movzx r8, [rip+0x5e13c]
004078dccall fn_406c90
004078e1mov esi, eax
004078e4mov rcx, rbx
004078e7call fn_406eb0
004078ec
004078ecloc_4078ec:
004078eccmp sil, 10
004078f0je 0x40794c
004078f2cmp [rbp+47], 0
004078f6jne 0x40794c
004078f8cmp sil, 13
004078fcjne 0x40792b
004078femov rcx, rbx
00407901lea rdx, [rbp+47]
00407905movzx r8, [rip+0x5e10b]
0040790dcall fn_406c90
00407912mov esi, eax
00407915mov rcx, rbx
00407918call fn_406eb0
0040791dcmp sil, 10
00407921je 0x40794c
00407923cmp [rbp+47], 0
00407927jne 0x40794c
00407929jmp 0x4078ec
0040792b
0040792bloc_40792b:
0040792bmov rcx, rbx
0040792elea rdx, [rbp+47]
00407932movzx r8, [rip+0x5e0de]
0040793acall fn_406c90
0040793fmov esi, eax
00407942mov rcx, rbx
00407945call fn_406eb0
0040794ajmp 0x4078ec
0040794c
0040794cloc_40794c:
0040794cnop
0040794dlea rsp, [rbp+48]
00407951pop rbx
00407952pop rsi
00407953pop rbp
00407954ret
004078c0
004078c0fn_4078c0:
004078c0push rbp
004078c1push rsi
004078c2push rbx
004078c3sub rsp, 48
004078c7mov rbp, rsp
004078camov rbx, rcx
004078cdmov rcx, rbx
004078d0lea rdx, [rbp+47]
004078d4movzx r8, [rip+0x5e13c]
004078dccall fn_406c90
004078e1mov esi, eax
004078e4mov rcx, rbx
004078e7call fn_406eb0
004078ec
004078ecloc_4078ec:
004078eccmp sil, 10
004078f0je 0x40794c
004078f2cmp [rbp+47], 0
004078f6jne 0x40794c
004078f8cmp sil, 13
004078fcjne 0x40792b
004078femov rcx, rbx
00407901lea rdx, [rbp+47]
00407905movzx r8, [rip+0x5e10b]
0040790dcall fn_406c90
00407912mov esi, eax
00407915mov rcx, rbx
00407918call fn_406eb0
0040791dcmp sil, 10
00407921je 0x40794c
00407923cmp [rbp+47], 0
00407927jne 0x40794c
00407929jmp 0x4078ec
0040792b
0040792bloc_40792b:
0040792bmov rcx, rbx
0040792elea rdx, [rbp+47]
00407932movzx r8, [rip+0x5e0de]
0040793acall fn_406c90
0040793fmov esi, eax
00407942mov rcx, rbx
00407945call fn_406eb0
0040794ajmp 0x4078ec
0040794c
0040794cloc_40794c:
0040794cnop
0040794dlea rsp, [rbp+48]
00407951pop rbx
00407952pop rsi
00407953pop rbp
00407954ret
004078c0
00407955
00407955 // align 0x10
00407955 // align 0x10
00407960
00407960fn_407960:
00407960push r14
00407962push r13
00407964push rdi
00407965push rsi
00407966push rbx
00407967sub rsp, 48
0040796bmov [rsp+40], rcx
00407970mov rbx, rdx
00407973mov edi, 1
00407978xor r13, r13
0040797bxor esi, esi
0040797dmov r14b, 1
00407980mov rax, [rsp+40]
00407985test rax, rax
00407988jne 0x407998
0040798amov [rbx], 1
00407990jmp 0x407b30
00407995
00407995loc_407995:
00407995add edi, 1
00407998
00407998loc_407998:
00407998movsxd rax, edi
0040799bmov rcx, [rsp+40]
004079a0cmp [rcx+2*rax-2], 32
004079a6je 0x407995
004079a8movsxd rax, edi
004079abmov rcx, [rsp+40]
004079b0movzx rax, [rcx+2*rax-2]
004079b6cmp ax, 45
004079bajne 0x4079c4
004079bcmov r13b, 1
004079bfadd edi, 1
004079c2jmp 0x4079cd
004079c4
004079c4loc_4079c4:
004079c4cmp ax, 43
004079c8jne 0x4079cd
004079caadd edi, 1
004079cd
004079cdloc_4079cd:
004079cdmovsxd rax, edi
004079d0mov rcx, [rsp+40]
004079d5cmp [rcx+2*rax-2], 48
004079dbjne 0x407a0a
004079ddmov rcx, [rsp+40]
004079e2call fn_40c560
004079e7cmp edi, eax
004079e9jge 0x407a0a
004079ebmov eax, edi
004079edadd eax, 1
004079f0movsxd rax, eax
004079f3mov rcx, [rsp+40]
004079f8movzx rax, [rcx+2*rax-2]
004079fecmp ax, 88
00407a02je 0x407a3a
00407a04cmp ax, 120
00407a08je 0x407a3a
00407a0a
00407a0aloc_407a0a:
00407a0amovsxd rax, edi
00407a0dmov rcx, [rsp+40]
00407a12cmp [rcx+2*rax-2], 36
00407a18je 0x407a3a
00407a1amovsxd rax, edi
00407a1dmov rcx, [rsp+40]
00407a22cmp [rcx+2*rax-2], 88
00407a28je 0x407a3a
00407a2amovsxd rax, edi
00407a2dmov rcx, [rsp+40]
00407a32cmp [rcx+2*rax-2], 120
00407a38jne 0x407ab9
00407a3a
00407a3aloc_407a3a:
00407a3amovsxd rax, edi
00407a3dmov rcx, [rsp+40]
00407a42cmp [rcx+2*rax-2], 48
00407a48jne 0x407a4d
00407a4aadd edi, 1
00407a4d
00407a4dloc_407a4d:
00407a4dadd edi, 1
00407a50
00407a50loc_407a50:
00407a50movsxd rax, edi
00407a53mov rcx, [rsp+40]
00407a58movzx rax, [rcx+2*rax-2]
00407a5emov ecx, eax
00407a60sub cx, 48
00407a64cmp cx, 10
00407a68jb 0x407a80
00407a6asub cx, 17
00407a6ecmp cx, 6
00407a72jb 0x407a88
00407a74sub cx, 32
00407a78cmp cx, 6
00407a7cjae 0x407aaf
00407a7ejmp 0x407a90
00407a80
00407a80loc_407a80:
00407a80movzx eax, ax
00407a83sub eax, 48
00407a86jmp 0x407a96
00407a88
00407a88loc_407a88:
00407a88movzx eax, ax
00407a8badd eax, -55
00407a8ejmp 0x407a96
00407a90
00407a90loc_407a90:
00407a90movzx eax, ax
00407a93add eax, -87
00407a96
00407a96loc_407a96:
00407a96test esi, esi
00407a98jl 0x407aaf
00407a9acmp esi, 0xfffffff
00407aa0jg 0x407aaf
00407aa2shl esi, 4
00407aa5add esi, eax
00407aa7add edi, 1
00407aaaxor r14, r14
00407aadjmp 0x407a50
00407aaf
00407aafloc_407aaf:
00407aafnop
00407ab0test r13b, r13b
00407ab3je 0x407b0e
00407ab5neg esi
00407ab7jmp 0x407b0e
00407ab9
00407ab9loc_407ab9:
00407ab9movsxd rax, edi
00407abcmov rcx, [rsp+40]
00407ac1movzx rax, [rcx+2*rax-2]
00407ac7mov ecx, eax
00407ac9sub cx, 48
00407acdcmp cx, 10
00407ad1jae 0x407af5
00407ad3movzx eax, ax
00407ad6sub eax, 48
00407ad9test esi, esi
00407adbjl 0x407af5
00407addcmp esi, 0xccccccc
00407ae3jg 0x407af5
00407ae5add esi, esi
00407ae7lea rsi, [rsi+4*rsi]
00407aebadd esi, eax
00407aedadd edi, 1
00407af0xor r14, r14
00407af3jmp 0x407ab9
00407af5
00407af5loc_407af5:
00407af5nop
00407af6test r13b, r13b
00407af9je 0x407afd
00407afbneg esi
00407afd
00407afdloc_407afd:
00407afdtest esi, esi
00407affje 0x407b0e
00407b01test esi, esi
00407b03setl al
00407b06cmp r13b, al
00407b09je 0x407b0e
00407b0bsub edi, 1
00407b0e
00407b0eloc_407b0e:
00407b0emovsxd rax, edi
00407b11mov rcx, [rsp+40]
00407b16cmp [rcx+2*rax-2], 0
00407b1csetne al
00407b1for al, r14b
00407b22test al, al
00407b24je 0x407b2a
00407b26mov [rbx], edi
00407b28jmp 0x407b30
00407b2a
00407b2aloc_407b2a:
00407b2amov [rbx], 0
00407b30
00407b30loc_407b30:
00407b30mov eax, esi
00407b32add rsp, 48
00407b36pop rbx
00407b37pop rsi
00407b38pop rdi
00407b39pop r13
00407b3bpop r14
00407b3dret
00407960
00407960fn_407960:
00407960push r14
00407962push r13
00407964push rdi
00407965push rsi
00407966push rbx
00407967sub rsp, 48
0040796bmov [rsp+40], rcx
00407970mov rbx, rdx
00407973mov edi, 1
00407978xor r13, r13
0040797bxor esi, esi
0040797dmov r14b, 1
00407980mov rax, [rsp+40]
00407985test rax, rax
00407988jne 0x407998
0040798amov [rbx], 1
00407990jmp 0x407b30
00407995
00407995loc_407995:
00407995add edi, 1
00407998
00407998loc_407998:
00407998movsxd rax, edi
0040799bmov rcx, [rsp+40]
004079a0cmp [rcx+2*rax-2], 32
004079a6je 0x407995
004079a8movsxd rax, edi
004079abmov rcx, [rsp+40]
004079b0movzx rax, [rcx+2*rax-2]
004079b6cmp ax, 45
004079bajne 0x4079c4
004079bcmov r13b, 1
004079bfadd edi, 1
004079c2jmp 0x4079cd
004079c4
004079c4loc_4079c4:
004079c4cmp ax, 43
004079c8jne 0x4079cd
004079caadd edi, 1
004079cd
004079cdloc_4079cd:
004079cdmovsxd rax, edi
004079d0mov rcx, [rsp+40]
004079d5cmp [rcx+2*rax-2], 48
004079dbjne 0x407a0a
004079ddmov rcx, [rsp+40]
004079e2call fn_40c560
004079e7cmp edi, eax
004079e9jge 0x407a0a
004079ebmov eax, edi
004079edadd eax, 1
004079f0movsxd rax, eax
004079f3mov rcx, [rsp+40]
004079f8movzx rax, [rcx+2*rax-2]
004079fecmp ax, 88
00407a02je 0x407a3a
00407a04cmp ax, 120
00407a08je 0x407a3a
00407a0a
00407a0aloc_407a0a:
00407a0amovsxd rax, edi
00407a0dmov rcx, [rsp+40]
00407a12cmp [rcx+2*rax-2], 36
00407a18je 0x407a3a
00407a1amovsxd rax, edi
00407a1dmov rcx, [rsp+40]
00407a22cmp [rcx+2*rax-2], 88
00407a28je 0x407a3a
00407a2amovsxd rax, edi
00407a2dmov rcx, [rsp+40]
00407a32cmp [rcx+2*rax-2], 120
00407a38jne 0x407ab9
00407a3a
00407a3aloc_407a3a:
00407a3amovsxd rax, edi
00407a3dmov rcx, [rsp+40]
00407a42cmp [rcx+2*rax-2], 48
00407a48jne 0x407a4d
00407a4aadd edi, 1
00407a4d
00407a4dloc_407a4d:
00407a4dadd edi, 1
00407a50
00407a50loc_407a50:
00407a50movsxd rax, edi
00407a53mov rcx, [rsp+40]
00407a58movzx rax, [rcx+2*rax-2]
00407a5emov ecx, eax
00407a60sub cx, 48
00407a64cmp cx, 10
00407a68jb 0x407a80
00407a6asub cx, 17
00407a6ecmp cx, 6
00407a72jb 0x407a88
00407a74sub cx, 32
00407a78cmp cx, 6
00407a7cjae 0x407aaf
00407a7ejmp 0x407a90
00407a80
00407a80loc_407a80:
00407a80movzx eax, ax
00407a83sub eax, 48
00407a86jmp 0x407a96
00407a88
00407a88loc_407a88:
00407a88movzx eax, ax
00407a8badd eax, -55
00407a8ejmp 0x407a96
00407a90
00407a90loc_407a90:
00407a90movzx eax, ax
00407a93add eax, -87
00407a96
00407a96loc_407a96:
00407a96test esi, esi
00407a98jl 0x407aaf
00407a9acmp esi, 0xfffffff
00407aa0jg 0x407aaf
00407aa2shl esi, 4
00407aa5add esi, eax
00407aa7add edi, 1
00407aaaxor r14, r14
00407aadjmp 0x407a50
00407aaf
00407aafloc_407aaf:
00407aafnop
00407ab0test r13b, r13b
00407ab3je 0x407b0e
00407ab5neg esi
00407ab7jmp 0x407b0e
00407ab9
00407ab9loc_407ab9:
00407ab9movsxd rax, edi
00407abcmov rcx, [rsp+40]
00407ac1movzx rax, [rcx+2*rax-2]
00407ac7mov ecx, eax
00407ac9sub cx, 48
00407acdcmp cx, 10
00407ad1jae 0x407af5
00407ad3movzx eax, ax
00407ad6sub eax, 48
00407ad9test esi, esi
00407adbjl 0x407af5
00407addcmp esi, 0xccccccc
00407ae3jg 0x407af5
00407ae5add esi, esi
00407ae7lea rsi, [rsi+4*rsi]
00407aebadd esi, eax
00407aedadd edi, 1
00407af0xor r14, r14
00407af3jmp 0x407ab9
00407af5
00407af5loc_407af5:
00407af5nop
00407af6test r13b, r13b
00407af9je 0x407afd
00407afbneg esi
00407afd
00407afdloc_407afd:
00407afdtest esi, esi
00407affje 0x407b0e
00407b01test esi, esi
00407b03setl al
00407b06cmp r13b, al
00407b09je 0x407b0e
00407b0bsub edi, 1
00407b0e
00407b0eloc_407b0e:
00407b0emovsxd rax, edi
00407b11mov rcx, [rsp+40]
00407b16cmp [rcx+2*rax-2], 0
00407b1csetne al
00407b1for al, r14b
00407b22test al, al
00407b24je 0x407b2a
00407b26mov [rbx], edi
00407b28jmp 0x407b30
00407b2a
00407b2aloc_407b2a:
00407b2amov [rbx], 0
00407b30
00407b30loc_407b30:
00407b30mov eax, esi
00407b32add rsp, 48
00407b36pop rbx
00407b37pop rsi
00407b38pop rdi
00407b39pop r13
00407b3bpop r14
00407b3dret
00407960
00407b3e
00407b3e // align 0x10
00407b3e // align 0x10
00407b40
00407b40fn_407b40:
00407b40push rbx
00407b41sub rsp, 32
00407b45mov rbx, rcx
00407b48lea rax, [rip+0x5d851]
00407b4fcmp rbx, rax
00407b52je 0x407b60
00407b54lea rax, [rip+0x5db3d]
00407b5bcmp rbx, rax
00407b5ejne 0x407b74
00407b60
00407b60loc_407b60:
00407b60movzx ax, [rip+0x514d3]
00407b68mov [rbx+10], ax
00407b6cmov rcx, rbx
00407b6fcall fn_406360
00407b74
00407b74loc_407b74:
00407b74cmp [rbx+8], -10318
00407b7asete bl
00407b7dtest bl, bl
00407b7fjne 0x407b8b
00407b81mov ecx, 105
00407b86call fn_405a70
00407b8b
00407b8bloc_407b8b:
00407b8bmov eax, ebx
00407b8dadd rsp, 32
00407b91pop rbx
00407b92ret
00407b40
00407b40fn_407b40:
00407b40push rbx
00407b41sub rsp, 32
00407b45mov rbx, rcx
00407b48lea rax, [rip+0x5d851]
00407b4fcmp rbx, rax
00407b52je 0x407b60
00407b54lea rax, [rip+0x5db3d]
00407b5bcmp rbx, rax
00407b5ejne 0x407b74
00407b60
00407b60loc_407b60:
00407b60movzx ax, [rip+0x514d3]
00407b68mov [rbx+10], ax
00407b6cmov rcx, rbx
00407b6fcall fn_406360
00407b74
00407b74loc_407b74:
00407b74cmp [rbx+8], -10318
00407b7asete bl
00407b7dtest bl, bl
00407b7fjne 0x407b8b
00407b81mov ecx, 105
00407b86call fn_405a70
00407b8b
00407b8bloc_407b8b:
00407b8bmov eax, ebx
00407b8dadd rsp, 32
00407b91pop rbx
00407b92ret
00407b40
00407b93
00407b93 // align 0x10
00407b93 // align 0x10
00407ba0
00407ba0fn_407ba0:
00407ba0push r14
00407ba2push r13
00407ba4push rdi
00407ba5push rsi
00407ba6push rbx
00407ba7sub rsp, 32
00407babmov rbx, rcx
00407baemov rsi, rdx
00407bb1mov edi, r8l
00407bb4mov r13, rbx
00407bb7cmp [rbx+8], -10318
00407bbdje 0x407bcb
00407bbfmov rcx, rbx
00407bc2call fn_407b40
00407bc7test al, al
00407bc9je 0x407c43
00407bcb
00407bcbloc_407bcb:
00407bcbmov ecx, [rbx+16]
00407bcemov rax, [rbx+24]
00407bd2mov edx, ecx
00407bd4lea rax, [rax+rdx]
00407bd8mov r14l, [rbx+12]
00407bdcsub r14l, ecx
00407bdfcmp r14l, edi
00407be2jg 0x407c2e
00407be4
00407be4loc_407be4:
00407be4lea rcx, [rbx+16]
00407be8add [rcx], r14l
00407bebsub edi, r14l
00407beemovsxd r14, r14l
00407bf1mov rcx, rsi
00407bf4mov rdx, rax
00407bf7mov r8, r14
00407bfacall fn_405ac0
00407bffadd rsi, r14
00407c02mov rcx, rbx
00407c05call [rbx+40]
00407c08test eax, eax
00407c0aje 0x407c15
00407c0cmov ecx, eax
00407c0ecall fn_405a70
00407c13jmp 0x407c43
00407c15
00407c15loc_407c15:
00407c15mov ecx, [rbx+16]
00407c18mov rax, [rbx+24]
00407c1cmov edx, ecx
00407c1elea rax, [rax+rdx]
00407c22mov r14l, [rbx+12]
00407c26sub r14l, ecx
00407c29cmp r14l, edi
00407c2cjle 0x407be4
00407c2e
00407c2eloc_407c2e:
00407c2enop
00407c2flea rcx, [rbx+16]
00407c33add [rcx], edi
00407c35mov rcx, rsi
00407c38mov rdx, rax
00407c3bmovsxd r8, edi
00407c3ecall fn_405ac0
00407c43
00407c43loc_407c43:
00407c43mov rax, r13
00407c46add rsp, 32
00407c4apop rbx
00407c4bpop rsi
00407c4cpop rdi
00407c4dpop r13
00407c4fpop r14
00407c51ret
00407ba0
00407ba0fn_407ba0:
00407ba0push r14
00407ba2push r13
00407ba4push rdi
00407ba5push rsi
00407ba6push rbx
00407ba7sub rsp, 32
00407babmov rbx, rcx
00407baemov rsi, rdx
00407bb1mov edi, r8l
00407bb4mov r13, rbx
00407bb7cmp [rbx+8], -10318
00407bbdje 0x407bcb
00407bbfmov rcx, rbx
00407bc2call fn_407b40
00407bc7test al, al
00407bc9je 0x407c43
00407bcb
00407bcbloc_407bcb:
00407bcbmov ecx, [rbx+16]
00407bcemov rax, [rbx+24]
00407bd2mov edx, ecx
00407bd4lea rax, [rax+rdx]
00407bd8mov r14l, [rbx+12]
00407bdcsub r14l, ecx
00407bdfcmp r14l, edi
00407be2jg 0x407c2e
00407be4
00407be4loc_407be4:
00407be4lea rcx, [rbx+16]
00407be8add [rcx], r14l
00407bebsub edi, r14l
00407beemovsxd r14, r14l
00407bf1mov rcx, rsi
00407bf4mov rdx, rax
00407bf7mov r8, r14
00407bfacall fn_405ac0
00407bffadd rsi, r14
00407c02mov rcx, rbx
00407c05call [rbx+40]
00407c08test eax, eax
00407c0aje 0x407c15
00407c0cmov ecx, eax
00407c0ecall fn_405a70
00407c13jmp 0x407c43
00407c15
00407c15loc_407c15:
00407c15mov ecx, [rbx+16]
00407c18mov rax, [rbx+24]
00407c1cmov edx, ecx
00407c1elea rax, [rax+rdx]
00407c22mov r14l, [rbx+12]
00407c26sub r14l, ecx
00407c29cmp r14l, edi
00407c2cjle 0x407be4
00407c2e
00407c2eloc_407c2e:
00407c2enop
00407c2flea rcx, [rbx+16]
00407c33add [rcx], edi
00407c35mov rcx, rsi
00407c38mov rdx, rax
00407c3bmovsxd r8, edi
00407c3ecall fn_405ac0
00407c43
00407c43loc_407c43:
00407c43mov rax, r13
00407c46add rsp, 32
00407c4apop rbx
00407c4bpop rsi
00407c4cpop rdi
00407c4dpop r13
00407c4fpop r14
00407c51ret
00407ba0
00407c52
00407c52 // align 0x10
00407c52 // align 0x10
00407c60
00407c60fn_407c60:
00407c60push rbp
00407c61sub rsp, 80
00407c65mov rbp, rsp
00407c68mov [rbp+40], rcx
00407c6cmov [rbp+52], edx
00407c6fmov [rbp+72], 0
00407c77nop
00407c78mov rax, [rbp+40]
00407c7cmov [rbp+56], rax
00407c80mov eax, [rbp+52]
00407c83cmp eax, 64
00407c86jle 0x407ce9
00407c88lea rcx, [rbp+72]
00407c8cmov edx, 64
00407c91xor r8, r8
00407c94call fn_40cf30
00407c99lea rcx, [rbp+72]
00407c9dcall fn_40c690
00407ca2mov rcx, rax
00407ca5mov edx, 64
00407caamov r8w, 32
00407cafcall fn_4069b0
00407cb4mov eax, [rbp+52]
00407cb7cmp eax, 64
00407cbajle 0x407ce8
00407cbc
00407cbcloc_407cbc:
00407cbcmov rcx, [rbp+40]
00407cc0mov rdx, [rbp+72]
00407cc4call fn_407fe0
00407cc9call fn_414a40
00407ccecmp [rax+528], 0
00407cd5jne 0x407d37
00407cd7mov eax, [rbp+52]
00407cdasub eax, 64
00407cddmov [rbp+52], eax
00407ce0mov eax, [rbp+52]
00407ce3cmp eax, 64
00407ce6jg 0x407cbc
00407ce8
00407ce8loc_407ce8:
00407ce8nop
00407ce9
00407ce9loc_407ce9:
00407ce9mov eax, [rbp+52]
00407cectest eax, eax
00407ceejle 0x407d36
00407cf0lea rcx, [rbp+72]
00407cf4mov edx, [rbp+52]
00407cf7xor r8, r8
00407cfacall fn_40cf30
00407cfflea rcx, [rbp+72]
00407d03call fn_40c690
00407d08mov rcx, rax
00407d0bmov edx, [rbp+52]
00407d0emovsxd rdx, edx
00407d11mov r8w, 32
00407d16call fn_4069b0
00407d1bmov rcx, [rbp+40]
00407d1fmov rdx, [rbp+72]
00407d23call fn_407fe0
00407d28call fn_414a40
00407d2dcmp [rax+528], 0
00407d34jne 0x407d37
00407d36
00407d36loc_407d36:
00407d36nop
00407d37
00407d37loc_407d37:
00407d37lea rcx, [rbp+72]
00407d3bcall fn_40bd40
00407d40mov rax, [rbp+56]
00407d44lea rsp, [rbp+80]
00407d48pop rbp
00407d49ret
00407c60
00407c60fn_407c60:
00407c60push rbp
00407c61sub rsp, 80
00407c65mov rbp, rsp
00407c68mov [rbp+40], rcx
00407c6cmov [rbp+52], edx
00407c6fmov [rbp+72], 0
00407c77nop
00407c78mov rax, [rbp+40]
00407c7cmov [rbp+56], rax
00407c80mov eax, [rbp+52]
00407c83cmp eax, 64
00407c86jle 0x407ce9
00407c88lea rcx, [rbp+72]
00407c8cmov edx, 64
00407c91xor r8, r8
00407c94call fn_40cf30
00407c99lea rcx, [rbp+72]
00407c9dcall fn_40c690
00407ca2mov rcx, rax
00407ca5mov edx, 64
00407caamov r8w, 32
00407cafcall fn_4069b0
00407cb4mov eax, [rbp+52]
00407cb7cmp eax, 64
00407cbajle 0x407ce8
00407cbc
00407cbcloc_407cbc:
00407cbcmov rcx, [rbp+40]
00407cc0mov rdx, [rbp+72]
00407cc4call fn_407fe0
00407cc9call fn_414a40
00407ccecmp [rax+528], 0
00407cd5jne 0x407d37
00407cd7mov eax, [rbp+52]
00407cdasub eax, 64
00407cddmov [rbp+52], eax
00407ce0mov eax, [rbp+52]
00407ce3cmp eax, 64
00407ce6jg 0x407cbc
00407ce8
00407ce8loc_407ce8:
00407ce8nop
00407ce9
00407ce9loc_407ce9:
00407ce9mov eax, [rbp+52]
00407cectest eax, eax
00407ceejle 0x407d36
00407cf0lea rcx, [rbp+72]
00407cf4mov edx, [rbp+52]
00407cf7xor r8, r8
00407cfacall fn_40cf30
00407cfflea rcx, [rbp+72]
00407d03call fn_40c690
00407d08mov rcx, rax
00407d0bmov edx, [rbp+52]
00407d0emovsxd rdx, edx
00407d11mov r8w, 32
00407d16call fn_4069b0
00407d1bmov rcx, [rbp+40]
00407d1fmov rdx, [rbp+72]
00407d23call fn_407fe0
00407d28call fn_414a40
00407d2dcmp [rax+528], 0
00407d34jne 0x407d37
00407d36
00407d36loc_407d36:
00407d36nop
00407d37
00407d37loc_407d37:
00407d37lea rcx, [rbp+72]
00407d3bcall fn_40bd40
00407d40mov rax, [rbp+56]
00407d44lea rsp, [rbp+80]
00407d48pop rbp
00407d49ret
00407c60
00407d4a
00407d4a 64 48 8d 44 20 00 dH.D .
00407d4a 64 48 8d 44 20 00 dH.D .
00407d50
00407d50fn_407d50:
00407d50push rbp
00407d51sub rsp, 32
00407d55mov rbp, rsp
00407d58lea rcx, [rdx+72]
00407d5ccall fn_40bd40
00407d61lea rsp, [rbp+32]
00407d65pop rbp
00407d66ret
00407d50
00407d50fn_407d50:
00407d50push rbp
00407d51sub rsp, 32
00407d55mov rbp, rsp
00407d58lea rcx, [rdx+72]
00407d5ccall fn_40bd40
00407d61lea rsp, [rbp+32]
00407d65pop rbp
00407d66ret
00407d50
00407d67
00407d67 // align 0x10
00407d67 // align 0x10
00407d70
00407d70fn_407d70:
00407d70push rbp
00407d71sub rsp, 64
00407d75mov rbp, rsp
00407d78mov [rbp+40], rcx
00407d7cmov [rbp+56], 0
00407d84nop
00407d85lea rcx, [rbp+56]
00407d89mov rax, [rbp+40]
00407d8dmov rax, [rax+48]
00407d91lea rdx, [rax+748]
00407d98mov rax, [rbp+40]
00407d9cmov rax, [rax+48]
00407da0movsx r8, [rax+746]
00407da8mov r9l, [rip+0x5dc69]
00407dafcall fn_40c0d0
00407db4mov rax, [rbp+40]
00407db8mov rcx, [rax+48]
00407dbcmov rdx, [rbp+56]
00407dc0call fn_4080c0
00407dc5mov rax, [rbp+40]
00407dc9mov rax, [rax+48]
00407dcdmov [rax+746], 0
00407dd4mov rax, [rbp+40]
00407dd8mov rax, [rax+48]
00407ddcmov [rax+747], 0
00407de3nop
00407de4lea rcx, [rbp+56]
00407de8call fn_40bcf0
00407dedlea rsp, [rbp+64]
00407df1pop rbp
00407df2ret
00407d70
00407d70fn_407d70:
00407d70push rbp
00407d71sub rsp, 64
00407d75mov rbp, rsp
00407d78mov [rbp+40], rcx
00407d7cmov [rbp+56], 0
00407d84nop
00407d85lea rcx, [rbp+56]
00407d89mov rax, [rbp+40]
00407d8dmov rax, [rax+48]
00407d91lea rdx, [rax+748]
00407d98mov rax, [rbp+40]
00407d9cmov rax, [rax+48]
00407da0movsx r8, [rax+746]
00407da8mov r9l, [rip+0x5dc69]
00407dafcall fn_40c0d0
00407db4mov rax, [rbp+40]
00407db8mov rcx, [rax+48]
00407dbcmov rdx, [rbp+56]
00407dc0call fn_4080c0
00407dc5mov rax, [rbp+40]
00407dc9mov rax, [rax+48]
00407dcdmov [rax+746], 0
00407dd4mov rax, [rbp+40]
00407dd8mov rax, [rax+48]
00407ddcmov [rax+747], 0
00407de3nop
00407de4lea rcx, [rbp+56]
00407de8call fn_40bcf0
00407dedlea rsp, [rbp+64]
00407df1pop rbp
00407df2ret
00407d70
00407df3
00407df3 48 8d 44 20 00 48 8d 04 05 00 00 00 00 H.D .H.......
00407df3 48 8d 44 20 00 48 8d 04 05 00 00 00 00 H.D .H.......
00407e00
00407e00fn_407e00:
00407e00push rbp
00407e01sub rsp, 32
00407e05mov rbp, rsp
00407e08lea rcx, [rdx+56]
00407e0ccall fn_40bcf0
00407e11lea rsp, [rbp+32]
00407e15pop rbp
00407e16ret
00407e00
00407e00fn_407e00:
00407e00push rbp
00407e01sub rsp, 32
00407e05mov rbp, rsp
00407e08lea rcx, [rdx+56]
00407e0ccall fn_40bcf0
00407e11lea rsp, [rbp+32]
00407e15pop rbp
00407e16ret
00407e00
00407e17
00407e17 // align 0x10
00407e17 // align 0x10
00407e20
00407e20fn_407e20:
00407e20push rbp
00407e21sub rsp, 32
00407e25mov rbp, rsp
00407e28mov [rbp+48], rcx
00407e2cmov [rbp+56], dl
00407e2fmov rax, [rbp+48]
00407e33cmp [rax+744], 0
00407e3bjne 0x407e46
00407e3dmov rcx, [rbp+48]
00407e41call fn_407b40
00407e46
00407e46loc_407e46:
00407e46mov rax, [rbp+48]
00407e4amovzx eax, [rax+744]
00407e51cmp eax, [rip+0x5dbc1]
00407e57jne 0x407e71
00407e59mov rcx, [rbp+48]
00407e5dlea rdx, [rbp+56]
00407e61mov r8l, 1
00407e67call fn_407ba0
00407e6cjmp 0x407fcd
00407e71
00407e71loc_407e71:
00407e71mov rax, [rbp+48]
00407e75cmp [rax+746], 0
00407e7cjne 0x407f72
00407e82mov rax, [rbp+48]
00407e86mov [rax+746], 1
00407e8dcmp [rip+0x5db81], 65001
00407e97jne 0x407f48
00407e9dmovzx rax, [rbp+56]
00407ea2mov ecx, eax
00407ea4sub cl, -64
00407ea7cmp cl, 31
00407eaaja 0x407ec7
00407eacmov edx, 1
00407eb1movzx rcx, cl
00407eb5and ecx, 127
00407eb8shl edx, cl
00407ebamov ecx, [rip+276]
00407ec0test edx, ecx
00407ec2setne cl
00407ec5jmp 0x407ec9
00407ec7
00407ec7loc_407ec7:
00407ec7xor ecx, ecx
00407ec9
00407ec9loc_407ec9:
00407ec9test cl, cl
00407ecbje 0x407edd
00407ecdmov rax, [rbp+48]
00407ed1mov [rax+746], 2
00407ed8jmp 0x407f67
00407edd
00407eddloc_407edd:
00407eddmov ecx, eax
00407edfsub cl, -32
00407ee2cmp cl, 15
00407ee5ja 0x407f05
00407ee7mov dx, 1
00407eebmovzx cx, cl
00407eefand cx, 127
00407ef3shl edx, cl
00407ef5movzx rcx, [rip+219]
00407efdtest dx, cx
00407f00setne cl
00407f03jmp 0x407f07
00407f05
00407f05loc_407f05:
00407f05xor ecx, ecx
00407f07
00407f07loc_407f07:
00407f07test cl, cl
00407f09je 0x407f18
00407f0bmov rax, [rbp+48]
00407f0fmov [rax+746], 3
00407f16jmp 0x407f67
00407f18
00407f18loc_407f18:
00407f18mov ecx, eax
00407f1asub cl, -16
00407f1dcmp cl, 7
00407f20ja 0x407f35
00407f22mov al, 1
00407f24shl eax, cl
00407f26movzx rcx, [rip+172]
00407f2etest al, cl
00407f30setne al
00407f33jmp 0x407f37
00407f35
00407f35loc_407f35:
00407f35xor eax, eax
00407f37
00407f37loc_407f37:
00407f37test al, al
00407f39je 0x407f67
00407f3bmov rax, [rbp+48]
00407f3fmov [rax+746], 4
00407f46jmp 0x407f67
00407f48
00407f48loc_407f48:
00407f48mov ecx, [rip+0x5daca]
00407f4emovzx rdx, [rbp+56]
00407f53call IsDBCSLeadByteEx
00407f58test eax, eax
00407f5aje 0x407f67
00407f5cmov rax, [rbp+48]
00407f60mov [rax+746], 2
00407f67
00407f67loc_407f67:
00407f67mov rax, [rbp+48]
00407f6bmov [rax+747], 0
00407f72
00407f72loc_407f72:
00407f72mov rax, [rbp+48]
00407f76cmp [rax+746], 0
00407f7djle 0x407fc9
00407f7fmov rax, [rbp+48]
00407f83mov rcx, [rbp+48]
00407f87movzx rcx, [rcx+747]
00407f8fmovzx rdx, [rbp+56]
00407f94mov [rax+rcx+748], dl
00407f9bmov rax, [rbp+48]
00407f9flea rax, [rax+747]
00407fa6add [rax], 1
00407fa9mov rax, [rbp+48]
00407fadmov rcx, [rbp+48]
00407fb1movzx rax, [rax+747]
00407fb9cmp al, [rcx+746]
00407fbfjne 0x407fc9
00407fc1mov rcx, rbp
00407fc4call fn_407d70
00407fc9
00407fc9loc_407fc9:
00407fc9mov rax, [rbp+48]
00407fcd
00407fcdloc_407fcd:
00407fcdlea rsp, [rbp+32]
00407fd1pop rbp
00407fd2ret
00407e20
00407e20fn_407e20:
00407e20push rbp
00407e21sub rsp, 32
00407e25mov rbp, rsp
00407e28mov [rbp+48], rcx
00407e2cmov [rbp+56], dl
00407e2fmov rax, [rbp+48]
00407e33cmp [rax+744], 0
00407e3bjne 0x407e46
00407e3dmov rcx, [rbp+48]
00407e41call fn_407b40
00407e46
00407e46loc_407e46:
00407e46mov rax, [rbp+48]
00407e4amovzx eax, [rax+744]
00407e51cmp eax, [rip+0x5dbc1]
00407e57jne 0x407e71
00407e59mov rcx, [rbp+48]
00407e5dlea rdx, [rbp+56]
00407e61mov r8l, 1
00407e67call fn_407ba0
00407e6cjmp 0x407fcd
00407e71
00407e71loc_407e71:
00407e71mov rax, [rbp+48]
00407e75cmp [rax+746], 0
00407e7cjne 0x407f72
00407e82mov rax, [rbp+48]
00407e86mov [rax+746], 1
00407e8dcmp [rip+0x5db81], 65001
00407e97jne 0x407f48
00407e9dmovzx rax, [rbp+56]
00407ea2mov ecx, eax
00407ea4sub cl, -64
00407ea7cmp cl, 31
00407eaaja 0x407ec7
00407eacmov edx, 1
00407eb1movzx rcx, cl
00407eb5and ecx, 127
00407eb8shl edx, cl
00407ebamov ecx, [rip+276]
00407ec0test edx, ecx
00407ec2setne cl
00407ec5jmp 0x407ec9
00407ec7
00407ec7loc_407ec7:
00407ec7xor ecx, ecx
00407ec9
00407ec9loc_407ec9:
00407ec9test cl, cl
00407ecbje 0x407edd
00407ecdmov rax, [rbp+48]
00407ed1mov [rax+746], 2
00407ed8jmp 0x407f67
00407edd
00407eddloc_407edd:
00407eddmov ecx, eax
00407edfsub cl, -32
00407ee2cmp cl, 15
00407ee5ja 0x407f05
00407ee7mov dx, 1
00407eebmovzx cx, cl
00407eefand cx, 127
00407ef3shl edx, cl
00407ef5movzx rcx, [rip+219]
00407efdtest dx, cx
00407f00setne cl
00407f03jmp 0x407f07
00407f05
00407f05loc_407f05:
00407f05xor ecx, ecx
00407f07
00407f07loc_407f07:
00407f07test cl, cl
00407f09je 0x407f18
00407f0bmov rax, [rbp+48]
00407f0fmov [rax+746], 3
00407f16jmp 0x407f67
00407f18
00407f18loc_407f18:
00407f18mov ecx, eax
00407f1asub cl, -16
00407f1dcmp cl, 7
00407f20ja 0x407f35
00407f22mov al, 1
00407f24shl eax, cl
00407f26movzx rcx, [rip+172]
00407f2etest al, cl
00407f30setne al
00407f33jmp 0x407f37
00407f35
00407f35loc_407f35:
00407f35xor eax, eax
00407f37
00407f37loc_407f37:
00407f37test al, al
00407f39je 0x407f67
00407f3bmov rax, [rbp+48]
00407f3fmov [rax+746], 4
00407f46jmp 0x407f67
00407f48
00407f48loc_407f48:
00407f48mov ecx, [rip+0x5daca]
00407f4emovzx rdx, [rbp+56]
00407f53call IsDBCSLeadByteEx
00407f58test eax, eax
00407f5aje 0x407f67
00407f5cmov rax, [rbp+48]
00407f60mov [rax+746], 2
00407f67
00407f67loc_407f67:
00407f67mov rax, [rbp+48]
00407f6bmov [rax+747], 0
00407f72
00407f72loc_407f72:
00407f72mov rax, [rbp+48]
00407f76cmp [rax+746], 0
00407f7djle 0x407fc9
00407f7fmov rax, [rbp+48]
00407f83mov rcx, [rbp+48]
00407f87movzx rcx, [rcx+747]
00407f8fmovzx rdx, [rbp+56]
00407f94mov [rax+rcx+748], dl
00407f9bmov rax, [rbp+48]
00407f9flea rax, [rax+747]
00407fa6add [rax], 1
00407fa9mov rax, [rbp+48]
00407fadmov rcx, [rbp+48]
00407fb1movzx rax, [rax+747]
00407fb9cmp al, [rcx+746]
00407fbfjne 0x407fc9
00407fc1mov rcx, rbp
00407fc4call fn_407d70
00407fc9
00407fc9loc_407fc9:
00407fc9mov rax, [rbp+48]
00407fcd
00407fcdloc_407fcd:
00407fcdlea rsp, [rbp+32]
00407fd1pop rbp
00407fd2ret
00407e20
00407fd3
00407fd3 00 fc ff ff ff ff ff 1f cc cc cc cc cc .............
00407fd3 00 fc ff ff ff ff ff 1f cc cc cc cc cc .............
00407fe0
00407fe0fn_407fe0:
00407fe0push rbp
00407fe1push rbx
00407fe2sub rsp, 72
00407fe6mov rbp, rsp
00407fe9mov [rbp+32], rcx
00407fedmov [rbp+40], rdx
00407ff1mov [rbp+56], 0
00407ff9nop
00407ffamov rcx, [rbp+32]
00407ffecall fn_4062b0
00408003mov rax, [rbp+32]
00408007mov [rbp+48], rax
0040800bmov rax, [rbp+40]
0040800ftest rax, rax
00408012je 0x408089
00408014mov rax, [rbp+32]
00408018cmp [rax+744], 0
00408020jne 0x40802b
00408022mov rcx, [rbp+32]
00408026call fn_407b40
0040802b
0040802bloc_40802b:
0040802bmov rax, [rbp+32]
0040802fmovzx rax, [rax+744]
00408037mov rcx, [rbp+40]
0040803bcmp ax, [rcx-12]
0040803fjne 0x40806b
00408041mov rcx, [rbp+40]
00408045call fn_40ce10
0040804amov rbx, rax
0040804dmov rcx, [rbp+40]
00408051call fn_40c570
00408056mov rcx, [rbp+32]
0040805amov rdx, rbx
0040805dmov r8l, eax
00408060call fn_407ba0
00408065mov [rbp+48], rax
00408069jmp 0x408089
0040806b
0040806bloc_40806b:
0040806blea rcx, [rbp+56]
0040806fmov rdx, [rbp+40]
00408073call fn_40d7f0
00408078mov rcx, [rbp+32]
0040807cmov rdx, [rbp+56]
00408080call fn_4080c0
00408085mov [rbp+48], rax
00408089
00408089loc_408089:
00408089nop
0040808alea rcx, [rbp+56]
0040808ecall fn_40bcf0
00408093mov rax, [rbp+48]
00408097lea rsp, [rbp+72]
0040809bpop rbx
0040809cpop rbp
0040809dret
00407fe0
00407fe0fn_407fe0:
00407fe0push rbp
00407fe1push rbx
00407fe2sub rsp, 72
00407fe6mov rbp, rsp
00407fe9mov [rbp+32], rcx
00407fedmov [rbp+40], rdx
00407ff1mov [rbp+56], 0
00407ff9nop
00407ffamov rcx, [rbp+32]
00407ffecall fn_4062b0
00408003mov rax, [rbp+32]
00408007mov [rbp+48], rax
0040800bmov rax, [rbp+40]
0040800ftest rax, rax
00408012je 0x408089
00408014mov rax, [rbp+32]
00408018cmp [rax+744], 0
00408020jne 0x40802b
00408022mov rcx, [rbp+32]
00408026call fn_407b40
0040802b
0040802bloc_40802b:
0040802bmov rax, [rbp+32]
0040802fmovzx rax, [rax+744]
00408037mov rcx, [rbp+40]
0040803bcmp ax, [rcx-12]
0040803fjne 0x40806b
00408041mov rcx, [rbp+40]
00408045call fn_40ce10
0040804amov rbx, rax
0040804dmov rcx, [rbp+40]
00408051call fn_40c570
00408056mov rcx, [rbp+32]
0040805amov rdx, rbx
0040805dmov r8l, eax
00408060call fn_407ba0
00408065mov [rbp+48], rax
00408069jmp 0x408089
0040806b
0040806bloc_40806b:
0040806blea rcx, [rbp+56]
0040806fmov rdx, [rbp+40]
00408073call fn_40d7f0
00408078mov rcx, [rbp+32]
0040807cmov rdx, [rbp+56]
00408080call fn_4080c0
00408085mov [rbp+48], rax
00408089
00408089loc_408089:
00408089nop
0040808alea rcx, [rbp+56]
0040808ecall fn_40bcf0
00408093mov rax, [rbp+48]
00408097lea rsp, [rbp+72]
0040809bpop rbx
0040809cpop rbp
0040809dret
00407fe0
0040809e
0040809e 48 90 H.
0040809e 48 90 H.
004080a0
004080a0fn_4080a0:
004080a0push rbp
004080a1sub rsp, 32
004080a5mov rbp, rsp
004080a8lea rcx, [rdx+56]
004080accall fn_40bcf0
004080b1lea rsp, [rbp+32]
004080b5pop rbp
004080b6ret
004080a0
004080a0fn_4080a0:
004080a0push rbp
004080a1sub rsp, 32
004080a5mov rbp, rsp
004080a8lea rcx, [rdx+56]
004080accall fn_40bcf0
004080b1lea rsp, [rbp+32]
004080b5pop rbp
004080b6ret
004080a0
004080b7
004080b7 // align 0x10
004080b7 // align 0x10
004080c0
004080c0fn_4080c0:
004080c0sub rsp, 40
004080c4xor r8, r8
004080c7call fn_4080e0
004080ccadd rsp, 40
004080d0ret
004080c0
004080c0fn_4080c0:
004080c0sub rsp, 40
004080c4xor r8, r8
004080c7call fn_4080e0
004080ccadd rsp, 40
004080d0ret
004080c0
004080d1
004080d1 // align 0x10
004080d1 // align 0x10
004080e0
004080e0fn_4080e0:
004080e0push rbp
004080e1push rbx
004080e2sub rsp, 88
004080e6mov rbp, rsp
004080e9mov [rbp+32], rcx
004080edmov [rbp+40], rdx
004080f1mov [rbp+52], r8l
004080f5mov [rbp+72], 0
004080fdnop
004080femov rax, [rbp+40]
00408102test rax, rax
00408105jne 0x40811c
00408107mov rcx, [rbp+32]
0040810bmov edx, [rbp+52]
0040810ecall fn_407c60
00408113mov [rbp+56], rax
00408117jmp 0x4081e3
0040811c
0040811cloc_40811c:
0040811cmov rax, [rbp+32]
00408120cmp [rax+744], 0
00408128jne 0x408133
0040812amov rcx, [rbp+32]
0040812ecall fn_407b40
00408133
00408133loc_408133:
00408133mov rax, [rbp+32]
00408137movzx rax, [rax+744]
0040813fcmp ax, 1200
00408144jne 0x408180
00408146mov rcx, [rbp+40]
0040814acall fn_40c560
0040814fmov ebx, eax
00408151mov rcx, [rbp+32]
00408155mov edx, [rbp+52]
00408158sub edx, ebx
0040815acall fn_407c60
0040815fmov rcx, [rbp+40]
00408163call fn_40d710
00408168mov rcx, [rbp+32]
0040816cmov rdx, rax
0040816fmov r8l, ebx
00408172add r8l, r8l
00408175call fn_407ba0
0040817amov [rbp+56], rax
0040817ejmp 0x4081e3
00408180
00408180loc_408180:
00408180cmp [rip+0x50ee0], 0
00408188je 0x40819e
0040818amov rcx, [rbp+32]
0040818emov rdx, [rbp+40]
00408192call [rip+0x50ed0]
00408198mov [rbp+56], rax
0040819cjmp 0x4081e3
0040819e
0040819eloc_40819e:
0040819elea rcx, [rbp+72]
004081a2mov rdx, [rbp+40]
004081a6mov r8l, eax
004081a9call fn_40cff0
004081aemov rcx, [rbp+72]
004081b2call fn_40c570
004081b7mov ebx, eax
004081b9mov rcx, [rbp+32]
004081bdmov edx, [rbp+52]
004081c0sub edx, ebx
004081c2call fn_407c60
004081c7lea rcx, [rbp+72]
004081cbcall fn_40c690
004081d0mov rcx, [rbp+32]
004081d4mov rdx, rax
004081d7mov r8l, ebx
004081dacall fn_407ba0
004081dfmov [rbp+56], rax
004081e3
004081e3loc_4081e3:
004081e3nop
004081e4lea rcx, [rbp+72]
004081e8call fn_40bd40
004081edmov rax, [rbp+56]
004081f1lea rsp, [rbp+88]
004081f5pop rbx
004081f6pop rbp
004081f7ret
004080e0
004080e0fn_4080e0:
004080e0push rbp
004080e1push rbx
004080e2sub rsp, 88
004080e6mov rbp, rsp
004080e9mov [rbp+32], rcx
004080edmov [rbp+40], rdx
004080f1mov [rbp+52], r8l
004080f5mov [rbp+72], 0
004080fdnop
004080femov rax, [rbp+40]
00408102test rax, rax
00408105jne 0x40811c
00408107mov rcx, [rbp+32]
0040810bmov edx, [rbp+52]
0040810ecall fn_407c60
00408113mov [rbp+56], rax
00408117jmp 0x4081e3
0040811c
0040811cloc_40811c:
0040811cmov rax, [rbp+32]
00408120cmp [rax+744], 0
00408128jne 0x408133
0040812amov rcx, [rbp+32]
0040812ecall fn_407b40
00408133
00408133loc_408133:
00408133mov rax, [rbp+32]
00408137movzx rax, [rax+744]
0040813fcmp ax, 1200
00408144jne 0x408180
00408146mov rcx, [rbp+40]
0040814acall fn_40c560
0040814fmov ebx, eax
00408151mov rcx, [rbp+32]
00408155mov edx, [rbp+52]
00408158sub edx, ebx
0040815acall fn_407c60
0040815fmov rcx, [rbp+40]
00408163call fn_40d710
00408168mov rcx, [rbp+32]
0040816cmov rdx, rax
0040816fmov r8l, ebx
00408172add r8l, r8l
00408175call fn_407ba0
0040817amov [rbp+56], rax
0040817ejmp 0x4081e3
00408180
00408180loc_408180:
00408180cmp [rip+0x50ee0], 0
00408188je 0x40819e
0040818amov rcx, [rbp+32]
0040818emov rdx, [rbp+40]
00408192call [rip+0x50ed0]
00408198mov [rbp+56], rax
0040819cjmp 0x4081e3
0040819e
0040819eloc_40819e:
0040819elea rcx, [rbp+72]
004081a2mov rdx, [rbp+40]
004081a6mov r8l, eax
004081a9call fn_40cff0
004081aemov rcx, [rbp+72]
004081b2call fn_40c570
004081b7mov ebx, eax
004081b9mov rcx, [rbp+32]
004081bdmov edx, [rbp+52]
004081c0sub edx, ebx
004081c2call fn_407c60
004081c7lea rcx, [rbp+72]
004081cbcall fn_40c690
004081d0mov rcx, [rbp+32]
004081d4mov rdx, rax
004081d7mov r8l, ebx
004081dacall fn_407ba0
004081dfmov [rbp+56], rax
004081e3
004081e3loc_4081e3:
004081e3nop
004081e4lea rcx, [rbp+72]
004081e8call fn_40bd40
004081edmov rax, [rbp+56]
004081f1lea rsp, [rbp+88]
004081f5pop rbx
004081f6pop rbp
004081f7ret
004080e0
004081f8
004081f8 48 8d 04 05 00 00 00 00 H.......
004081f8 48 8d 04 05 00 00 00 00 H.......
00408200
00408200fn_408200:
00408200push rbp
00408201sub rsp, 32
00408205mov rbp, rsp
00408208lea rcx, [rdx+72]
0040820ccall fn_40bd40
00408211lea rsp, [rbp+32]
00408215pop rbp
00408216ret
00408200
00408200fn_408200:
00408200push rbp
00408201sub rsp, 32
00408205mov rbp, rsp
00408208lea rcx, [rdx+72]
0040820ccall fn_40bd40
00408211lea rsp, [rbp+32]
00408215pop rbp
00408216ret
00408200
00408217
00408217 // align 0x10
00408217 // align 0x10
00408220
00408220fn_408220:
00408220push rsi
00408221push rbx
00408222sub rsp, 40
00408226mov rbx, rcx
00408229movzx rax, [rbx+10]
0040822etest ax, 1
00408233je 0x40823f
00408235mov rcx, rbx
00408238mov dl, 13
0040823acall fn_407e20
0040823f
0040823floc_40823f:
0040823fmov rcx, rbx
00408242mov dl, 10
00408244call fn_407e20
00408249mov rsi, rax
0040824cmov rcx, rbx
0040824fcall fn_406920
00408254mov rax, rsi
00408257add rsp, 40
0040825bpop rbx
0040825cpop rsi
0040825dret
00408220
00408220fn_408220:
00408220push rsi
00408221push rbx
00408222sub rsp, 40
00408226mov rbx, rcx
00408229movzx rax, [rbx+10]
0040822etest ax, 1
00408233je 0x40823f
00408235mov rcx, rbx
00408238mov dl, 13
0040823acall fn_407e20
0040823f
0040823floc_40823f:
0040823fmov rcx, rbx
00408242mov dl, 10
00408244call fn_407e20
00408249mov rsi, rax
0040824cmov rcx, rbx
0040824fcall fn_406920
00408254mov rax, rsi
00408257add rsp, 40
0040825bpop rbx
0040825cpop rsi
0040825dret
00408220
0040825e
0040825e // align 0x10
0040825e // align 0x10
00408260
00408260fn_408260:
00408260push rbp
00408261sub rsp, 16
00408265mov rbp, rsp
00408268mov [rbp+12], ecx
0040826bldmxcsr [rbp+12]
0040826flea rsp, [rbp+16]
00408273pop rbp
00408274ret
00408260
00408260fn_408260:
00408260push rbp
00408261sub rsp, 16
00408265mov rbp, rsp
00408268mov [rbp+12], ecx
0040826bldmxcsr [rbp+12]
0040826flea rsp, [rbp+16]
00408273pop rbp
00408274ret
00408260
00408275
00408275 // align 0x10
00408275 // align 0x10
Loading..