Function at 0x1800642a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x6f8
mov qword [rsp + 0x338], 0xa8
mov qword [rsp + 0x78], 0x53fd
movzx eax, byte [0x1800c6880]
mov byte [rsp + 0x38], al
mov rax, qword [0x1800c68c0]
mov dword [rsp + 0x54], eax
mov eax, 0xca7aed88
mov qword [rsp + 0xa8], rax
movzx eax, word [0x1800c6824]
mov word [rsp + 0x4c], ax
movsx eax, word [0x1800c6828]
mov dword [rsp + 0x44], eax
mov byte [rsp + 0x37], 0x44
mov dword [rsp + 0x58], 0xadef
mov dword [rsp + 0x48], 0xa5fcd1b9
mov qword [rsp + 0x70], 0x6f0830c9
movzx eax, word [0x1800c6854]
mov byte [rsp + 0x34], al
mov rax, qword [0x1800c6818]
mov byte [rsp + 0x31], al
mov eax, 0x6ae1
mov word [rsp + 0x3c], ax
mov byte [rsp + 0x33], 0xcd
mov byte [rsp + 0x30], 0x2d
movzx eax, byte [0x1800c68a8]
mov byte [rsp + 0x35], al
mov byte [rsp + 0x36], 0x99
movsx eax, word [0x1800c6850]
mov dword [rsp + 0x50], eax
movzx eax, word [0x1800c67f4]
cwde
mov dword [rsp + 0x40], eax
movsx rax, word [0x1800c6880]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x60], 0xe83d2d54
mov byte [rsp + 0x32], 0x82
mov dword [rsp + 0x31c], 0x6c6
mov byte [rsp + 0xd0], 0x3b
movsx eax, word [0x1800c68a8]
mov dword [rsp + 0x320], eax
movzx eax, word [0x1800c682c]
movzx eax, ax
mov qword [rsp + 0x340], rax
movzx eax, byte [0x1800c68ac]
mov byte [rsp + 0xd1], al
mov eax, 0x8d
mov word [rsp + 0x294], ax
mov eax, 0x52dd
mov word [rsp + 0x290], ax
mov byte [rsp + 0x100], 0xda
mov qword [rsp + 0x348], 0xf65
mov byte [rsp + 0xf8], 0x9d
mov eax, dword [0x1800c685c]
mov byte [rsp + 0xe8], al
movabs rax, 0xf4cee1fe254b5
mov qword [rsp + 0x350], rax
movzx eax, byte [0x1800c6776]
movzx eax, al
mov qword [rsp + 0x358], rax
movabs rax, 0x2a75919bcf9b6
mov qword [rsp + 0x360], rax
movabs rax, 0x3236175f4fca0
mov qword [rsp + 0x368], rax
mov qword [rsp + 0x370], 0xb45a
movzx eax, word [rsp + 0x3c]
mov ecx, dword [rsp + 0x54]
not ecx
cmp eax, ecx
jne 0x18006448c
mov dword [rsp + 0x1f0], 1
jmp 0x180064497
mov dword [rsp + 0x1f0], 0
movzx eax, byte [rsp + 0x30]
cmp eax, dword [rsp + 0x1f0]
jne 0x1800644b2
mov dword [rsp + 0x1f4], 1
jmp 0x1800644bd
mov dword [rsp + 0x1f4], 0
mov eax, dword [rsp + 0x1f4]
not eax
test eax, eax
je 0x180064527
movsx eax, byte [rsp + 0x31]
movzx ecx, byte [0x1800c6777]
cmp eax, ecx
jge 0x180064525
mov rax, qword [rsp + 0x70]
movabs rcx, 0xde3d753479e2e
imul rax, rcx
mov ecx, dword [0x1800c68d4]
mov ecx, ecx
add rax, rcx
test rax, rax
jne 0x18006450c
mov eax, 1
mov word [rsp + 0xb0], ax
jmp 0x180064516
xor eax, eax
mov word [rsp + 0xb0], ax
movzx eax, word [rsp + 0xb0]
mov word [0x1800c6898], ax
jmp 0x180064548
movabs rax, 0xa7e6c28b3b586
xor ecx, ecx
cmp rcx, rax
je 0x180064548
movzx eax, byte [rsp + 0x32]
movsx ecx, byte [rsp + 0x34]
sub eax, ecx
mov byte [rsp + 0x32], al
mov eax, dword [0x180895050]
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0xd4]
add eax, 0x648
mov dword [rsp + 0x26c], eax
mov eax, 0xffff8d4e
mov word [0x1800c6860], ax
mov eax, dword [rsp + 0xd4]
add eax, 0x80e
mov dword [rsp + 0x268], eax
mov eax, dword [rsp + 0xd4]
add eax, 0x61c
mov dword [rsp + 0x324], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xd8], eax
mov eax, dword [rsp + 0xd8]
add eax, 0x6f4
mov dword [rsp + 0x328], eax
mov eax, dword [rsp + 0x44]
mov eax, eax
mov rcx, qword [0x1800c68a0]
cmp rax, rcx
jle 0x1800645d9
mov dword [rsp + 0x1fc], 1
jmp 0x1800645e4
mov dword [rsp + 0x1fc], 0
mov eax, dword [rsp + 0x44]
cmp eax, 1
jbe 0x1800645fa
mov dword [rsp + 0x1f8], 1
jmp 0x180064605
mov dword [rsp + 0x1f8], 0
mov eax, dword [rsp + 0x1f8]
mov eax, dword [rsp + 0xd8]
add eax, 0x703
mov dword [rsp + 0x15c], eax
mov eax, dword [rsp + 0xd8]
add eax, 0x638
mov dword [rsp + 0x32c], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xdc], eax
mov dword [rsp + 0x44], 3
movzx eax, word [0x1800c6774]
movzx eax, ax
add eax, 0x7b2356c6
movzx ecx, byte [rsp + 0x33]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x33], al
movzx eax, byte [0x1800c675b]
movzx eax, al
movzx ecx, byte [rsp + 0x30]
movabs rdx, 0xfff7c387c5147793
add rcx, rdx
add rax, rcx
mov byte [rsp + 0x30], al
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0xc4], eax
cmp dword [rsp + 0xc4], 0
je 0x1800646c2
cmp dword [rsp + 0xc4], 1
je 0x1800646d4
cmp dword [rsp + 0xc4], 2
je 0x180064710
cmp dword [rsp + 0xc4], 3
je 0x18006474f
jmp 0x18006477a
mov eax, dword [0x180895050]
mov qword [0x1800c6878], rax
jmp 0x18006477a
movsx eax, byte [rsp + 0x36]
sar eax, 4
mov word [0x1800c6868], ax
movzx eax, word [0x1800c6898]
movzx eax, ax
mov rcx, qword [0x1800c68c0]
and rax, rcx
movzx ecx, word [0x1800c6898]
movzx ecx, cx
sub rcx, rax
mov rax, rcx
mov word [0x1800c6898], ax
jmp 0x18006477a
mov eax, dword [0x1800c685c]
cdqe
movabs rcx, 0xf6e0736debbc6
imul rax, rcx
mov ecx, dword [str.g]
mov ecx, ecx
sub rcx, rax
mov rax, rcx
mov dword [str.g], eax
movsx eax, word [0x1800c6880]
xor eax, 0x57ce5983
mov word [0x1800c6880], ax
jmp 0x18006477a
movzx eax, byte [0x1800c6773]
movsx eax, al
mov ecx, dword [rsp + 0x44]
not ecx
sub eax, ecx
not eax
movzx ecx, word [0x1800c6774]
movzx ecx, cx
movsx edx, byte [rsp + 0x36]
xor ecx, edx
sub eax, ecx
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0xdc]
add eax, 0x70d0
mov dword [rsp + 0x300], eax
movsx eax, word [0x1800c6828]
test eax, eax
je 0x18006479a
jmp 0x1800647f2
movzx eax, byte [rsp + 0x30]
test eax, eax
je 0x1800647ba
mov eax, dword [rsp + 0x60]
not eax
test eax, eax
jne 0x1800647ba
mov dword [rsp + 0x200], 0
jmp 0x1800647c5
mov dword [rsp + 0x200], 1
movsx eax, byte [rsp + 0x35]
not eax
cmp dword [rsp + 0x200], eax
je 0x1800647f2
mov eax, dword [rsp + 0x50]
add eax, 0x2f
mov eax, eax
mov rcx, qword [0x1800c6870]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c6870], rax
mov eax, dword [rsp + 0xdc]
add eax, 0x532
mov dword [rsp + 0x128], eax
mov eax, dword [rsp + 0xdc]
add eax, 0xd681
mov dword [rsp + 0x124], eax
mov eax, dword [rsp + 0x44]
xor eax, 0x7b4f
mov word [0x1800c6850], ax
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x18006483c
mov byte [rsp + 0x38], 4
jmp 0x1800649aa
mov rax, qword [0x1800c6830]
test rax, rax
je 0x180064861
movzx eax, word [0x1800c6864]
cwde
test eax, eax
je 0x180064861
mov dword [rsp + 0x204], 1
jmp 0x18006486c
mov dword [rsp + 0x204], 0
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x204], eax
je 0x1800648b4
movsx eax, word [0x1800c6828]
test eax, eax
je 0x180064895
movzx eax, word [rsp + 0x4c]
movzx eax, ax
mov dword [rsp + 0x208], eax
jmp 0x1800648a4
movzx eax, word [0x1800c6864]
cwde
mov dword [rsp + 0x208], eax
mov eax, dword [rsp + 0x208]
mov dword [rsp + 0x48], eax
jmp 0x1800649aa
movsx eax, byte [rsp + 0x34]
cmp eax, 0xcd9e247d
jae 0x1800648d6
mov rax, qword [0x1800c6878]
and rax, 0xa1
mov byte [rsp + 0x32], al
jmp 0x1800649aa
cmp dword [rsp + 0x48], 0
je 0x1800649aa
movsxd rax, dword [0x1800c6820]
mov rcx, qword [0x1800c6870]
and rcx, rax
mov rax, rcx
test rax, rax
jne 0x180064907
mov dword [rsp + 0x118], 1
jmp 0x180064912
mov dword [rsp + 0x118], 0
cmp dword [0x1800c6820], 0
jne 0x180064928
mov dword [rsp + 0x11c], 1
jmp 0x180064933
mov dword [rsp + 0x11c], 0
movsx eax, word [0x1800c6858]
movzx ecx, byte [rsp + 0x33]
imul eax, ecx
test eax, eax
jne 0x180064953
mov dword [rsp + 0x120], 1
jmp 0x18006495e
mov dword [rsp + 0x120], 0
movzx eax, byte [0x1800c6776]
movzx eax, al
not eax
mov ecx, dword [rsp + 0x118]
imul ecx, eax
mov eax, ecx
not eax
movzx ecx, byte [rsp + 0x30]
not ecx
sub ecx, dword [rsp + 0x11c]
add ecx, dword [rsp + 0x120]
sub eax, ecx
not eax
mov byte [rsp + 0x31], al
mov rax, qword [rsp + 0x88]
sub rax, 0x8f
mov word [0x1800c6898], ax
mov eax, dword [rsp + 0x128]
mov ecx, dword [rsp + 0x124]
imul eax, ecx
mov ecx, dword [rsp + 0x124]
mov edx, dword [rsp + 0x128]
or ecx, edx
or eax, ecx
xor eax, 0x45afa0f
mov dword [rsp + 0x238], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x88]
dec rax
mov qword [rsp + 0x88], rax
movsx eax, byte [rsp + 0x31]
movsx ecx, word [0x1800c6880]
and eax, ecx
mov word [0x1800c68b8], ax
mov eax, dword [rsp + 0xe0]
add eax, 0x4d8
mov dword [rsp + 0x298], eax
mov eax, dword [rsp + 0xe0]
add eax, 0x51f
mov dword [rsp + 0x304], eax
mov qword [rsp + 0x70], 2
mov eax, 1
mov word [0x1800c6860], ax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x2c8], rax
cmp qword [rsp + 0x2c8], 0
je 0x180064a6e
cmp qword [rsp + 0x2c8], 2
je 0x180064a7c
jmp 0x180064a90
mov dword [0x1800c68ac], 0x7c84
jmp 0x180064a90
mov eax, dword [rsp + 0x54]
movsx ecx, byte [rsp + 0x35]
lea eax, [rcx + rax - 0x6a6117bf]
mov byte [rsp + 0x35], al
mov eax, dword [rsp + 0xe0]
add eax, 0x4d6
mov dword [rsp + 0x274], eax
movzx eax, byte [rsp + 0x30]
mov ecx, 0x69199bcd
sub ecx, eax
mov eax, ecx
test eax, eax
jne 0x180064ac2
mov dword [rsp + 0x12c], 1
jmp 0x180064acd
mov dword [rsp + 0x12c], 0
movzx eax, byte [rsp + 0x30]
movzx ecx, byte [0x1800c6777]
movzx edx, byte [0x1800c675b]
movzx edx, dl
or ecx, edx
imul ecx, dword [rsp + 0x12c]
not ecx
sub eax, ecx
cdqe
mov qword [0x1800c6888], rax
movsx rax, byte [rsp + 0x31]
mov rcx, qword [rsp + 0x88]
sub rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
mov eax, dword [0x1800c68d4]
add eax, 0xbffd
mov eax, eax
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0x298]
mov ecx, dword [rsp + 0x274]
or ecx, 0xe455
lea eax, [rax + rcx - 0x4f]
mov ecx, 0xf199
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x23c], eax
movsx rax, byte [rsp + 0x34]
mov rcx, qword [0x1800c6830]
cmp rax, rcx
jae 0x180064b75
jmp 0x180064bbc
movzx eax, word [rsp + 0x4c]
movzx eax, ax
test eax, eax
je 0x180064b8e
movzx eax, byte [0x1800c6773]
mov byte [rsp + 0x5c], al
jmp 0x180064b97
movzx eax, byte [rsp + 0x37]
mov byte [rsp + 0x5c], al
movsx eax, byte [rsp + 0x5c]
mov dword [0x1800c686c], eax
mov eax, dword [rsp + 0x54]
mov eax, eax
movabs rcx, 0xe147e16a0b1ea
sub rax, rcx
mov word [0x1800c6858], ax
mov eax, dword [0x180895050]
mov dword [rsp + 0xe4], eax
mov eax, dword [rsp + 0xe4]
add eax, 0x4f6
mov dword [rsp + 0x25c], eax
movzx eax, byte [rsp + 0x38]
cmp qword [0x1800c6878], rax
jae 0x180064c0c
movsx eax, byte [rsp + 0x31]
add eax, 0xb442
cdqe
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
mov eax, dword [rsp + 0xe4]
add eax, 0x59e
mov dword [rsp + 0x260], eax
mov eax, dword [rsp + 0x58]
not eax
test eax, eax
je 0x180064c3d
mov rax, qword [0x1800c6830]
sub rax, 0x82e1
mov qword [0x1800c6888], rax
mov eax, dword [rsp + 0xe4]
add eax, 0x48b5
mov dword [rsp + 0x308], eax
mov qword [rsp + 0x78], 2
movzx eax, word [0x1800c68b8]
movsx ecx, word [0x1800c68a8]
sub eax, ecx
movzx ecx, word [0x1800c68b8]
sub ecx, eax
mov eax, ecx
mov word [0x1800c68b8], ax
mov qword [0x1800c6878], 0xcda7
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x278], rax
cmp qword [rsp + 0x278], 0
je 0x180064cbd
cmp qword [rsp + 0x278], 1
je 0x180064cce
cmp qword [rsp + 0x278], 2
je 0x180064d54
jmp 0x180064d84
mov eax, 0x7e5a
mov word [0x1800c6868], ax
jmp 0x180064d84
movzx eax, word [0x1800c6840]
mov rcx, qword [0x1800c68c8]
sub rcx, rax
mov rax, rcx
test rax, rax
jne 0x180064cf4
mov dword [rsp + 0x130], 1
jmp 0x180064cff
mov dword [rsp + 0x130], 0
movzx eax, word [rsp + 0x4c]
movzx eax, ax
mov ecx, dword [0x1800c685c]
mov edx, dword [rsp + 0x50]
add ecx, edx
imul eax, ecx
movzx ecx, byte [rsp + 0x37]
movsx ecx, cl
movzx edx, word [rsp + 0x3c]
not edx
imul ecx, edx
xor ecx, dword [rsp + 0x130]
not ecx
add eax, ecx
mov byte [rsp + 0x34], al
movzx eax, word [0x1800c6868]
movabs rcx, 0x24ac0ff11076b
sub rax, rcx
mov qword [0x1800c6830], rax
jmp 0x180064d84
movzx eax, word [0x1800c6860]
movsx rax, ax
mov rcx, qword [0x1800c6848]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c6848], rax
mov rax, qword [0x1800c6890]
inc rax
mov qword [0x1800c6890], rax
movzx eax, byte [rsp + 0x30]
test eax, eax
je 0x180064d8f
jmp 0x180064db3
mov eax, dword [rsp + 0x54]
not eax
test eax, eax
je 0x180064db3
imul eax, dword [0x1800c68ac], 0xc4b1f616
mov ecx, dword [0x1800c6844]
add ecx, eax
mov eax, ecx
mov dword [0x1800c6844], eax
mov eax, dword [rsp + 0x25c]
mov ecx, dword [rsp + 0x260]
xor eax, ecx
mov ecx, 0x9b1
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x240], eax
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x70]
cmp rax, rcx
jae 0x180064dea
jmp 0x180064fbd
cmp dword [rsp + 0x40], 0
jne 0x180064dfe
mov dword [rsp + 0x134], 1
jmp 0x180064e09
mov dword [rsp + 0x134], 0
movzx eax, byte [0x1800c6777]
cmp dword [rsp + 0x134], eax
jle 0x180064e45
mov eax, dword [rsp + 0x50]
cmp eax, 0x8e
je 0x180064e45
mov rax, qword [rsp + 0x78]
dec rax
mov qword [rsp + 0x78], rax
movzx eax, byte [rsp + 0x33]
add eax, 0x29
mov word [0x1800c6854], ax
jmp 0x180064fbd
mov rax, qword [rsp + 0x70]
movsx rcx, byte [rsp + 0x34]
cmp rax, rcx
ja 0x180064e62
mov dword [rsp + 0x138], 1
jmp 0x180064e6d
mov dword [rsp + 0x138], 0
mov eax, dword [rsp + 0x138]
not eax
test eax, eax
je 0x180064f32
movzx eax, word [0x1800c675c]
cwde
mov ecx, dword [rsp + 0x48]
imul ecx, eax
mov eax, ecx
test eax, eax
jne 0x180064ea2
mov eax, 1
mov word [rsp + 0xb2], ax
jmp 0x180064eac
xor eax, eax
mov word [rsp + 0xb2], ax
movzx eax, word [rsp + 0xb2]
mov word [0x1800c675c], ax
movzx eax, word [0x1800c682c]
movzx eax, ax
movsx ecx, byte [0x1800c679e]
not ecx
sub eax, ecx
test eax, eax
jne 0x180064ee2
mov qword [rsp + 0x2d0], 1
jmp 0x180064eee
mov qword [rsp + 0x2d0], 0
movzx eax, word [0x1800c67f4]
cwde
not eax
cdqe
mov rcx, qword [0x1800c6830]
add rax, rcx
mov ecx, dword [rsp + 0x50]
mov edx, dword [0x1800c6820]
sub edx, ecx
mov ecx, edx
mov ecx, ecx
imul rax, rcx
mov rcx, qword [rsp + 0x2d0]
sub rcx, rax
mov rax, rcx
mov word [0x1800c6828], ax
jmp 0x180064fbd
mov rax, qword [0x1800c6818]
test rax, rax
jne 0x180064f56
movsx eax, word [0x1800c68a8]
test eax, eax
jne 0x180064f56
mov dword [rsp + 0x140], 0
jmp 0x180064f61
mov dword [rsp + 0x140], 1
movsx eax, byte [rsp + 0x36]
test eax, eax
je 0x180064f7f
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x180064f7f
mov dword [rsp + 0x13c], 1
jmp 0x180064f8a
mov dword [rsp + 0x13c], 0
mov eax, dword [rsp + 0x13c]
cmp dword [rsp + 0x140], eax
je 0x180064fbd
movzx eax, word [0x1800c6898]
movzx eax, ax
and eax, 0x6d
mov byte [rsp + 0x36], al
movsx eax, byte [0x1800c675e]
sub eax, 0xbda4d1f6
mov byte [0x1800c675e], al
mov eax, dword [0x180895050]
mov dword [rsp + 0xfc], eax
mov eax, dword [str.g]
mov eax, dword [rsp + 0xfc]
add eax, 0x8bcb
mov dword [rsp + 0x14c], eax
movzx eax, byte [0x1800c679f]
test eax, eax
jne 0x180064ffb
mov dword [rsp + 0x144], 1
jmp 0x180065006
mov dword [rsp + 0x144], 0
mov eax, dword [rsp + 0x58]
test eax, eax
jne 0x18006501b
mov dword [rsp + 0x148], 1
jmp 0x180065026
mov dword [rsp + 0x148], 0
movzx eax, byte [0x1800c6776]
movzx eax, al
and eax, 0x42
movzx ecx, byte [rsp + 0x37]
movsx ecx, cl
imul ecx, dword [rsp + 0x144]
imul eax, ecx
movzx ecx, byte [rsp + 0x30]
movzx edx, byte [rsp + 0x32]
sub ecx, edx
not ecx
add ecx, dword [rsp + 0x148]
sub eax, ecx
mov byte [rsp + 0x36], al
mov eax, dword [rsp + 0xfc]
add eax, 0x86be
mov dword [rsp + 0x30c], eax
mov eax, dword [rsp + 0xfc]
add eax, 0x8607
mov dword [rsp + 0x264], eax
movzx eax, word [rsp + 0x3c]
mov ecx, dword [str.g]
cmp eax, ecx
ja 0x1800650ff
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x1800650ba
imul eax, dword [rsp + 0x48], 0xe23f
mov eax, eax
mov rcx, qword [rsp + 0x78]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
jmp 0x1800650ff
mov rax, qword [rsp + 0x78]
not rax
test rax, rax
je 0x1800650ff
movzx eax, word [rsp + 0x3c]
add eax, 0x8912390c
mov dword [rsp + 0x44], eax
movzx eax, byte [0x1800c6773]
movsx eax, al
movzx ecx, word [0x1800c6824]
movzx ecx, cx
add eax, ecx
movzx ecx, byte [0x1800c6773]
movsx ecx, cl
or ecx, eax
mov eax, ecx
mov byte [0x1800c6773], al
mov eax, dword [rsp + 0x14c]
or eax, 0xdda7
mov ecx, dword [rsp + 0x264]
mov edx, dword [rsp + 0x14c]
imul ecx, edx
add eax, ecx
mov ecx, dword [rsp + 0x268]
imul ecx, ecx, 0x178
imul ecx, ecx, 0
mov edx, dword [rsp + 0x26c]
add edx, 0x178
imul edx, edx, 0
imul ecx, edx
mov edx, 0xb6cf0cdc
lea rax, [rax + rdx]
lea eax, [rax + rcx]
mov dword [rsp + 0x248], eax
mov byte [0x1800c679e], 1
movzx eax, byte [0x1800c675b]
movzx eax, al
sub eax, 0xde1d1eb9
movzx ecx, byte [0x1800c675f]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [0x1800c675f], al
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x88]
imul rax, rcx
mov qword [rsp + 0xa8], rax
movzx eax, byte [0x1800c679e]
mov byte [rsp + 0x150], al
cmp byte [rsp + 0x150], 0
je 0x1800651be
cmp byte [rsp + 0x150], 1
je 0x1800651d5
jmp 0x1800651ee
mov eax, dword [rsp + 0x44]
sub eax, 0xf603
mov byte [rsp + 0x30], al
mov dword [rsp + 0x48], 0x1555f4cd
jmp 0x1800651ee
movzx eax, word [0x1800c6824]
movzx eax, ax
sub eax, 0x57
mov ecx, dword [rsp + 0x54]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x54], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xec], eax
mov rax, qword [rsp + 0x70]
sub rax, qword [rsp + 0x78]
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0xec]
add eax, 0x61f
mov dword [rsp + 0x254], eax
movzx eax, word [0x1800c68b8]
movsx ecx, word [0x1800c68d0]
and eax, ecx
mov word [0x1800c68b8], ax
mov eax, dword [rsp + 0xec]
add eax, 0x743
mov dword [rsp + 0x310], eax
mov eax, dword [rsp + 0xec]
add eax, 0x6d6
mov dword [rsp + 0x258], eax
mov eax, dword [rsp + 0x40]
dec eax
mov dword [rsp + 0x40], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0x48], eax
mov qword [rsp + 0xc8], 0
mov eax, dword [rsp + 0x50]
add eax, dword [rsp + 0x48]
test eax, eax
jne 0x18006528d
mov byte [rsp + 0x5d], 1
jmp 0x180065292
mov byte [rsp + 0x5d], 0
movzx eax, byte [rsp + 0x5d]
mov byte [rsp + 0x31], al
mov dword [rsp + 0x1ec], 0
mov qword [rsp + 0x2c0], 0
movsx eax, word [0x1800c68d0]
movzx ecx, byte [0x1800c6773]
movsx ecx, cl
sub eax, ecx
movsx ecx, word [0x1800c68d0]
add ecx, eax
mov eax, ecx
mov word [0x1800c68d0], ax
mov qword [rsp + 0x98], 0
mov qword [rsp + 0x108], 0
mov qword [rsp + 0x218], 0
mov qword [rsp + 0x230], 0
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x280], 0
movzx eax, byte [rsp + 0x38]
movabs rcx, 0x4d19c4bddd783
sub rax, rcx
mov rcx, qword [rsp + 0x78]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
movzx eax, byte [rsp + 0x32]
mov ecx, dword [rsp + 0x58]
sub eax, ecx
movzx ecx, byte [rsp + 0x32]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x32], al
mov qword [rsp + 0x2e0], 0
mov dword [rsp + 0x48], 3
mov eax, dword [rsp + 0x58]
mov eax, eax
mov rcx, qword [rsp + 0xa8]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0xa8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xa8], rax
movzx eax, word [0x1800c682c]
movzx eax, ax
sub eax, 0x9d2c7d98
mov eax, eax
mov qword [0x1800c68c8], rax
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0xb4], eax
cmp dword [rsp + 0xb4], 0
je 0x1800653e4
cmp dword [rsp + 0xb4], 1
je 0x1800653f9
cmp dword [rsp + 0xb4], 2
je 0x180065420
cmp dword [rsp + 0xb4], 3
je 0x180065427
jmp 0x180065463
movzx eax, byte [0x1800c679f]
add eax, 0xe1
cdqe
mov qword [rsp + 0x78], rax
jmp 0x180065463
movsx rax, byte [rsp + 0x35]
movabs rcx, 0xfc657f557e80c
add rax, rcx
mov dword [0x1800c68bc], eax
mov eax, 0x272d
mov word [0x1800c68d0], ax
jmp 0x180065463
mov byte [rsp + 0x32], 0x62
jmp 0x180065463
movzx eax, byte [rsp + 0x32]
test eax, eax
je 0x18006543d
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x154], eax
jmp 0x180065449
movzx eax, byte [rsp + 0x32]
mov dword [rsp + 0x154], eax
movzx eax, byte [rsp + 0x154]
mov byte [rsp + 0x36], al
movzx eax, word [0x180895050]
mov word [0x1800c6774], ax
mov qword [rsp + 0x220], 0
movzx eax, byte [rsp + 0x30]
imul eax, eax, 0x37a38b59
test eax, eax
jne 0x18006548c
mov qword [rsp + 0x2d8], 1
jmp 0x180065498
mov qword [rsp + 0x2d8], 0
mov rax, qword [0x1800c6838]
sub rax, qword [0x1800c6870]
not rax
mov rcx, qword [rsp + 0x2d8]
xor rcx, rax
mov rax, rcx
not rax
mov word [0x1800c6880], ax
mov qword [rsp + 0x288], 0
movsx rax, byte [rsp + 0x31]
movabs rcx, 0xd2fb5af2f3f10
add rax, rcx
mov byte [rsp + 0x38], al
mov dword [0x1800c6820], 0xef4a2911
lea rax, [rsp + 0x90]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0x90]
call fcn.180076460
mov rcx, rax
call fcn.1800777c0
mov qword [rsp + 0x2e8], rax
mov eax, 3
mov word [0x1800c6854], ax
mov eax, dword [0x1800c685c]
add eax, 0x18a9c899
mov byte [rsp + 0x36], al
movzx eax, word [0x1800c6854]
movzx eax, ax
mov dword [rsp + 0xb8], eax
cmp dword [rsp + 0xb8], 0
je 0x180065578
cmp dword [rsp + 0xb8], 1
je 0x1800655ae
cmp dword [rsp + 0xb8], 2
je 0x1800655cf
cmp dword [rsp + 0xb8], 3
je 0x1800655e3
jmp 0x180065605
mov eax, 2
imul rax, rax, 0x3a59
lea rcx, [0x180a6a590]
movzx eax, word [rcx + rax]
mov rcx, qword [rsp + 0x78]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov eax, dword [0x1800c68ac]
sub eax, 0x62
mov dword [rsp + 0x60], eax
jmp 0x180065605
imul eax, dword [rsp + 0x48], 0x5a
mov word [0x1800c6828], ax
movzx eax, byte [0x1800c6777]
sar eax, 7
cdqe
mov qword [0x1800c6818], rax
jmp 0x180065605
movsx eax, word [0x1800c6858]
sub eax, 0x15138ca0
mov byte [0x1800c6777], al
jmp 0x180065605
movzx eax, word [0x1800c6864]
cwde
add eax, 0x7d36
mov dword [rsp + 0x50], eax
mov rax, qword [0x1800c6848]
add rax, 0xf0de
mov dword [rsp + 0x40], eax
mov qword [rsp + 0x210], 0
movzx eax, word [0x1800c67f4]
movsx rax, ax
mov rcx, qword [rsp + 0x70]
cmp rax, rcx
ja 0x180065628
jmp 0x180065648
movzx eax, byte [0x1800c675f]
dec al
mov byte [0x1800c675f], al
movabs rax, 0x30761f8a2c91a
mov qword [0x1800c68c0], rax
mov dword [rsp + 0xa0], 0
mov byte [rsp + 0x34], 1
mov eax, dword [rsp + 0x54]
imul eax, eax, 0xa709
mov byte [rsp + 0x32], al
movsx eax, byte [rsp + 0x31]
sub eax, 0x96ff
mov byte [0x1800c675f], al
movzx eax, byte [rsp + 0x34]
mov byte [rsp + 0x158], al
cmp byte [rsp + 0x158], 0
je 0x180065698
cmp byte [rsp + 0x158], 1
je 0x1800656ad
jmp 0x1800656b9
movzx eax, byte [0x1800c679f]
mov ecx, dword [rsp + 0x40]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x40], eax
jmp 0x1800656b9
mov eax, dword [0x180895050]
mov dword [0x1800c68bc], eax
mov qword [rsp + 0x68], 0
movzx eax, byte [0x1800c675f]
movzx eax, al
movzx ecx, byte [0x1800c6773]
movsx ecx, cl
mov qword [rsp + 0x2f0], 0
mov eax, dword [str.g]
test eax, eax
je 0x180065755
movzx eax, word [0x1800c6774]
movzx eax, ax
mov rcx, qword [0x1800c68c8]
cmp rax, rcx
jne 0x180065730
movsx eax, word [0x1800c68d0]
mov ecx, dword [0x1800c68bc]
sub eax, ecx
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
or eax, ecx
movzx ecx, word [0x1800c682c]
movzx ecx, cx
imul eax, ecx
mov dword [0x1800c68ac], eax
jmp 0x180065753
movzx eax, word [0x1800c68b8]
movsx ecx, byte [0x1800c675e]
sub eax, ecx
cdqe
mov rcx, qword [0x1800c6838]
xor rax, rcx
mov word [0x1800c675c], ax
jmp 0x18006576f
mov eax, dword [rsp + 0x44]
mov eax, eax
movabs rcx, 0x9aef2225f2776
sub rax, rcx
mov qword [0x1800c68c0], rax
mov eax, dword [rsp + 0x50]
add eax, 0x6050
mov word [0x1800c68d0], ax
movzx eax, byte [rsp + 0x33]
not eax
mov ecx, dword [rsp + 0x44]
imul ecx, eax
mov eax, ecx
mov eax, eax
mov qword [0x1800c68b0], rax
mov eax, dword [rsp + 0x60]
add eax, 0x243e
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x44]
add eax, 0xf1b566cc
mov ecx, dword [rsp + 0x60]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x1dc], 0
movsx eax, word [0x1800c6850]
mov eax, dword [rsp + 0x15c]
xor eax, 0x37d
mov ecx, dword [rsp + 0x15c]
xor ecx, 0x37d
xor eax, ecx
mov rcx, qword [rsp + 0x730]
mov dword [rcx], eax
cmp qword [rsp + 0x710], 0xffffffffffffffff
je 0x180065be8
mov rax, qword [0x1800c68a0]
movzx ecx, word [0x1800c67f4]
movsx rcx, cx
lea rax, [rcx + rax + 0x57685375]
mov word [0x1800c67f4], ax
mov edx, 1
mov ecx, 0x400
call fcn.180091dd4
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x70]
mov rcx, qword [0x1800c6838]
cmp rax, rcx
ja 0x180065916
movzx eax, byte [0x1800c675f]
movzx eax, al
movabs rcx, 0x398d2b0eda98a
cmp rax, rcx
jne 0x180065873
mov dword [rsp + 0x160], 1
jmp 0x18006587e
mov dword [rsp + 0x160], 0
movzx eax, word [0x1800c6898]
movzx eax, ax
not eax
cmp eax, dword [rsp + 0x160]
jle 0x180065911
mov rax, qword [0x1800c6848]
test rax, rax
jne 0x1800658ac
mov dword [rsp + 0x164], 1
jmp 0x1800658b7
mov dword [rsp + 0x164], 0
movzx eax, byte [rsp + 0x30]
mov ecx, dword [rsp + 0x164]
xor ecx, eax
mov eax, ecx
movzx ecx, word [0x1800c6774]
movzx ecx, cx
movsx edx, byte [rsp + 0x31]
add ecx, edx
add eax, ecx
test eax, eax
jne 0x1800658eb
mov dword [rsp + 0x168], 1
jmp 0x1800658f6
mov dword [rsp + 0x168], 0
movsx eax, byte [rsp + 0x31]
or eax, dword [rsp + 0x168]
mov byte [rsp + 0x35], al
mov rax, qword [0x1800c68b0]
mov byte [rsp + 0x35], al
jmp 0x180065996
movzx eax, word [0x1800c6824]
movzx eax, ax
test eax, eax
jne 0x180065931
mov dword [rsp + 0x16c], 1
jmp 0x18006593c
mov dword [rsp + 0x16c], 0
movzx eax, byte [rsp + 0x37]
movsx eax, al
mov ecx, dword [rsp + 0x16c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x180065996
mov eax, dword [rsp + 0x50]
add eax, 0x1452
mov dword [0x1800c686c], eax
mov eax, dword [rsp + 0x54]
test eax, eax
je 0x18006597b
mov rax, qword [0x1800c68c8]
mov qword [rsp + 0x2b8], rax
jmp 0x18006598b
mov eax, dword [0x1800c685c]
cdqe
mov qword [rsp + 0x2b8], rax
mov eax, dword [rsp + 0x2b8]
mov dword [rsp + 0x50], eax
lea rax, [rsp + 0x2c0]
mov qword [rsp + 0x20], rax
mov r9d, 0x400
mov r8, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x718]
mov rcx, qword [rsp + 0x710]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movsx eax, word [0x1800c6828]
test eax, eax
je 0x1800659e4
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x2b0], rax
jmp 0x1800659f7
movzx eax, byte [0x1800c6773]
movsx rax, al
mov qword [rsp + 0x2b0], rax
mov eax, dword [rsp + 0x2b0]
mov dword [str.g], eax
mov rax, qword [rsp + 0x218]
mov qword [rsp + 0x98], rax
movsx eax, word [0x1800c6828]
test eax, eax
je 0x180065a42
mov eax, 4
imul rax, rax, 0xb0
lea rcx, [0x1809c08c0]
movsx edx, byte [rsp + 0x34]
sub edx, dword [rcx + rax]
mov eax, edx
mov byte [rsp + 0x34], al
jmp 0x180065a61
movsx eax, byte [rsp + 0x35]
mov ecx, dword [0x1800c689c]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x1800c689c]
sub ecx, eax
mov eax, ecx
mov dword [0x1800c689c], eax
mov rax, qword [rsp + 0x98]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x108], rax
mov rax, qword [0x1800c6830]
movabs rcx, 0x425688c9f9507
sub rax, rcx
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x108]
mov eax, dword [rax + 0x50]
mov edx, 1
mov ecx, eax
call fcn.180091dd4
mov qword [rsp + 0x230], rax
mov rax, qword [rsp + 0x108]
mov eax, dword [rax + 0x50]
lea rcx, [rsp + 0x2c0]
mov qword [rsp + 0x20], rcx
mov r9d, eax
mov r8, qword [rsp + 0x230]
mov rdx, qword [rsp + 0x718]
mov rcx, qword [rsp + 0x710]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov dword [0x1800c68d4], 0
movzx eax, word [0x1800c6824]
movzx eax, ax
movzx ecx, word [0x1800c682c]
movzx ecx, cx
sub eax, ecx
mov word [0x1800c6824], ax
mov eax, dword [0x1800c68d4]
mov dword [rsp + 0x270], eax
cmp dword [rsp + 0x270], 0
je 0x180065b34
jmp 0x180065bb1
mov rax, qword [rsp + 0x88]
test rax, rax
jne 0x180065b4e
mov dword [rsp + 0x170], 1
jmp 0x180065b59
mov dword [rsp + 0x170], 0
movzx eax, byte [rsp + 0x30]
not eax
movsx ecx, word [0x1800c6850]
imul eax, ecx
movzx ecx, byte [rsp + 0x30]
movsx edx, byte [0x1800c679e]
sub ecx, edx
imul eax, ecx
movzx ecx, word [0x1800c682c]
movzx ecx, cx
mov edx, dword [rsp + 0x170]
sub edx, ecx
mov ecx, edx
xor eax, ecx
not eax
cdqe
mov qword [rsp + 0x78], rax
movzx eax, byte [rsp + 0x37]
movsx eax, al
sub eax, 0x2b42
cdqe
mov qword [0x1800c6848], rax
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x108], rax
jmp 0x18006601f
mov eax, dword [str.g]
mov eax, eax
mov rcx, qword [rsp + 0x70]
not rcx
cmp rax, rcx
jb 0x180065c40
mov eax, dword [rsp + 0x50]
not eax
movsx ecx, byte [0x1800c679e]
cmp eax, ecx
je 0x180065c1b
mov dword [rsp + 0x174], 1
jmp 0x180065c26
mov dword [rsp + 0x174], 0
mov eax, dword [rsp + 0x174]
not eax
test eax, eax
jne 0x180065c40
mov dword [rsp + 0x17c], 1
jmp 0x180065c4b
mov dword [rsp + 0x17c], 0
mov eax, dword [0x1800c68bc]
mov eax, eax
mov rcx, qword [rsp + 0x70]
cmp rax, rcx
jae 0x180065c6a
mov dword [rsp + 0x178], 1
jmp 0x180065c75
mov dword [rsp + 0x178], 0
mov eax, dword [rsp + 0x178]
cmp dword [rsp + 0x17c], eax
jne 0x180065d26
cmp qword [0x1800c6878], 0
je 0x180065ce1
mov eax, dword [rsp + 0x48]
add eax, 0x93
mov byte [rsp + 0x32], al
movzx eax, word [0x1800c6868]
mov rcx, qword [0x1800c6888]
xor rax, rcx
test rax, rax
jne 0x180065cc4
mov qword [rsp + 0x2a8], 1
jmp 0x180065cd0
mov qword [rsp + 0x2a8], 0
mov rax, qword [rsp + 0x2a8]
mov qword [0x1800c68c8], rax
jmp 0x180065d26
mov rax, qword [0x1800c68b0]
test rax, rax
jne 0x180065cfa
mov dword [rsp + 0x180], 1
jmp 0x180065d05
mov dword [rsp + 0x180], 0
movzx eax, byte [rsp + 0x32]
cmp dword [rsp + 0x180], eax
jg 0x180065d26
mov rax, qword [0x1800c68b0]
mov ecx, 0xa9b2e75c
add rax, rcx
mov byte [rsp + 0x36], al
mov rax, qword [rsp + 0x70]
mov rcx, qword [0x1800c68a0]
imul rax, rcx
mov qword [rsp + 0x70], rax
mov eax, dword [0x180895050]
mov dword [rsp + 0xf0], eax
mov dword [rsp + 0x40], 3
movzx eax, word [rsp + 0x3c]
xor eax, 0xf1
mov dword [0x1800c686c], eax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0xbc], eax
cmp dword [rsp + 0xbc], 0
je 0x180065d9c
cmp dword [rsp + 0xbc], 1
je 0x180065dad
cmp dword [rsp + 0xbc], 2
je 0x180065dca
cmp dword [rsp + 0xbc], 3
je 0x180065e77
jmp 0x180065e92
mov qword [rsp + 0xa8], 4
jmp 0x180065e92
movzx eax, word [rsp + 0x3c]
movabs rcx, 0xd52290c487543
add rax, rcx
mov dword [0x1800c689c], eax
jmp 0x180065e92
movsx eax, byte [rsp + 0x31]
mov ecx, dword [rsp + 0x58]
imul eax, ecx
test eax, eax
jne 0x180065de7
mov dword [rsp + 0x184], 1
jmp 0x180065df2
mov dword [rsp + 0x184], 0
mov eax, dword [str.g]
mov eax, eax
mov rcx, qword [0x1800c6848]
imul rax, rcx
movzx ecx, word [rsp + 0x3c]
mov rdx, qword [rsp + 0xa8]
sub rcx, rdx
imul rax, rcx
test rax, rax
jne 0x180065e2b
mov dword [rsp + 0x188], 1
jmp 0x180065e36
mov dword [rsp + 0x188], 0
mov eax, dword [rsp + 0x184]
imul eax, dword [rsp + 0x188]
mov byte [0x1800c6773], al
mov rax, qword [0x1800c68c0]
movabs rcx, 0xbc6c5eb611179
sub rax, rcx
not rax
mov ecx, dword [rsp + 0x54]
imul ecx, ecx, 0x245d0ae0
mov ecx, ecx
add rax, rcx
mov dword [rsp + 0x60], eax
jmp 0x180065e92
movzx eax, word [0x1800c6884]
movzx eax, ax
mov ecx, dword [0x1800c68ac]
imul ecx, eax
mov eax, ecx
mov dword [0x1800c68ac], eax
mov eax, dword [rsp + 0x238]
mov ecx, dword [rsp + 0xf0]
add eax, ecx
mov dword [rsp + 0x244], eax
movzx eax, word [0x1800c6884]
movzx eax, ax
movzx ecx, word [0x1800c6864]
movsx ecx, cx
cmp eax, ecx
jne 0x180065ece
mov dword [rsp + 0x190], 1
jmp 0x180065ed9
mov dword [rsp + 0x190], 0
movzx eax, word [0x1800c6884]
movzx eax, ax
cmp eax, 0x5a
jne 0x180065ef5
mov dword [rsp + 0x18c], 1
jmp 0x180065f00
mov dword [rsp + 0x18c], 0
mov eax, dword [rsp + 0x18c]
cmp dword [rsp + 0x190], eax
jge 0x180065f4e
mov eax, dword [rsp + 0x60]
mov eax, eax
mov rcx, qword [0x1800c68a0]
add rcx, rax
mov rax, rcx
mov rcx, qword [0x1800c68a0]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c68a0], rax
movzx eax, word [0x1800c6868]
mov ecx, dword [0x1800c68d4]
or eax, ecx
mov byte [0x1800c675f], al
jmp 0x180065f5c
mov rax, qword [rsp + 0x70]
sub rax, 0x6b
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x23c]
mov ecx, dword [rsp + 0xf0]
add eax, ecx
mov dword [rsp + 0xc0], eax
mov eax, dword [rsp + 0x240]
mov ecx, dword [rsp + 0xf0]
add eax, ecx
mov dword [rsp + 0x318], eax
mov eax, dword [rsp + 0x244]
mov ecx, dword [rsp + 0xc0]
sub eax, ecx
mov ecx, dword [rsp + 0xc0]
mov edx, dword [rsp + 0xc0]
add ecx, edx
sub eax, ecx
mov ecx, dword [rsp + 0x248]
mov edx, dword [rsp + 0xc0]
add ecx, edx
cmp eax, ecx
je 0x18006601f
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x180065fd6
movzx eax, byte [rsp + 0x30]
mov dword [rsp + 0x194], eax
jmp 0x180065fe1
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0x194], eax
movzx eax, byte [rsp + 0x194]
mov byte [rsp + 0x30], al
mov rax, qword [rsp + 0x718]
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x108], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x108]
cmp dword [rcx + rax + 0x88], 0
je 0x180067100
movzx eax, byte [rsp + 0x33]
movzx ecx, word [0x1800c6840]
sub eax, ecx
movzx ecx, byte [rsp + 0x33]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x33], al
movzx eax, word [0x1800c6884]
movzx eax, ax
mov dword [0x1800c68d4], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xf4], eax
mov eax, dword [rsp + 0xf4]
add eax, 0x72d
mov dword [rsp + 0x24c], eax
movsxd rax, dword [0x1800c68ac]
cmp rax, qword [0x1800c6870]
ja 0x1800660a6
mov dword [rsp + 0x19c], 1
jmp 0x1800660b1
mov dword [rsp + 0x19c], 0
cmp dword [0x1800c68ac], 0x54
jg 0x1800660c7
mov dword [rsp + 0x198], 1
jmp 0x1800660d2
mov dword [rsp + 0x198], 0
mov eax, dword [rsp + 0x198]
cmp dword [rsp + 0x19c], eax
jl 0x1800660fa
movzx eax, byte [rsp + 0x33]
mov ecx, 4
imul rcx, rcx, 0xe
lea rdx, [0x180a7e3d0]
mov dword [rdx + rcx], eax
mov eax, dword [rsp + 0xf4]
add eax, 0x60a
mov dword [rsp + 0x314], eax
movsx eax, byte [rsp + 0x35]
test eax, eax
je 0x180066144
lea rax, [rsp + 0x378]
lea rcx, str.LastName
mov rdi, rax
mov rsi, rcx
mov ecx, 0x12
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x378]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov byte [rsp + 0x33], al
mov eax, dword [rsp + 0xf4]
add eax, 0x4cb
mov dword [rsp + 0x250], eax
mov eax, dword [rsp + 0x24c]
add eax, 0x12a
mov ecx, dword [rsp + 0x250]
cmp eax, ecx
je 0x180067100
mov byte [rsp + 0x33], 1
movzx eax, byte [0x1800c6776]
movzx eax, al
sar eax, 4
cdqe
mov qword [0x1800c68c0], rax
movzx eax, byte [rsp + 0x33]
mov byte [rsp + 0x1a0], al
cmp byte [rsp + 0x1a0], 0
je 0x1800661b2
cmp byte [rsp + 0x1a0], 1
je 0x18006621a
jmp 0x180066253
mov eax, dword [rsp + 0x48]
movabs rcx, 0x659c4eba1a2f2
xor rax, rcx
movzx ecx, word [0x1800c6898]
movzx ecx, cx
sub rax, rcx
mov rcx, qword [0x1800c68c8]
not rcx
movzx edx, word [0x1800c68b8]
mov edi, dword [rsp + 0x58]
imul edx, edi
mov edx, edx
xor rcx, rdx
sub rax, rcx
test rax, rax
jne 0x180066202
mov dword [rsp + 0x1a4], 1
jmp 0x18006620d
mov dword [rsp + 0x1a4], 0
mov eax, dword [rsp + 0x1a4]
mov dword [rsp + 0x54], eax
jmp 0x180066253
movsx eax, byte [rsp + 0x31]
movzx ecx, byte [rsp + 0x37]
movsx ecx, cl
add eax, ecx
movsx ecx, byte [rsp + 0x31]
add ecx, eax
mov eax, ecx
mov byte [rsp + 0x31], al
movsx eax, word [0x1800c68d0]
not eax
mov ecx, dword [rsp + 0x50]
mov edx, dword [rsp + 0x48]
add edx, ecx
mov ecx, edx
not ecx
sub eax, ecx
mov byte [rsp + 0x38], al
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x108]
mov eax, dword [rcx + rax + 0x88]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x20]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2e0], rax
mov rax, qword [0x1800c68b0]
test rax, rax
jne 0x180066301
movzx eax, byte [rsp + 0x30]
test eax, eax
jne 0x1800662e5
mov dword [rsp + 0x1a8], 1
jmp 0x1800662f0
mov dword [rsp + 0x1a8], 0
movzx eax, word [0x1800c675c]
cwde
cmp dword [rsp + 0x1a8], eax
jge 0x180066303
jmp 0x180066313
movsx eax, word [0x1800c6828]
add eax, 0x6f7fa634
mov byte [rsp + 0x37], al
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x24]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x220], rax
mov eax, dword [0x1800c689c]
test eax, eax
je 0x18006636e
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x18006636c
movzx eax, byte [rsp + 0x37]
movsx eax, al
sub eax, 0x686aae3
cdqe
mov qword [0x1800c6870], rax
mov rax, qword [0x1800c68c8]
shr rax, 8
mov byte [rsp + 0x34], al
jmp 0x180066397
movzx eax, word [0x180895050]
mov word [0x1800c68b8], ax
movsx eax, byte [rsp + 0x35]
mov ecx, 4
imul rcx, rcx, 0x28a9
lea rdx, [0x1808a80e0]
mov dword [rdx + rcx], eax
mov dword [rsp + 0x80], 0
jmp 0x1800663b4
mov eax, dword [rsp + 0x80]
inc eax
mov dword [rsp + 0x80], eax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x18]
cmp dword [rsp + 0x80], eax
jae 0x180067100
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x180066455
movsx rax, word [0x1800c68d0]
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rcx
test rax, rax
jne 0x1800663fc
mov qword [rsp + 0x2a0], 1
jmp 0x180066408
mov qword [rsp + 0x2a0], 0
movsxd rax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x88]
not rcx
sub rax, rcx
add rax, qword [rsp + 0x2a0]
movsx ecx, word [0x1800c68d0]
xor ecx, 0x1006
movzx edx, word [0x1800c6884]
movzx edx, dx
movzx edi, byte [rsp + 0x33]
not edi
add edx, edi
add ecx, edx
movsxd rcx, ecx
add rax, rcx
not rax
mov qword [0x1800c68a0], rax
mov rax, qword [rsp + 0x88]
mov rcx, qword [0x1800c6818]
cmp rax, rcx
jne 0x180066476
mov dword [rsp + 0x1b0], 1
jmp 0x180066481
mov dword [rsp + 0x1b0], 0
mov rax, qword [rsp + 0x88]
cmp rax, 0x3f
jne 0x18006649c
mov dword [rsp + 0x1ac], 1
jmp 0x1800664a7
mov dword [rsp + 0x1ac], 0
mov eax, dword [rsp + 0x1ac]
cmp dword [rsp + 0x1b0], eax
jne 0x1800664b9
jmp 0x1800664ef
movsx eax, byte [0x1800c679e]
not eax
movsx ecx, word [0x1800c68d0]
cmp eax, ecx
je 0x1800664ef
movzx eax, byte [0x1800c679f]
movzx ecx, word [rsp + 0x4c]
movzx ecx, cx
sub eax, ecx
movzx ecx, byte [0x1800c679f]
add ecx, eax
mov eax, ecx
mov byte [0x1800c679f], al
mov eax, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x220]
movzx eax, word [rcx + rax*2]
mov rcx, qword [rsp + 0x280]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x18]
cmp dword [rsp + 0x80], eax
jae 0x180066567
mov dword [rsp + 0x58], 0xd1bb20d7
mov eax, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x2e0]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2e8], rax
lea rdx, [rsp + 0x210]
mov rcx, qword [rsp + 0x288]
call fcn.18006b2d0
mov dword [rsp + 0xa0], eax
cmp dword [rsp + 0xa0], 0
je 0x180066597
cmp dword [rsp + 0xa0], 1
jne 0x18006659c
jmp 0x1800663a4
call fcn.18005d310
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
add rax, 0x18
mov rdi, rax
xor eax, eax
mov ecx, 0x104
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x68]
add rax, 0x18
mov r8d, 0x103
mov rdx, qword [rsp + 0x2e8]
mov rcx, rax
call fcn.180091c70
mov rax, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x718]
mov qword [rax], rcx
mov eax, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x220]
movzx eax, word [rdx + rax*2]
mov word [rcx + 8], ax
mov eax, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x220]
movzx eax, word [rcx + rax*2]
mov rcx, qword [rsp + 0x280]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x718]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x10], rax
cmp dword [rsp + 0xa0], 2
jne 0x18006668c
movsx eax, word [0x1800c6850]
mov rax, qword [rsp + 0x210]
mov rcx, qword [rsp + 0x288]
add rcx, rax
mov rax, rcx
movsxd rax, dword [rax]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx + 0x10]
add rcx, qword [rsp + 0x210]
lea rax, [rax + rcx + 4]
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x220], rax
jmp 0x1800667de
cmp dword [rsp + 0xa0], 3
jne 0x180066777
movsx eax, byte [rsp + 0x31]
movzx ecx, byte [0x1800c6777]
cmp eax, ecx
jge 0x1800666b7
mov dword [rsp + 0x1b8], 1
jmp 0x1800666c2
mov dword [rsp + 0x1b8], 0
movsx eax, byte [rsp + 0x31]
cmp eax, 0x2b
jge 0x1800666d9
mov dword [rsp + 0x1b4], 1
jmp 0x1800666e4
mov dword [rsp + 0x1b4], 0
mov eax, dword [rsp + 0x1b4]
cmp dword [rsp + 0x1b8], eax
jle 0x180066731
mov rax, qword [0x1800c68b0]
test rax, rax
jne 0x18006670d
mov dword [rsp + 0x1bc], 1
jmp 0x180066718
mov dword [rsp + 0x1bc], 0
movsx eax, byte [rsp + 0x34]
mov ecx, dword [rsp + 0x1bc]
imul ecx, eax
mov eax, ecx
mov dword [0x1800c685c], eax
jmp 0x180066755
movzx eax, word [0x1800c6860]
cwde
movzx ecx, byte [0x1800c675f]
movzx ecx, cl
cmp eax, ecx
jle 0x180066755
movsxd rax, dword [rsp + 0x40]
sub rax, qword [rsp + 0x78]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x210]
mov eax, dword [rax + rcx]
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0x220], rax
jmp 0x1800667de
cmp dword [rsp + 0xa0], 4
jne 0x1800667de
mov eax, dword [rsp + 0x40]
sub eax, 0xc176
mov dword [rsp + 0x58], eax
movzx eax, word [0x1800c675c]
cwde
add eax, 0xe0
movzx ecx, word [0x1800c6864]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [0x1800c6864], ax
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x68]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x210]
mov ecx, dword [rcx + rdx]
mov rdx, qword [rsp + 0x68]
mov rax, qword [rax + rcx + 6]
mov qword [rdx + 0x220], rax
mov r8d, 0x30
lea rdx, [rsp + 0x390]
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax + 0x220]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
mov qword [rsp + 0x2f0], rax
cmp qword [rsp + 0x2f0], 0
jne 0x1800669a0
movzx eax, byte [rsp + 0x30]
movzx ecx, word [0x1800c6884]
movzx ecx, cx
imul eax, ecx
mov ecx, dword [rsp + 0x44]
mov edx, dword [0x1800c689c]
sub ecx, edx
not ecx
movzx edx, word [rsp + 0x3c]
movzx edi, word [0x1800c6864]
movsx edi, di
imul edx, edi
sub ecx, edx
not ecx
and eax, ecx
mov word [0x1800c6854], ax
mov rax, qword [rsp + 0x728]
cmp qword [rsp + 0xc8], rax
jae 0x1800668dd
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x68]
mov qword [rax + rcx*8], rdx
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x18006688e
jmp 0x1800668ca
movzx eax, word [0x1800c682c]
movzx eax, ax
add eax, 0x5f3a
mov dword [rsp + 0x58], eax
mov eax, 2
imul rax, rax, 0xe
lea rcx, [0x180b09410]
movsx rax, word [rcx + rax]
mov rcx, qword [0x1800c6848]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c6848], rax
mov rax, qword [rsp + 0xc8]
inc rax
mov qword [rsp + 0xc8], rax
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x1800668f4
mov eax, dword [0x180895050]
mov qword [0x1800c6838], rax
jmp 0x180066970
mov eax, dword [rsp + 0x60]
test eax, eax
je 0x180066940
mov rax, qword [0x1800c6870]
sub rax, 0x6da9
mov word [0x1800c6864], ax
cmp dword [rsp + 0x40], 0
je 0x180066924
mov eax, dword [rsp + 0x50]
mov dword [rsp + 0x1c0], eax
jmp 0x18006692f
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x1c0], eax
movzx eax, word [rsp + 0x1c0]
mov word [0x1800c68d0], ax
jmp 0x180066970
movzx eax, word [0x1800c6774]
movzx eax, ax
test eax, eax
je 0x180066970
movzx eax, byte [0x180895050]
mov byte [0x1800c679e], al
movzx eax, word [0x1800c6898]
movzx eax, ax
add eax, 0xcaab
mov byte [0x1800c675f], al
mov rax, qword [rsp + 0x730]
mov eax, dword [rax]
inc eax
mov rcx, qword [rsp + 0x730]
mov dword [rcx], eax
mov dword [rsp + 0x1ec], 4
lea rcx, [rsp + 0x68]
call fcn.18005f110
jmp 0x1800663a4
mov rax, qword [rsp + 0x718]
cmp qword [rsp + 0x398], rax
jne 0x180066a39
movzx eax, word [0x1800c6860]
cwde
test eax, eax
je 0x1800669d2
movsx eax, word [0x1800c6850]
mov dword [rsp + 0x1c4], eax
jmp 0x1800669e0
movzx eax, word [0x1800c6868]
mov dword [rsp + 0x1c4], eax
movzx eax, word [rsp + 0x1c4]
mov word [rsp + 0x3c], ax
movzx eax, word [0x1800c6898]
movzx eax, ax
test eax, eax
je 0x180066a0c
mov rax, qword [0x1800c68a0]
mov qword [rsp + 0x2f8], rax
jmp 0x180066a1c
movsx rax, word [0x1800c68d0]
mov qword [rsp + 0x2f8], rax
movzx eax, byte [rsp + 0x2f8]
mov byte [0x1800c675f], al
lea rcx, [rsp + 0x68]
call fcn.18005f110
jmp 0x1800663a4
mov byte [rsp + 0x33], 4
movzx eax, word [0x180895050]
mov word [rsp + 0x3c], ax
movzx eax, byte [rsp + 0x33]
mov byte [rsp + 0xa4], al
cmp byte [rsp + 0xa4], 0
je 0x180066a8d
cmp byte [rsp + 0xa4], 1
je 0x180066ad0
cmp byte [rsp + 0xa4], 2
je 0x180066add
cmp byte [rsp + 0xa4], 3
je 0x180066af0
cmp byte [rsp + 0xa4], 4
je 0x180066b02
jmp 0x180066b2a
movsx eax, word [0x1800c6858]
test eax, eax
je 0x180066aa8
movsx eax, word [0x1800c6828]
mov dword [rsp + 0x1c8], eax
jmp 0x180066ab9
movzx eax, word [0x1800c6884]
movzx eax, ax
mov dword [rsp + 0x1c8], eax
mov eax, dword [rsp + 0x1c8]
mov dword [rsp + 0x44], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0x58], eax
jmp 0x180066b2a
movzx eax, byte [rsp + 0x30]
dec al
mov byte [rsp + 0x30], al
jmp 0x180066b2a
movzx eax, byte [rsp + 0x30]
movsx ecx, byte [rsp + 0x35]
imul eax, ecx
mov byte [rsp + 0x30], al
jmp 0x180066b2a
movzx eax, byte [rsp + 0x32]
movzx ecx, word [rsp + 0x3c]
sub eax, ecx
mov byte [rsp + 0x32], al
jmp 0x180066b2a
mov eax, dword [rsp + 0x40]
dec eax
mov dword [rsp + 0x40], eax
movsx eax, byte [rsp + 0x35]
test eax, eax
jne 0x180066b1c
mov byte [rsp + 0x5e], 1
jmp 0x180066b21
mov byte [rsp + 0x5e], 0
movzx eax, byte [rsp + 0x5e]
mov byte [rsp + 0x36], al
lea rax, [rsp + 0x4d0]
mov rdi, rax
xor eax, eax
mov ecx, 0x104
rep stosb byte [rdi], al
mov r9d, 0x104
lea r8, [rsp + 0x4d0]
mov rdx, qword [rsp + 0x718]
mov rcx, qword [rsp + 0x710]
call fcn.180062cc0
movzx eax, word [0x1800c6854]
movzx eax, ax
movzx ecx, word [0x1800c6824]
movzx ecx, cx
cmp eax, ecx
jl 0x180066b86
mov dword [rsp + 0x1d0], 1
jmp 0x180066b91
mov dword [rsp + 0x1d0], 0
movzx eax, word [0x1800c6854]
movzx eax, ax
cmp eax, 9
jl 0x180066bad
mov dword [rsp + 0x1cc], 1
jmp 0x180066bb8
mov dword [rsp + 0x1cc], 0
mov eax, dword [rsp + 0x1cc]
cmp dword [rsp + 0x1d0], eax
jl 0x180066bca
jmp 0x180066c09
mov rax, qword [0x1800c68b0]
test rax, rax
je 0x180066c09
mov rax, qword [0x1800c6878]
sub rax, 0x26d4c9a7
movsx rcx, byte [rsp + 0x31]
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x31], al
mov eax, dword [0x1800c685c]
imul eax, eax, 0x966a
cdqe
mov qword [rsp + 0xa8], rax
lea rax, [rsp + 0x5e0]
mov rdi, rax
xor eax, eax
mov ecx, 0x104
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x30]
xor rax, qword [rsp + 0x78]
mov byte [rsp + 0x30], al
mov r9d, 0x104
lea r8, [rsp + 0x5e0]
mov rdx, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x710]
call fcn.180062cc0
lea rax, [rsp + 0x91]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0x91]
call fcn.180076570
mov rcx, rax
call fcn.180077800
mov rdx, rax
lea rcx, [rsp + 0x4d0]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x180066cfd
lea rax, [rsp + 0x92]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0x92]
call fcn.180076690
mov rcx, rax
call fcn.180077820
mov rdx, rax
lea rcx, [rsp + 0x5e0]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x180066cfd
movsx eax, byte [0x1800c675e]
movsx ecx, word [0x1800c6880]
imul eax, ecx
movsx ecx, byte [0x1800c675e]
and ecx, eax
mov eax, ecx
mov byte [0x1800c675e], al
lea rcx, [rsp + 0x68]
call fcn.18005f110
jmp 0x1800663a4
mov eax, dword [rsp + 0x50]
cmp dword [rsp + 0x40], eax
je 0x180066d14
mov dword [rsp + 0x1d8], 1
jmp 0x180066d1f
mov dword [rsp + 0x1d8], 0
cmp dword [rsp + 0x40], 0x2c
je 0x180066d33
mov dword [rsp + 0x1d4], 1
jmp 0x180066d3e
mov dword [rsp + 0x1d4], 0
mov eax, dword [rsp + 0x1d4]
cmp dword [rsp + 0x1d8], eax
jle 0x180066d73
mov rax, qword [0x1800c68c8]
mov dword [0x1800c68d4], eax
movzx eax, word [0x1800c68b8]
movsx ecx, byte [rsp + 0x34]
imul eax, ecx
mov word [0x1800c68b8], ax
jmp 0x180066da5
mov rax, qword [rsp + 0xa8]
test rax, rax
je 0x180066da5
movzx eax, word [rsp + 0x4c]
movzx eax, ax
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x48]
mov rcx, qword [0x1800c6888]
sub rcx, rax
mov rax, rcx
mov qword [0x1800c6888], rax
lea rax, [rsp + 0x3c0]
mov rdi, rax
xor eax, eax
mov ecx, 0x104
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x70]
add rax, 0x54
mov qword [rsp + 0x78], rax
mov r9d, 0x104
lea r8, [rsp + 0x3c0]
mov rdx, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x710]
call fcn.180062cc0
mov dword [rsp + 0x1dc], eax
mov rax, qword [rsp + 0x68]
add rax, 0x11c
mov r8d, 0x103
lea rdx, [rsp + 0x3c0]
mov rcx, rax
call fcn.180091c70
mov rax, qword [rsp + 0x68]
add rax, 0x11c
mov qword [rsp + 0x330], rax
mov qword [rsp + 0x228], 0xffffffffffffffff
inc qword [rsp + 0x228]
mov rax, qword [rsp + 0x330]
mov rcx, qword [rsp + 0x228]
cmp byte [rax + rcx], 0
jne 0x180066e31
mov rax, qword [rsp + 0x228]
test rax, rax
je 0x180066f16
movsx rax, byte [rsp + 0x34]
movabs rcx, 0x7921beb9ddbc2
imul rax, rcx
mov word [0x1800c6840], ax
lea rax, [rsp + 0x3c0]
mov rdi, rax
xor eax, eax
mov ecx, 0x104
rep stosb byte [rdi], al
movzx eax, byte [rsp + 0x32]
inc al
mov byte [rsp + 0x32], al
mov r9d, 0x104
lea r8, [rsp + 0x3c0]
mov rdx, qword [rsp + 0x718]
mov rcx, qword [rsp + 0x710]
call fcn.180062cc0
mov dword [rsp + 0x1dc], eax
mov rax, qword [rsp + 0x68]
add rax, 0x11c
lea rdx, [rsp + 0x3c0]
mov rcx, rax
call fcn.1800753a0
test eax, eax
je 0x180066f16
movzx eax, byte [rsp + 0x32]
mov ecx, dword [0x1800c68bc]
sub ecx, eax
mov eax, ecx
mov dword [0x1800c68bc], eax
movzx eax, byte [rsp + 0x30]
imul rax, qword [rsp + 0x78]
mov byte [rsp + 0x30], al
lea rcx, [rsp + 0x68]
call fcn.18005f110
jmp 0x1800663a4
mov rax, qword [rsp + 0x728]
cmp qword [rsp + 0xc8], rax
jae 0x180066fc0
movzx eax, byte [rsp + 0x30]
test eax, eax
je 0x180066f37
jmp 0x180066f94
movzx eax, byte [rsp + 0x32]
test eax, eax
je 0x180066f4f
mov eax, dword [rsp + 0x60]
shl eax, 3
mov dword [str.g], eax
jmp 0x180066f94
movsx eax, byte [rsp + 0x35]
movzx ecx, byte [rsp + 0x32]
cmp eax, ecx
jge 0x180066f94
mov rax, qword [0x1800c6890]
test rax, rax
je 0x180066f94
movzx eax, word [0x1800c6860]
cwde
test eax, eax
je 0x180066f94
movsx eax, byte [rsp + 0x34]
sub eax, 0xa
cdqe
mov qword [0x1800c6848], rax
movzx eax, word [rsp + 0x3c]
sub eax, 0x9f70f00
mov byte [rsp + 0x33], al
mov rax, qword [rsp + 0x720]
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x68]
mov qword [rax + rcx*8], rdx
mov rax, qword [rsp + 0xc8]
inc rax
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0xa8]
test rax, rax
je 0x180066ff7
movzx eax, byte [rsp + 0x30]
sub eax, 0xe0c89d9b
mov byte [rsp + 0x37], al
movsx rax, byte [rsp + 0x31]
movabs rcx, 0x6fc1c2648b544
sub rax, rcx
mov byte [rsp + 0x33], al
jmp 0x1800670e5
mov eax, dword [str.g]
mov ecx, dword [0x1800c685c]
not ecx
cmp eax, ecx
ja 0x180067016
mov dword [rsp + 0x1e4], 1
jmp 0x180067021
mov dword [rsp + 0x1e4], 0
movzx eax, word [0x1800c6864]
cwde
test eax, eax
jne 0x180067043
movsx eax, byte [rsp + 0x31]
test eax, eax
je 0x180067043
mov dword [rsp + 0x1e0], 1
jmp 0x18006704e
mov dword [rsp + 0x1e0], 0
mov eax, dword [rsp + 0x1e0]
cmp dword [rsp + 0x1e4], eax
jg 0x180067071
movsx eax, byte [rsp + 0x31]
sub eax, 0x91338e7e
mov word [0x1800c6880], ax
jmp 0x1800670e5
movsx eax, word [0x1800c68a8]
mov ecx, dword [rsp + 0x50]
imul ecx, eax
mov eax, ecx
test eax, eax
je 0x18006709d
movzx eax, word [rsp + 0x4c]
movzx eax, ax
add eax, 0xd342
cdqe
mov qword [0x1800c6878], rax
jmp 0x1800670e5
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x1800670e5
mov eax, dword [0x180895050]
mov dword [0x1800c68ac], eax
movsx eax, byte [rsp + 0x35]
test eax, eax
je 0x1800670ca
movsx eax, word [0x1800c6858]
mov dword [rsp + 0x1e8], eax
jmp 0x1800670d6
movzx eax, byte [rsp + 0x32]
mov dword [rsp + 0x1e8], eax
movzx eax, word [rsp + 0x1e8]
mov word [0x1800c6854], ax
mov rax, qword [rsp + 0x730]
mov eax, dword [rax]
inc eax
mov rcx, qword [rsp + 0x730]
mov dword [rcx], eax
jmp 0x1800663a4
mov eax, dword [rsp + 0x254]
imul eax, eax, 0x3dd
mov ecx, dword [rsp + 0x258]
imul ecx, ecx, 0x3c3
add ecx, 0x6b
cmp eax, ecx
je 0x180067163
movzx eax, word [0x180895050]
mov word [0x1800c6858], ax
cmp qword [rsp + 0x710], 0xffffffffffffffff
je 0x180067163
mov eax, dword [rsp + 0x54]
imul eax, dword [0x1800c686c]
mov dword [rsp + 0x54], eax
mov rcx, qword [rsp + 0x218]
call fcn.1800921b8
mov rcx, qword [rsp + 0x230]
call fcn.1800921b8
movzx eax, word [0x1800c6864]
mov byte [0x1800c675e], al
mov eax, dword [rsp + 0x1ec]
add rsp, 0x6f8
pop rdi
pop rsi
ret