Function at 0x1800ad9f0
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, 0x778
movzx eax, byte [str.U_This_legacy_API_is]
mov byte [rsp + 0xf0], al
movabs rax, 0x395e033000fb1
mov qword [rsp + 0xe0], rax
mov eax, 0xb5f3
mov word [rsp + 0x5c], ax
mov dword [rsp + 0x6c], 0xab
movzx eax, word [0x180146d08]
mov word [rsp + 0x58], ax
mov eax, 0x871d41d3
mov qword [rsp + 0x98], rax
movzx eax, word [0x180146d3c]
mov word [rsp + 0x44], ax
mov dword [rsp + 0x64], 0x2d0
mov byte [rsp + 0x42], 0xd5
movzx eax, byte [0x180146c41]
movzx eax, al
mov qword [rsp + 0xb8], rax
mov rax, qword [0x180146d68]
mov dword [rsp + 0x70], eax
movzx eax, byte [0x180146c44]
mov byte [rsp + 0x40], al
mov rax, qword [0x180146d18]
mov dword [rsp + 0x68], eax
mov byte [rsp + 0x41], 0x75
mov eax, 0x4c05
mov word [rsp + 0x50], ax
movzx eax, word [0x180146d28]
mov word [rsp + 0x60], ax
movzx eax, word [0x180146d28]
mov word [rsp + 0x48], ax
mov eax, 0x27c7
mov word [rsp + 0x54], ax
movsx rax, word [0x180146c5c]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0x90], 0xdd
mov qword [rsp + 0x78], 0x93
movzx eax, word [0x180146d2c]
mov word [rsp + 0x4c], ax
mov eax, dword [0x180146d38]
mov qword [rsp + 0xc8], rax
mov byte [rsp + 0xf1], 0x19
movzx eax, word [0x180146d08]
mov word [rsp + 0x304], ax
mov dword [rsp + 0x384], 0x528659c2
mov dword [rsp + 0x37c], 0x52c4d4d
movabs rax, 0x695862362eee5
mov qword [rsp + 0x3a0], rax
mov eax, 0x1964
mov word [rsp + 0x300], ax
mov eax, dword [0x180146c44]
mov dword [rsp + 0x380], eax
movzx eax, byte [0x180146bc7]
movsx rax, al
mov qword [rsp + 0x3a8], rax
mov eax, 0x6124
mov word [rsp + 0x2f0], ax
mov dword [rsp + 0x378], 0x45
mov qword [rsp + 0x3b0], 0xdc
movzx eax, byte [0x180146c87]
movzx eax, al
mov word [rsp + 0x2f8], ax
movzx eax, word [0x180146d28]
mov word [rsp + 0x2f4], ax
mov eax, 0xa47a70d1
mov qword [rsp + 0x3b8], rax
mov qword [rsp + 0x3c0], 0xc2
mov qword [rsp + 0x3c8], 0x29
movzx eax, word [0x180146d60]
and eax, 0x88
mov dword [0x180146c04], eax
mov eax, dword [0x181001ff0]
mov dword [rsp + 0x100], eax
lea rax, [rsp + 0x3e0]
lea rcx, str.return_client_requ
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x3e0]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov word [0x180146d10], ax
mov eax, dword [rsp + 0x100]
add eax, 0x1c2
mov dword [rsp + 0x30c], eax
mov eax, dword [rsp + 0x100]
add eax, 0x3c0
mov dword [rsp + 0x2fc], eax
mov eax, dword [rsp + 0x100]
add eax, 0x33
mov dword [rsp + 0xd8], eax
mov dword [rsp + 0x20], 0xc5
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov ecx, 0xd7
call fcn.1800950a0
mov word [rsp + 0x48], ax
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
jl 0x1800adca7
mov dword [rsp + 0x2ac], 1
jmp 0x1800adcb2
mov dword [rsp + 0x2ac], 0
movzx eax, word [rsp + 0x48]
cwde
cmp eax, 0x3a
jl 0x1800adcca
mov dword [rsp + 0x2a8], 1
jmp 0x1800adcd5
mov dword [rsp + 0x2a8], 0
mov eax, dword [rsp + 0x2a8]
cmp dword [rsp + 0x2ac], eax
jne 0x1800add58
movzx eax, byte [0x180146c2e]
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
cmp eax, ecx
jge 0x1800add17
movzx eax, word [rsp + 0x48]
cwde
mov ecx, dword [rsp + 0x6c]
sub eax, ecx
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x48], ax
jmp 0x1800add53
movsx eax, byte [rsp + 0x40]
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
add eax, ecx
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x90]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x90]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x90], rax
jmp 0x1800adde4
mov eax, dword [0x180146c04]
not eax
movsx ecx, word [0x180146c5c]
cmp eax, ecx
jge 0x1800add9b
mov eax, dword [0x180146d34]
mov eax, eax
add rax, qword [rsp + 0xc8]
mov dword [0x180146d34], eax
movzx eax, byte [0x180146c41]
movzx eax, al
sub eax, 0x9e92f337
mov eax, eax
mov qword [0x180146d68], rax
jmp 0x1800adde4
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x1800addcb
mov eax, 2
imul rax, rax, 0xd
lea rcx, [0x181083fd8]
movzx eax, word [rcx + rax]
mov ecx, dword [0x180146d4c]
add ecx, eax
mov eax, ecx
mov dword [0x180146d4c], eax
jmp 0x1800adde4
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x1800adde4
movzx eax, byte [0x180146c86]
sub eax, 0xa3dc
mov word [rsp + 0x44], ax
mov eax, dword [0x181001ff0]
mov dword [rsp + 0xf4], eax
mov rax, qword [0x180146d40]
cmp qword [rsp + 0x90], rax
jbe 0x1800ade0f
mov dword [rsp + 0x2b4], 1
jmp 0x1800ade1a
mov dword [rsp + 0x2b4], 0
cmp qword [rsp + 0x90], 0x4a
jbe 0x1800ade32
mov dword [rsp + 0x2b0], 1
jmp 0x1800ade3d
mov dword [rsp + 0x2b0], 0
mov eax, dword [rsp + 0x2b0]
cmp dword [rsp + 0x2b4], eax
jl 0x1800adf41
xor r9d, r9d
mov r8d, dword [0x180146d64]
mov edx, 0xc7
mov ecx, 0xf5
call fcn.180094760
mov byte [rsp + 0x40], al
movsx eax, byte [rsp + 0x40]
test eax, eax
je 0x1800adf35
mov rax, qword [0x180146cf0]
cmp qword [rsp + 0xc8], rax
je 0x1800adee3
movzx eax, byte [0x180146c41]
movzx eax, al
test eax, eax
jne 0x1800adea7
mov dword [rsp + 0x2b8], 1
jmp 0x1800adeb2
mov dword [rsp + 0x2b8], 0
movsx eax, word [0x180146d10]
movsx ecx, word [rsp + 0x44]
xor eax, ecx
mov ecx, dword [rsp + 0x2b8]
sub ecx, eax
mov eax, ecx
cdqe
mov rcx, qword [0x180146d68]
add rcx, rax
mov rax, rcx
mov qword [0x180146d50], rax
jmp 0x1800adf33
movsx eax, word [0x180146d5c]
movsx ecx, word [0x180146d5c]
not ecx
cmp eax, ecx
jl 0x1800adf04
mov dword [rsp + 0x2bc], 1
jmp 0x1800adf0f
mov dword [rsp + 0x2bc], 0
movzx eax, byte [0x180146c2f]
movsx eax, al
cmp eax, dword [rsp + 0x2bc]
jge 0x1800adf33
movzx eax, word [rsp + 0x58]
movzx eax, ax
shl eax, 5
mov byte [0x180146c2e], al
jmp 0x1800adf3f
mov dword [0x180146d4c], 8
jmp 0x1800adf88
mov eax, dword [0x180146c44]
shl eax, 6
mov eax, eax
mov qword [0x180146d00], rax
movzx eax, byte [0x180146bc7]
movsx eax, al
sub eax, dword [rsp + 0x68]
test eax, eax
jne 0x1800adf72
mov dword [rsp + 0x2c0], 1
jmp 0x1800adf7d
mov dword [rsp + 0x2c0], 0
mov eax, dword [rsp + 0x2c0]
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0xf4]
add eax, 0x3c3
mov dword [rsp + 0x370], eax
movzx eax, word [rsp + 0x50]
cwde
movzx ecx, byte [rsp + 0x41]
movzx ecx, cl
add eax, ecx
test eax, eax
jne 0x1800adfbc
mov dword [rsp + 0x118], 1
jmp 0x1800adfc7
mov dword [rsp + 0x118], 0
mov eax, dword [rsp + 0x118]
mov dword [0x180146d34], eax
mov eax, dword [rsp + 0x70]
add eax, 0x397a
mov dword [0x180146c44], eax
mov eax, dword [rsp + 0xf4]
add eax, 0x28c
mov dword [rsp + 0x310], eax
mov eax, dword [rsp + 0xf4]
add eax, 0x268
mov dword [rsp + 0x374], eax
mov eax, dword [rsp + 0x6c]
mov eax, eax
movabs rcx, 0x21fe83268551c
sub rax, rcx
mov word [rsp + 0x58], ax
mov qword [rsp + 0xe8], 0
lea rax, [rsp + 0x3f8]
lea rcx, str.The_server_underst
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x3f8]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [0x180146bc7], al
mov dword [rsp + 0x2a4], 0
movzx eax, byte [0x180146c2f]
movsx eax, al
test eax, eax
jne 0x1800ae083
mov dword [rsp + 0x11c], 1
jmp 0x1800ae08e
mov dword [rsp + 0x11c], 0
mov eax, dword [rsp + 0x68]
cmp dword [rsp + 0x11c], eax
jbe 0x1800ae0a8
mov dword [rsp + 0x120], 1
jmp 0x1800ae0b3
mov dword [rsp + 0x120], 0
mov eax, dword [rsp + 0x120]
not eax
test eax, eax
je 0x1800ae137
movzx eax, word [rsp + 0x48]
movsx rax, ax
mov rcx, qword [0x180146d50]
sub rcx, rax
mov rax, rcx
movsx ecx, word [0x180146d5c]
movsx edx, word [0x180146d3c]
not edx
add ecx, edx
movsxd rcx, ecx
cmp rax, rcx
je 0x1800ae0fd
mov dword [rsp + 0x124], 1
jmp 0x1800ae108
mov dword [rsp + 0x124], 0
movzx eax, byte [0x180146c03]
movzx eax, al
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
sub eax, ecx
cmp eax, dword [rsp + 0x124]
jle 0x1800ae137
movsx eax, byte [0x180146caf]
add eax, 0x48b3
mov byte [0x180146c2f], al
mov qword [rsp + 0x358], 0
movzx eax, byte [0x180146c87]
movzx eax, al
sub eax, 0x872d
mov word [rsp + 0x4c], ax
movsx eax, word [rsp + 0x44]
mov ecx, dword [rsp + 0x64]
sub eax, ecx
mov word [rsp + 0x44], ax
mov qword [rsp + 0xc0], 0
movsx eax, word [rsp + 0x44]
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
cmp eax, ecx
je 0x1800ae191
mov dword [rsp + 0x12c], 1
jmp 0x1800ae19c
mov dword [rsp + 0x12c], 0
movsx eax, word [rsp + 0x44]
cmp eax, 0x3b
je 0x1800ae1b3
mov dword [rsp + 0x128], 1
jmp 0x1800ae1be
mov dword [rsp + 0x128], 0
mov eax, dword [rsp + 0x128]
cmp dword [rsp + 0x12c], eax
jge 0x1800ae1e1
mov eax, dword [0x180146d38]
shr eax, 6
mov word [rsp + 0x48], ax
jmp 0x1800ae262
movzx eax, byte [str.U_This_legacy_API_is]
movsx eax, al
not eax
cmp eax, 0x18
jl 0x1800ae218
mov eax, dword [0x180146d4c]
mov eax, eax
mov rcx, qword [rsp + 0x78]
imul rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x78]
and rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
jmp 0x1800ae262
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x1800ae224
jmp 0x1800ae262
movzx eax, word [rsp + 0x5c]
not eax
movzx ecx, byte [0x180146c43]
cmp eax, ecx
jg 0x1800ae243
mov dword [rsp + 0x130], 1
jmp 0x1800ae24e
mov dword [rsp + 0x130], 0
mov eax, dword [rsp + 0x130]
not eax
test eax, eax
je 0x1800ae262
mov byte [0x180146c43], 0x14
mov qword [rsp + 0x108], 0
movsx eax, word [rsp + 0x44]
shl eax, 8
mov dword [0x180146d48], eax
mov qword [rsp + 0x2e0], 0
mov rax, qword [rsp + 0xb8]
dec rax
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x2e8], 0
mov byte [rsp + 0x40], 0
mov rax, qword [rsp + 0x90]
add rax, 0x6a3c4bd
mov dword [rsp + 0x68], eax
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x308], al
cmp byte [rsp + 0x308], 0
je 0x1800ae2d6
jmp 0x1800ae330
cmp dword [0x180146c44], 0
je 0x1800ae2ed
movzx eax, byte [rsp + 0x40]
mov byte [rsp + 0x80], al
jmp 0x1800ae2fb
movzx eax, byte [str.U_This_legacy_API_is]
mov byte [rsp + 0x80], al
movsx eax, byte [rsp + 0x80]
mov dword [0x180146c04], eax
movzx eax, word [rsp + 0x4c]
movabs rcx, 0x855a073afb121
sub rax, rcx
not rax
movzx ecx, word [rsp + 0x54]
movzx ecx, cx
add rax, rcx
not rax
mov dword [rsp + 0x64], eax
mov qword [rsp + 0x110], 0
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x38
mov dword [rsp + 0x20], 0xfd
mov r9d, 0xed
xor r8d, r8d
xor edx, edx
mov ecx, dword [rsp + 0x6c]
call fcn.180094b10
mov byte [0x180146c41], al
movzx eax, byte [rsp + 0x41]
movzx eax, al
test eax, eax
jne 0x1800ae388
cmp qword [0x180146d00], 0
je 0x1800ae46a
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x1800ae3a0
mov eax, dword [rsp + 0x68]
add eax, 0x2e
mov byte [rsp + 0x40], al
jmp 0x1800ae468
movzx eax, word [0x180146d0c]
movzx eax, ax
test eax, eax
je 0x1800ae468
movsx eax, byte [0x180146caf]
mov ecx, dword [rsp + 0x64]
sub ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800ae3d2
mov dword [rsp + 0x138], 1
jmp 0x1800ae3dd
mov dword [rsp + 0x138], 0
mov eax, dword [rsp + 0x64]
test eax, eax
jne 0x1800ae3f2
mov dword [rsp + 0x134], 1
jmp 0x1800ae3fd
mov dword [rsp + 0x134], 0
mov eax, dword [rsp + 0x68]
imul eax, dword [rsp + 0x134]
mov ecx, dword [rsp + 0x138]
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x44], ax
mov eax, dword [0x180146d14]
not eax
mov ecx, dword [rsp + 0x64]
add ecx, eax
mov eax, ecx
movsx ecx, word [rsp + 0x44]
movzx edx, byte [0x180146bc7]
movsx edx, dl
add ecx, edx
add eax, ecx
test eax, eax
jne 0x1800ae44f
mov eax, 1
mov word [rsp + 0xd4], ax
jmp 0x1800ae459
xor eax, eax
mov word [rsp + 0xd4], ax
movzx eax, word [rsp + 0xd4]
mov word [0x180146d10], ax
jmp 0x1800ae4e3
movzx eax, word [rsp + 0x50]
movsx rax, ax
add rax, qword [rsp + 0xc8]
test rax, rax
jne 0x1800ae493
movzx eax, word [rsp + 0x5c]
add eax, 0x7b98618e
mov word [0x180146d0c], ax
jmp 0x1800ae4e3
movzx eax, word [rsp + 0x60]
movzx eax, ax
movsx ecx, word [rsp + 0x44]
add eax, ecx
cdqe
movabs rcx, 0x70ee603237f0f
cmp rax, rcx
jge 0x1800ae4e3
mov rax, qword [rsp + 0x98]
shl rax, 5
mov byte [rsp + 0x40], al
movzx eax, word [rsp + 0x5c]
mov rcx, qword [0x180146d20]
add rcx, rax
mov rax, rcx
or rax, 0x1958c59
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x320], 0
movzx eax, byte [str.U_This_legacy_API_is]
movsx eax, al
test eax, eax
jne 0x1800ae50a
mov dword [rsp + 0x13c], 1
jmp 0x1800ae515
mov dword [rsp + 0x13c], 0
movsx eax, word [0x180146d10]
cmp eax, dword [rsp + 0x13c]
jle 0x1800ae532
mov dword [rsp + 0x144], 1
jmp 0x1800ae53d
mov dword [rsp + 0x144], 0
movsx eax, word [0x180146c5c]
movzx ecx, word [rsp + 0x54]
movzx ecx, cx
cmp eax, ecx
jle 0x1800ae55d
mov dword [rsp + 0x140], 1
jmp 0x1800ae568
mov dword [rsp + 0x140], 0
mov eax, dword [rsp + 0x140]
cmp dword [rsp + 0x144], eax
jne 0x1800ae57a
jmp 0x1800ae58a
movzx eax, word [rsp + 0x54]
movzx eax, ax
sub eax, 0xb
mov word [rsp + 0x44], ax
mov qword [rsp + 0x330], 0
movzx eax, byte [rsp + 0x41]
movzx eax, al
movzx ecx, byte [0x180146bc7]
movsx ecx, cl
cmp eax, ecx
jg 0x1800ae5b9
mov dword [rsp + 0x14c], 1
jmp 0x1800ae5c4
mov dword [rsp + 0x14c], 0
movzx eax, byte [rsp + 0x41]
movzx eax, al
cmp eax, 0x43
jg 0x1800ae5de
mov dword [rsp + 0x148], 1
jmp 0x1800ae5e9
mov dword [rsp + 0x148], 0
mov eax, dword [rsp + 0x148]
mov qword [rsp + 0x2d0], 0
mov dword [0x180146d48], 2
movsx eax, word [0x180146d10]
test eax, eax
jne 0x1800ae61e
mov dword [rsp + 0x150], 1
jmp 0x1800ae629
mov dword [rsp + 0x150], 0
mov eax, dword [0x180146d2c]
not eax
mov ecx, dword [rsp + 0x150]
xor ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [0x180146d68]
lea rax, [rax + rcx - 0xf1]
mov qword [rsp + 0xb8], rax
movzx eax, byte [0x180146c42]
inc al
mov byte [0x180146c42], al
mov eax, dword [0x180146d48]
mov dword [rsp + 0xf8], eax
cmp dword [rsp + 0xf8], 0
je 0x1800ae694
cmp dword [rsp + 0xf8], 1
je 0x1800ae6a5
cmp dword [rsp + 0xf8], 2
je 0x1800ae6ce
jmp 0x1800ae73a
mov qword [rsp + 0xa8], 0xc
jmp 0x1800ae73a
movsx rax, word [rsp + 0x44]
movabs rcx, 0x283f66366af45
add rax, rcx
mov word [rsp + 0x54], ax
imul eax, dword [0x180146c44], 0x3c77
mov word [rsp + 0x5c], ax
jmp 0x1800ae73a
movzx eax, byte [0x180146c5b]
movsx eax, al
not eax
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
sub eax, ecx
test eax, eax
jne 0x1800ae6f5
mov dword [rsp + 0x154], 1
jmp 0x1800ae700
mov dword [rsp + 0x154], 0
movsx eax, word [rsp + 0x44]
mov ecx, dword [rsp + 0x154]
sub ecx, eax
mov eax, ecx
movzx ecx, byte [0x180146c87]
movzx ecx, cl
imul eax, ecx
cdqe
mov qword [0x180146d20], rax
movzx eax, word [rsp + 0x4c]
movzx ecx, byte [0x180146c5f]
imul eax, ecx
mov word [rsp + 0x4c], ax
mov qword [rsp + 0x318], 0
movzx eax, byte [0x180146c87]
movzx eax, al
movzx ecx, byte [0x180146c86]
cmp eax, ecx
jl 0x1800ae780
movzx eax, byte [0x180146c2e]
movsx ecx, word [0x180146d08]
sub eax, ecx
mov byte [0x180146c2e], al
mov eax, dword [0x180146d48]
add eax, 0xda
mov byte [rsp + 0x42], al
lea rax, [rsp + 0xb2]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0xb2]
call fcn.1800ca6d0
mov rcx, rax
call fcn.1800cbfe0
mov qword [rsp + 0x338], rax
movzx eax, word [rsp + 0x50]
cwde
sub eax, 0x925e
mov dword [0x180146d38], eax
mov dword [0x180146d4c], 0x20c03a0b
mov qword [rsp + 0x2c8], 0
mov eax, 2
imul rax, rax, 0x6054
lea rcx, [0x181211f30]
movzx edx, word [rsp + 0x68]
mov word [rcx + rax], dx
mov dword [rsp + 0xd0], 0
mov eax, dword [rsp + 0x68]
cmp dword [0x180146c44], eax
je 0x1800ae80d
jmp 0x1800ae865
mov eax, dword [0x180146d4c]
cmp eax, 0xf0954efa
jae 0x1800ae835
mov byte [0x180146c43], 1
movzx eax, word [rsp + 0x50]
cwde
imul eax, eax, 0xcc4c
mov dword [0x180146d34], eax
jmp 0x1800ae865
mov rax, qword [0x180146d68]
movabs rcx, 0x65c37aebafe37
cmp rax, rcx
jge 0x1800ae865
mov eax, 0x47
mov word [rsp + 0x60], ax
imul eax, dword [0x180146d2c], 0x314a
mov byte [0x180146c2f], al
mov qword [rsp + 0x88], 0
mov r8d, 0x92
xor edx, edx
xor ecx, ecx
call fcn.1800953a0
cdqe
mov qword [rsp + 0x90], rax
cmp qword [rsp + 0x90], 0
je 0x1800ae897
jmp 0x1800ae8b4
movzx eax, word [rsp + 0x54]
movzx eax, ax
mov rcx, qword [0x180146cf0]
imul rcx, rax
mov rax, rcx
mov qword [0x180146cf0], rax
movzx eax, byte [0x180146c2f]
movsx eax, al
movzx ecx, byte [0x180146c2f]
movsx ecx, cl
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0xa6
mov edx, dword [rsp + 0x68]
mov dword [rsp + 0x20], edx
mov r9d, 0xbe
xor r8d, r8d
mov edx, eax
call fcn.180094b10
mov byte [0x180146c03], al
movzx eax, byte [0x180146c03]
movzx eax, al
test eax, eax
je 0x1800ae911
mov dword [rsp + 0x15c], 1
jmp 0x1800ae91c
mov dword [rsp + 0x15c], 0
movzx eax, byte [0x180146c03]
movzx eax, al
cmp eax, 0x33
je 0x1800ae938
mov dword [rsp + 0x158], 1
jmp 0x1800ae943
mov dword [rsp + 0x158], 0
mov eax, dword [rsp + 0x158]
cmp dword [rsp + 0x15c], eax
jne 0x1800ae987
mov eax, dword [0x180146d48]
mov eax, eax
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0xe0]
sub rax, 0x383f
mov rcx, qword [0x180146d18]
add rcx, rax
mov rax, rcx
mov qword [0x180146d18], rax
jmp 0x1800ae9ac
mov eax, dword [0x180146d4c]
test eax, eax
je 0x1800ae9ac
movzx eax, word [rsp + 0x54]
movzx eax, ax
shl eax, 2
mov dword [0x180146d64], eax
mov eax, 0xea3d
mov word [rsp + 0x58], ax
mov qword [rsp + 0x340], 0
movzx eax, byte [rsp + 0x42]
movsx rax, al
mov rcx, qword [rsp + 0xa8]
sub rcx, rax
mov rax, rcx
mov word [0x180146d3c], ax
movzx eax, word [rsp + 0x4c]
sub eax, 0x8e2f4978
mov byte [str.U_This_legacy_API_is], al
movzx eax, word [0x180146d60]
test eax, eax
jne 0x1800ae9fe
mov dword [rsp + 0x160], 1
jmp 0x1800aea09
mov dword [rsp + 0x160], 0
movzx eax, word [rsp + 0x48]
cwde
or eax, dword [rsp + 0x160]
test eax, eax
jne 0x1800aea27
mov dword [rsp + 0x164], 1
jmp 0x1800aea32
mov dword [rsp + 0x164], 0
mov eax, dword [rsp + 0x164]
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0xb8]
cmp rax, rcx
jg 0x1800aea5c
mov dword [rsp + 0x16c], 1
jmp 0x1800aea67
mov dword [rsp + 0x16c], 0
mov rax, qword [rsp + 0x78]
cmp rax, 0x55
jg 0x1800aea7f
mov dword [rsp + 0x168], 1
jmp 0x1800aea8a
mov dword [rsp + 0x168], 0
mov eax, dword [rsp + 0x168]
cmp dword [rsp + 0x16c], eax
jne 0x1800aeb4d
mov eax, dword [rsp + 0x64]
cdqe
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rcx
test rax, rax
jne 0x1800aeac1
mov dword [rsp + 0x170], 1
jmp 0x1800aeacc
mov dword [rsp + 0x170], 0
mov eax, dword [0x180146d2c]
not eax
mov eax, eax
sub rax, qword [rsp + 0xc8]
test rax, rax
jne 0x1800aeaf0
mov dword [rsp + 0x174], 1
jmp 0x1800aeafb
mov dword [rsp + 0x174], 0
movzx eax, byte [0x180146c87]
movzx eax, al
mov ecx, dword [rsp + 0x64]
sub eax, ecx
mov ecx, dword [rsp + 0x170]
sub ecx, eax
mov eax, ecx
not eax
movzx ecx, word [rsp + 0x60]
movzx ecx, cx
movsx edx, word [0x180146d3c]
add ecx, edx
mov edx, dword [rsp + 0x174]
imul edx, ecx
mov ecx, edx
imul eax, ecx
cdqe
mov qword [0x180146d18], rax
movzx eax, word [rsp + 0x58]
mov word [rsp + 0x4c], ax
jmp 0x1800aeb6d
mov eax, 4
imul rax, rax, 0x5cb
lea rcx, [0x1811c2bc0]
mov edx, dword [rsp + 0x70]
or edx, dword [rcx + rax]
mov eax, edx
mov dword [rsp + 0x70], eax
mov byte [0x180146c43], 0x9a
mov dword [rsp + 0x280], 0
mov eax, dword [rsp + 0x30c]
mov ecx, dword [rsp + 0xd8]
imul eax, ecx
mov ecx, dword [rsp + 0x2fc]
sub ecx, 0x269
imul eax, ecx
mov ecx, dword [rsp + 0xd8]
mov edx, dword [rsp + 0xd8]
xor ecx, edx
mov edx, dword [rsp + 0xd8]
mov edi, dword [rsp + 0xd8]
add edx, edi
imul ecx, edx
imul eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x7b0]
mov dword [rcx], eax
mov eax, dword [rsp + 0x310]
cmp eax, 0xdb
je 0x1800af8db
movsx eax, byte [rsp + 0x40]
imul eax, eax, 0xfbf6
mov byte [rsp + 0x40], al
movzx eax, word [0x180146d60]
add rax, qword [0x180146d00]
mov word [0x180146d60], ax
cmp qword [rsp + 0x790], 0xffffffffffffffff
je 0x1800af71d
mov rax, qword [0x180146d40]
movzx ecx, word [rsp + 0x4c]
cmp rax, rcx
jb 0x1800aec39
mov dword [rsp + 0x17c], 1
jmp 0x1800aec44
mov dword [rsp + 0x17c], 0
mov rax, qword [rsp + 0x98]
cmp rax, 0xf437
jl 0x1800aec61
mov dword [rsp + 0x178], 1
jmp 0x1800aec6c
mov dword [rsp + 0x178], 0
mov eax, dword [rsp + 0x178]
mov ecx, dword [rsp + 0x17c]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1800aecd4
movzx eax, byte [0x180146bee]
movsx eax, al
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
add eax, ecx
movsx ecx, word [0x180146d10]
not ecx
sub eax, ecx
test eax, eax
jne 0x1800aecaf
mov byte [rsp + 0x81], 1
jmp 0x1800aecb7
mov byte [rsp + 0x81], 0
movzx eax, byte [rsp + 0x81]
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0xe0]
mov qword [0x180146d40], rax
jmp 0x1800aed20
mov eax, dword [0x180146d14]
test eax, eax
je 0x1800aed20
mov eax, dword [rsp + 0x64]
test eax, eax
je 0x1800aed20
movzx eax, byte [0x180146c5f]
movzx ecx, byte [rsp + 0x41]
movzx ecx, cl
xor eax, ecx
movzx ecx, word [0x180146d0c]
movzx ecx, cx
movzx edx, byte [0x180146bee]
movsx edx, dl
imul ecx, edx
add eax, ecx
movzx ecx, word [rsp + 0x54]
movzx ecx, cx
add eax, ecx
mov byte [0x180146c5b], al
mov dword [rsp + 0x68], 1
movsx eax, byte [0x180146caf]
add eax, 0xe2
cdqe
mov qword [rsp + 0x90], rax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x180], eax
cmp dword [rsp + 0x180], 0
je 0x1800aed5f
cmp dword [rsp + 0x180], 1
je 0x1800aed91
jmp 0x1800aeda7
mov eax, 4
imul rax, rax, 0x13
lea rcx, [0x1810b5e10]
movzx edx, word [0x180146d58]
movzx edx, dx
sub edx, dword [rcx + rax]
mov eax, edx
mov word [0x180146d58], ax
mov dword [0x180146c04], 0x93126506
jmp 0x1800aeda7
movzx eax, byte [str.U_This_legacy_API_is]
movsx rax, al
xor rax, qword [0x180146d00]
mov dword [rsp + 0x6c], eax
mov edx, 1
mov ecx, 0x400
call fcn.1801000e8
mov qword [rsp + 0x2e0], rax
mov rax, qword [0x180146d20]
movzx ecx, word [rsp + 0x60]
movzx ecx, cx
cmp rax, rcx
jb 0x1800aeddf
mov dword [rsp + 0x188], 1
jmp 0x1800aedea
mov dword [rsp + 0x188], 0
mov rax, qword [0x180146d20]
cmp rax, 0x51
jb 0x1800aee04
mov dword [rsp + 0x184], 1
jmp 0x1800aee0f
mov dword [rsp + 0x184], 0
mov eax, dword [rsp + 0x184]
cmp dword [rsp + 0x188], eax
jl 0x1800aef4a
xor r8d, r8d
mov edx, dword [rsp + 0xc8]
xor ecx, ecx
call fcn.1800953a0
mov byte [rsp + 0x42], al
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
jge 0x1800aee51
mov dword [rsp + 0x190], 1
jmp 0x1800aee5c
mov dword [rsp + 0x190], 0
movzx eax, byte [rsp + 0x42]
movsx eax, al
cmp eax, 0x3b
jge 0x1800aee76
mov dword [rsp + 0x18c], 1
jmp 0x1800aee81
mov dword [rsp + 0x18c], 0
mov eax, dword [rsp + 0x18c]
cmp dword [rsp + 0x190], eax
jge 0x1800aeefc
mov eax, dword [0x180146d48]
movzx ecx, byte [0x180146c87]
movzx ecx, cl
cmp eax, ecx
je 0x1800aeed1
mov eax, dword [0x180146d14]
sub eax, 0x1bd6
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x70]
mov eax, eax
movabs rcx, 0xafb46f8bb3e22
sub rax, rcx
mov qword [rsp + 0xb8], rax
jmp 0x1800aeefa
movsx rax, word [0x180146d3c]
mov rcx, qword [0x180146d18]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x180146d18]
add rcx, rax
mov rax, rcx
mov qword [0x180146d18], rax
jmp 0x1800aef4a
movzx eax, word [rsp + 0x58]
movzx eax, ax
sub eax, 0xb178
cdqe
mov qword [rsp + 0xc8], rax
movzx eax, byte [0x180146c87]
movzx eax, al
not eax
movzx ecx, word [0x180146d28]
movsx ecx, cx
sub eax, ecx
movzx ecx, byte [rsp + 0x41]
movzx ecx, cl
movzx edx, byte [0x180146c41]
movzx edx, dl
sub ecx, edx
add eax, ecx
cdqe
mov qword [0x180146d00], rax
lea rax, [rsp + 0x358]
mov qword [rsp + 0x20], rax
mov r9d, 0x400
mov r8, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x798]
mov rcx, qword [rsp + 0x790]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movzx eax, word [rsp + 0x5c]
cmp dword [0x180146c04], eax
je 0x1800af0d1
movzx eax, byte [str.U_This_legacy_API_is]
movsx eax, al
not eax
cdqe
mov ecx, dword [rsp + 0x64]
not ecx
movsxd rcx, ecx
mov rdx, qword [rsp + 0x90]
or rdx, rcx
mov rcx, rdx
cmp rax, rcx
je 0x1800aefe4
mov rax, qword [0x180146d68]
mov rcx, qword [rsp + 0xc8]
imul rcx, rax
mov rax, rcx
mov qword [rsp + 0xc8], rax
movzx eax, byte [rsp + 0x44]
mov byte [0x180146bef], al
jmp 0x1800af0cf
movzx eax, byte [rsp + 0x41]
movzx eax, al
test eax, eax
je 0x1800af00b
movzx eax, byte [0x180146bc7]
movsx eax, al
test eax, eax
je 0x1800af00b
mov dword [rsp + 0x194], 1
jmp 0x1800af016
mov dword [rsp + 0x194], 0
movsx eax, word [0x180146d30]
mov ecx, dword [rsp + 0x194]
add ecx, eax
mov eax, ecx
not eax
test eax, eax
je 0x1800af047
movzx eax, byte [0x180146c43]
imul eax, eax, 0xd5
mov word [0x180146d10], ax
jmp 0x1800af0cf
mov rax, qword [0x180146d68]
cmp rax, 0xce
jg 0x1800af09e
mov rax, qword [0x180146d68]
test rax, rax
jne 0x1800af06f
mov dword [rsp + 0x198], 1
jmp 0x1800af07a
mov dword [rsp + 0x198], 0
movsx eax, word [0x180146d3c]
cmp eax, dword [rsp + 0x198]
jge 0x1800af09e
mov rax, qword [0x180146d20]
shr rax, 4
mov qword [0x180146d40], rax
jmp 0x1800af0cf
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
je 0x1800af0cf
movzx eax, word [0x180146d58]
movzx eax, ax
sub eax, 0x9b1b
cdqe
mov qword [0x180146d18], rax
mov eax, dword [rsp + 0x64]
sub eax, 0x78
mov byte [0x180146c03], al
jmp 0x1800af122
mov rax, qword [rsp + 0x98]
imul rax, rax, 0xb50a
test rax, rax
jne 0x1800af0f2
mov dword [rsp + 0x19c], 1
jmp 0x1800af0fd
mov dword [rsp + 0x19c], 0
movzx eax, word [rsp + 0x5c]
cmp dword [rsp + 0x19c], eax
jl 0x1800af122
movzx eax, word [rsp + 0x54]
movzx eax, ax
movzx ecx, byte [0x180146c5f]
imul eax, ecx
mov word [rsp + 0x54], ax
mov rax, qword [rsp + 0x2e0]
mov qword [rsp + 0xc0], rax
movsx eax, word [rsp + 0x44]
sub eax, 0x50489418
mov word [rsp + 0x50], ax
movzx eax, word [rsp + 0x58]
movzx eax, ax
mov ecx, dword [rsp + 0x64]
imul eax, ecx
mov word [rsp + 0x58], ax
mov rax, qword [rsp + 0xc0]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x108], rax
movzx eax, byte [0x180146c2f]
movsx eax, al
test eax, eax
je 0x1800af1b7
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x78]
sub rax, rcx
mov qword [rsp + 0x98], rax
movzx eax, byte [0x180146bee]
movsx eax, al
mov ecx, dword [0x180146d64]
sub ecx, eax
mov eax, ecx
mov dword [0x180146d64], eax
mov rax, qword [rsp + 0x108]
mov eax, dword [rax + 0x50]
mov edx, 1
mov ecx, eax
call fcn.1801000e8
mov qword [rsp + 0x2e8], rax
movzx eax, word [0x180146d58]
movzx eax, ax
mov r8d, eax
xor edx, edx
xor ecx, ecx
call fcn.1800953a0
cdqe
mov qword [0x180146d18], rax
mov eax, dword [rsp + 0x64]
movsx ecx, word [0x180146d08]
cmp eax, ecx
jle 0x1800af211
mov dword [rsp + 0x1a0], 1
jmp 0x1800af21c
mov dword [rsp + 0x1a0], 0
cmp dword [rsp + 0x1a0], 0x4c3d
jle 0x1800af366
movsx eax, byte [0x180146caf]
cmp dword [0x180146d2c], eax
jb 0x1800af249
mov dword [rsp + 0x1a8], 1
jmp 0x1800af254
mov dword [rsp + 0x1a8], 0
cmp dword [0x180146d2c], 0x5e
jb 0x1800af26a
mov dword [rsp + 0x1a4], 1
jmp 0x1800af275
mov dword [rsp + 0x1a4], 0
mov eax, dword [rsp + 0x1a4]
cmp dword [rsp + 0x1a8], eax
je 0x1800af2ba
movzx eax, word [rsp + 0x54]
movzx eax, ax
movzx ecx, byte [str.U_This_legacy_API_is]
movsx ecx, cl
imul eax, ecx
movzx ecx, word [rsp + 0x54]
movzx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
jmp 0x1800af361
movzx eax, byte [0x180146c5b]
movsx eax, al
movzx ecx, byte [0x180146c2f]
movsx ecx, cl
not ecx
cmp eax, ecx
jl 0x1800af2e1
mov dword [rsp + 0x1b0], 1
jmp 0x1800af2ec
mov dword [rsp + 0x1b0], 0
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
jg 0x1800af303
mov dword [rsp + 0x1ac], 1
jmp 0x1800af30e
mov dword [rsp + 0x1ac], 0
mov eax, dword [rsp + 0x1ac]
cmp dword [rsp + 0x1b0], eax
jle 0x1800af361
movzx eax, word [rsp + 0x50]
movsx rax, ax
mov rcx, qword [rsp + 0x78]
imul rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
movzx eax, byte [rsp + 0x42]
movsx rax, al
movabs rcx, 0xcc9ddf9eead97
imul rax, rcx
mov qword [0x180146d18], rax
jmp 0x1800af474
mov eax, dword [0x180146d34]
mov eax, eax
mov rcx, qword [0x180146cf8]
cmp rax, rcx
je 0x1800af474
movzx eax, byte [rsp + 0x42]
movsx eax, al
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
xor eax, ecx
mov byte [rsp + 0x42], al
movzx eax, byte [0x180146bc7]
movsx rax, al
add rax, qword [rsp + 0x90]
movsx ecx, word [0x180146d08]
mov edx, dword [rsp + 0x6c]
imul ecx, edx
mov ecx, ecx
add rax, rcx
test rax, rax
jne 0x1800af3cc
mov dword [rsp + 0x1c0], 1
jmp 0x1800af3d7
mov dword [rsp + 0x1c0], 0
mov rax, qword [0x180146d68]
test rax, rax
jne 0x1800af3f0
mov dword [rsp + 0x1b4], 1
jmp 0x1800af3fb
mov dword [rsp + 0x1b4], 0
movzx eax, byte [0x180146c42]
movsx eax, al
test eax, eax
jne 0x1800af416
mov dword [rsp + 0x1bc], 1
jmp 0x1800af421
mov dword [rsp + 0x1bc], 0
movsx eax, word [0x180146c5c]
test eax, eax
jne 0x1800af439
mov dword [rsp + 0x1b8], 1
jmp 0x1800af444
mov dword [rsp + 0x1b8], 0
movzx eax, word [rsp + 0x4c]
sub eax, dword [rsp + 0x1b4]
mov ecx, dword [rsp + 0x1b8]
mov edx, dword [rsp + 0x1bc]
and edx, ecx
mov ecx, edx
sub eax, ecx
mov ecx, dword [rsp + 0x1c0]
add ecx, eax
mov eax, ecx
mov word [rsp + 0x50], ax
mov rax, qword [rsp + 0x108]
mov eax, dword [rax + 0x50]
lea rcx, [rsp + 0x358]
mov qword [rsp + 0x20], rcx
mov r9d, eax
mov r8, qword [rsp + 0x2e8]
mov rdx, qword [rsp + 0x798]
mov rcx, qword [rsp + 0x790]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movsx eax, word [0x180146d30]
test eax, eax
je 0x1800af5e8
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
jne 0x1800af4dc
movsx eax, word [rsp + 0x44]
test eax, eax
jne 0x1800af4dc
mov dword [rsp + 0x1c8], 0
jmp 0x1800af4e7
mov dword [rsp + 0x1c8], 1
movzx eax, word [rsp + 0x54]
movzx eax, ax
mov ecx, dword [0x180146d14]
cmp eax, ecx
jne 0x1800af506
mov dword [rsp + 0x1c4], 1
jmp 0x1800af511
mov dword [rsp + 0x1c4], 0
mov eax, dword [rsp + 0x1c4]
not eax
cmp dword [rsp + 0x1c8], eax
jle 0x1800af530
mov dword [rsp + 0x1cc], 1
jmp 0x1800af53b
mov dword [rsp + 0x1cc], 0
mov rax, qword [rsp + 0xb8]
test rax, rax
jne 0x1800af57d
movzx eax, byte [rsp + 0x41]
movzx eax, al
test eax, eax
jne 0x1800af57d
movzx eax, word [0x180146d58]
movzx eax, ax
movzx ecx, word [0x180146d0c]
movzx ecx, cx
add eax, ecx
not eax
test eax, eax
jne 0x1800af57d
mov dword [rsp + 0x1d0], 0
jmp 0x1800af588
mov dword [rsp + 0x1d0], 1
mov eax, dword [rsp + 0x1cc]
not eax
mov ecx, dword [rsp + 0x1d0]
not ecx
cmp eax, ecx
jl 0x1800af5bb
mov byte [rsp + 0x40], 1
movzx eax, byte [0x180146bef]
movzx eax, al
add eax, 0xa999
mov word [0x180146d30], ax
jmp 0x1800af5e8
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x1800af5e8
movzx eax, byte [0x180146c43]
test eax, eax
je 0x1800af5e8
movzx eax, byte [0x180146c5e]
movabs rcx, 0x172a220b3c297
sub rax, rcx
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x2e8]
mov qword [rsp + 0xc0], rax
mov eax, dword [0x180146d4c]
test eax, eax
jne 0x1800af628
movzx eax, byte [0x180146c03]
movzx eax, al
test eax, eax
jne 0x1800af628
mov eax, dword [0x180146d48]
mov eax, eax
sub rax, qword [rsp + 0x90]
not rax
test rax, rax
je 0x1800af669
mov eax, dword [rsp + 0x70]
movzx ecx, word [0x180146d28]
movsx ecx, cx
cmp eax, ecx
jbe 0x1800af647
mov dword [rsp + 0x1d4], 1
jmp 0x1800af652
mov dword [rsp + 0x1d4], 0
cmp dword [rsp + 0x1d4], 0x22
jg 0x1800af669
mov dword [rsp + 0x1d8], 1
jmp 0x1800af674
mov dword [rsp + 0x1d8], 0
mov eax, dword [rsp + 0x1d8]
not eax
test eax, eax
je 0x1800af6b4
mov eax, dword [rsp + 0x70]
sub eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x70]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x70], eax
mov eax, 4
imul rax, rax, 0x1b24
lea rcx, [0x181192f10]
movzx eax, byte [rcx + rax]
mov byte [0x180146c42], al
jmp 0x1800af6f6
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x1800af6f6
movzx eax, word [rsp + 0x4c]
add rax, qword [rsp + 0xc8]
movzx ecx, word [0x180146d60]
sub rax, rcx
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0xe0]
imul rax, rax, 0x7ce1ea52
mov qword [0x180146d50], rax
mov rax, qword [rsp + 0xc0]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x108], rax
jmp 0x1800af8db
mov eax, dword [rsp + 0x64]
cdqe
mov rcx, qword [0x180146d40]
cmp rax, rcx
je 0x1800af73c
mov dword [rsp + 0x1e0], 1
jmp 0x1800af747
mov dword [rsp + 0x1e0], 0
mov eax, dword [rsp + 0x64]
cmp eax, 0x12
je 0x1800af75d
mov dword [rsp + 0x1dc], 1
jmp 0x1800af768
mov dword [rsp + 0x1dc], 0
mov eax, dword [rsp + 0x1dc]
cmp dword [rsp + 0x1e0], eax
jl 0x1800af878
movzx eax, word [rsp + 0x48]
movsx rax, ax
mov rcx, qword [rsp + 0xb8]
cmp rax, rcx
jle 0x1800af79f
mov dword [rsp + 0x1e8], 1
jmp 0x1800af7aa
mov dword [rsp + 0x1e8], 0
movzx eax, word [rsp + 0x48]
cwde
cmp eax, 0x1d
jle 0x1800af7c2
mov dword [rsp + 0x1e4], 1
jmp 0x1800af7cd
mov dword [rsp + 0x1e4], 0
mov eax, dword [rsp + 0x1e4]
cmp dword [rsp + 0x1e8], eax
jg 0x1800af7f2
mov rax, qword [0x180146d50]
shr rax, 8
mov word [rsp + 0x60], ax
jmp 0x1800af878
movzx eax, byte [0x180146c03]
movzx eax, al
test eax, eax
je 0x1800af817
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x1800af817
mov dword [rsp + 0x1f0], 1
jmp 0x1800af822
mov dword [rsp + 0x1f0], 0
movzx eax, word [0x180146d28]
movsx rax, ax
cmp rax, qword [rsp + 0xa8]
jl 0x1800af844
mov dword [rsp + 0x1ec], 1
jmp 0x1800af84f
mov dword [rsp + 0x1ec], 0
mov eax, dword [rsp + 0x1ec]
cmp dword [rsp + 0x1f0], eax
jge 0x1800af878
movsx eax, byte [rsp + 0x40]
movzx ecx, word [rsp + 0x5c]
xor eax, ecx
movsx ecx, byte [rsp + 0x40]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x40], al
mov rax, qword [rsp + 0x798]
mov qword [rsp + 0xc0], rax
movzx eax, word [rsp + 0x50]
cwde
movzx ecx, word [rsp + 0x5c]
add eax, ecx
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
sub ecx, eax
mov eax, ecx
mov word [rsp + 0x50], ax
movzx eax, word [rsp + 0x60]
movzx eax, ax
add eax, 0x2a8a
mov dword [0x180146c44], eax
mov rax, qword [rsp + 0xc0]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0xc0]
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 0x1800b155b
movzx eax, word [rsp + 0x54]
movzx eax, ax
movzx ecx, byte [0x180146c5f]
movzx edx, byte [str.U_This_legacy_API_is]
movsx edx, dl
mov r9d, eax
mov r8d, ecx
xor ecx, ecx
call fcn.180094760
mov eax, eax
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
test rax, rax
jl 0x1800af944
mov dword [rsp + 0x1f8], 1
jmp 0x1800af94f
mov dword [rsp + 0x1f8], 0
mov rax, qword [rsp + 0x98]
cmp rax, 0x43
jl 0x1800af96a
mov dword [rsp + 0x1f4], 1
jmp 0x1800af975
mov dword [rsp + 0x1f4], 0
mov eax, dword [rsp + 0x1f4]
cmp dword [rsp + 0x1f8], eax
je 0x1800af9bc
movsx eax, byte [rsp + 0x40]
movsx ecx, word [0x180146d30]
cmp eax, ecx
jne 0x1800af9a3
movzx eax, word [0x181001ff0]
mov word [rsp + 0x50], ax
jmp 0x1800af9ba
movsx eax, byte [0x180146caf]
test eax, eax
je 0x1800af9ba
movzx eax, word [0x181001ff0]
mov word [rsp + 0x44], ax
jmp 0x1800af9f1
cmp dword [0x180146d38], 0
je 0x1800af9f1
movsx eax, word [0x180146d30]
not eax
movsx ecx, word [rsp + 0x44]
not ecx
sub eax, ecx
and eax, 0x40e2
mov word [rsp + 0x44], ax
movsx eax, word [0x180146d08]
sub eax, 0x3c
mov byte [0x180146c03], al
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x1800afab3
movzx eax, word [rsp + 0x4c]
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rcx
test rax, rax
jne 0x1800afa25
mov qword [rsp + 0x360], 1
jmp 0x1800afa31
mov qword [rsp + 0x360], 0
mov rax, qword [rsp + 0xc8]
not rax
mov rcx, qword [0x180146d40]
imul rax, rcx
mov rcx, qword [rsp + 0x360]
add rcx, rax
mov rax, rcx
movzx ecx, word [rsp + 0x60]
movzx ecx, cx
mov rdx, qword [rsp + 0xb8]
imul rcx, rdx
not rcx
movzx edx, word [rsp + 0x54]
movzx edx, dx
movzx edi, byte [0x180146c5e]
imul edx, edi
not edx
movsxd rdx, edx
sub rcx, rdx
imul rax, rcx
mov byte [0x180146c42], al
mov eax, dword [0x180146d2c]
movabs rcx, 0x488c11cd1bc29
xor rax, rcx
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x108]
mov eax, dword [rcx + rax + 0x88]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x110], rax
movzx eax, word [rsp + 0x5c]
not eax
mov word [0x180146d60], ax
mov eax, 1
mov word [0x180146d30], ax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x320], rax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x20]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x330], rax
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xc8]
lea rax, [rax + rcx + 0x39]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x24]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x2d0], rax
movsx eax, word [0x180146d10]
imul eax, dword [0x180146d38]
mov word [0x180146d10], ax
mov eax, dword [0x180146c44]
add eax, 0xb209
mov eax, eax
mov rcx, qword [rsp + 0xa8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xa8], rax
mov dword [rsp + 0xa0], 0
jmp 0x1800afbd0
mov eax, dword [rsp + 0xa0]
inc eax
mov dword [rsp + 0xa0], eax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x18]
cmp dword [rsp + 0xa0], eax
jae 0x1800b155b
mov dword [rsp + 0x28], 0x26
mov dword [rsp + 0x20], 0xf9
mov r9d, 0xa7
mov r8d, 0xa
xor edx, edx
xor ecx, ecx
call fcn.180094460
mov word [rsp + 0x50], ax
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x1800afcc7
mov r9d, 0x5b
mov r8d, 0x1d
mov edx, 0x93
mov ecx, 1
call fcn.180094760
mov word [rsp + 0x58], ax
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
je 0x1800afc87
mov rax, qword [0x180146d40]
sub rax, 0xad2d
mov word [rsp + 0x50], ax
movzx eax, byte [0x180146bc7]
movsx eax, al
movzx ecx, byte [0x180146c2e]
sub eax, ecx
movzx ecx, byte [0x180146bc7]
movsx ecx, cl
add ecx, eax
mov eax, ecx
mov byte [0x180146bc7], al
jmp 0x1800afcc5
mov rax, qword [rsp + 0xc8]
not rax
test rax, rax
je 0x1800afcc5
movzx eax, word [0x181001ff0]
mov word [rsp + 0x54], ax
mov eax, dword [rsp + 0x64]
cdqe
mov rcx, qword [rsp + 0xe0]
add rax, rcx
mov ecx, dword [rsp + 0x64]
movsxd rcx, ecx
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x64], eax
jmp 0x1800afd3a
mov eax, 0x79b9
sub eax, dword [0x180146d2c]
movsx ecx, word [0x180146d08]
movzx edx, byte [0x180146c03]
movzx edx, dl
add ecx, edx
not ecx
imul eax, ecx
test eax, eax
jne 0x1800afcfb
mov dword [rsp + 0x1fc], 1
jmp 0x1800afd06
mov dword [rsp + 0x1fc], 0
movzx eax, word [rsp + 0x48]
cwde
mov ecx, dword [rsp + 0x64]
sub ecx, eax
mov eax, ecx
movzx ecx, word [0x180146d28]
movsx ecx, cx
movzx edx, byte [0x180146bef]
movzx edx, dl
sub ecx, edx
add eax, ecx
imul eax, dword [rsp + 0x1fc]
mov byte [str.U_This_legacy_API_is], al
cmp dword [rsp + 0x68], 0
je 0x1800b0077
mov eax, dword [rsp + 0x6c]
test eax, eax
je 0x1800b0077
movzx eax, byte [0x180146c43]
movzx ecx, byte [0x180146bc7]
movsx ecx, cl
mov dword [rsp + 0x20], eax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call fcn.1800950a0
mov dword [0x180146d48], eax
movzx eax, word [rsp + 0x4c]
test eax, eax
je 0x1800aff0b
mov dword [0x180146d64], 4
movzx eax, word [rsp + 0x58]
movzx eax, ax
test eax, eax
je 0x1800afdad
mov rax, qword [0x180146d50]
mov qword [rsp + 0x368], rax
jmp 0x1800afdbc
movsxd rax, dword [0x180146c04]
mov qword [rsp + 0x368], rax
movzx eax, word [rsp + 0x368]
mov word [rsp + 0x5c], ax
mov eax, dword [0x180146d64]
mov dword [rsp + 0xdc], eax
cmp dword [rsp + 0xdc], 0
je 0x1800afe1d
cmp dword [rsp + 0xdc], 1
je 0x1800afe91
cmp dword [rsp + 0xdc], 2
je 0x1800afec0
cmp dword [rsp + 0xdc], 3
je 0x1800afed5
cmp dword [rsp + 0xdc], 4
je 0x1800afef4
jmp 0x1800aff06
cmp qword [rsp + 0x90], 0
jne 0x1800afe35
mov dword [rsp + 0x200], 1
jmp 0x1800afe40
mov dword [rsp + 0x200], 0
movzx eax, word [0x180146d60]
test eax, eax
jne 0x1800afe58
mov dword [rsp + 0x204], 1
jmp 0x1800afe63
mov dword [rsp + 0x204], 0
movzx eax, word [rsp + 0x54]
movzx eax, ax
mov ecx, dword [rsp + 0x200]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x180146d14]
and ecx, dword [rsp + 0x204]
xor eax, ecx
mov eax, eax
mov qword [rsp + 0xa8], rax
jmp 0x1800aff06
mov rax, qword [rsp + 0xe0]
sub rax, 0xbf
mov byte [0x180146bef], al
movzx eax, word [rsp + 0x4c]
sub eax, dword [0x180146c04]
movzx ecx, word [rsp + 0x4c]
xor ecx, eax
mov eax, ecx
mov word [rsp + 0x4c], ax
jmp 0x1800aff06
mov rax, qword [rsp + 0xa8]
add rax, 0x8081
mov word [rsp + 0x44], ax
jmp 0x1800aff06
mov eax, dword [0x181001ff0]
mov qword [rsp + 0xb8], rax
movsx eax, byte [rsp + 0x40]
add eax, 0xa1
mov word [rsp + 0x44], ax
jmp 0x1800aff06
movsx eax, byte [rsp + 0x40]
sar eax, 4
cdqe
mov qword [rsp + 0xb8], rax
jmp 0x1800b0075
movzx eax, word [rsp + 0x5c]
test eax, eax
jne 0x1800aff21
mov dword [rsp + 0x208], 1
jmp 0x1800aff2c
mov dword [rsp + 0x208], 0
movzx eax, byte [0x180146c2e]
not eax
cmp eax, dword [rsp + 0x208]
jg 0x1800aff4b
mov dword [rsp + 0x210], 1
jmp 0x1800aff56
mov dword [rsp + 0x210], 0
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
jne 0x1800aff6f
mov dword [rsp + 0x20c], 1
jmp 0x1800aff7a
mov dword [rsp + 0x20c], 0
mov eax, dword [rsp + 0x20c]
mov ecx, dword [rsp + 0x210]
sub ecx, eax
mov eax, ecx
test eax, eax
je 0x1800affb3
mov eax, dword [0x181001ff0]
mov qword [0x180146d20], rax
movzx eax, byte [0x180146c2f]
movsx eax, al
sar eax, 5
mov byte [rsp + 0x40], al
jmp 0x1800b0075
movsx rax, word [rsp + 0x44]
cmp qword [rsp + 0xa8], rax
jge 0x1800affd0
mov dword [rsp + 0x214], 1
jmp 0x1800affdb
mov dword [rsp + 0x214], 0
movzx eax, word [rsp + 0x5c]
imul eax, eax, 0x7c42
cmp dword [rsp + 0x214], eax
je 0x1800b0019
movsx rax, word [rsp + 0x44]
mov rcx, qword [rsp + 0xb8]
lea rax, [rcx + rax + 0xa5]
mov dword [0x180146d4c], eax
mov rax, qword [rsp + 0x78]
mov word [0x180146d58], ax
jmp 0x1800b0075
movzx eax, byte [rsp + 0x41]
movzx eax, al
test eax, eax
je 0x1800b0075
movzx eax, word [rsp + 0x50]
cwde
test eax, eax
je 0x1800b003d
movsx eax, word [rsp + 0x44]
mov dword [rsp + 0x218], eax
jmp 0x1800b004e
movzx eax, word [0x180146d58]
movzx eax, ax
mov dword [rsp + 0x218], eax
movzx eax, byte [rsp + 0x218]
mov byte [0x180146c86], al
movzx eax, word [rsp + 0x5c]
not eax
cdqe
mov rcx, qword [0x180146d20]
xor rax, rcx
mov byte [0x180146caf], al
jmp 0x1800b0088
movzx eax, byte [0x180146c2e]
sub eax, 0xba2aed0
mov word [rsp + 0x44], ax
mov eax, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x2d0]
movzx eax, word [rcx + rax*2]
mov rcx, qword [rsp + 0x320]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x318], rax
mov rax, qword [rsp + 0x110]
mov eax, dword [rax + 0x18]
cmp dword [rsp + 0xa0], eax
jae 0x1800b03a6
movzx eax, byte [rsp + 0x42]
movsx eax, al
cmp dword [0x180146c04], eax
jle 0x1800b00f1
mov dword [rsp + 0x220], 1
jmp 0x1800b00fc
mov dword [rsp + 0x220], 0
cmp dword [0x180146c04], 0x31
jle 0x1800b0112
mov dword [rsp + 0x21c], 1
jmp 0x1800b011d
mov dword [rsp + 0x21c], 0
mov eax, dword [rsp + 0x21c]
cmp dword [rsp + 0x220], eax
jg 0x1800b0158
movzx eax, byte [0x180146bc7]
movsx eax, al
sub eax, 0x443c
cdqe
mov qword [rsp + 0xc8], rax
movzx eax, byte [rsp + 0x42]
movsx eax, al
and eax, 0x1888
mov word [rsp + 0x44], ax
mov dword [rsp + 0x28], 0x70
mov eax, dword [0x180146c04]
mov dword [rsp + 0x20], eax
mov r9d, 0x27
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.180094460
cdqe
mov qword [rsp + 0xc8], rax
mov eax, dword [rsp + 0x70]
movzx ecx, byte [0x180146bef]
movzx ecx, cl
cmp eax, ecx
ja 0x1800b01a5
mov dword [rsp + 0x228], 1
jmp 0x1800b01b0
mov dword [rsp + 0x228], 0
movzx eax, word [rsp + 0x60]
movzx eax, ax
cmp eax, dword [0x180146c04]
je 0x1800b01cd
mov dword [rsp + 0x224], 1
jmp 0x1800b01d8
mov dword [rsp + 0x224], 0
mov eax, dword [rsp + 0x224]
cmp dword [rsp + 0x228], eax
jne 0x1800b01f5
mov dword [rsp + 0x238], 1
jmp 0x1800b0200
mov dword [rsp + 0x238], 0
movzx eax, word [rsp + 0x4c]
not eax
cdqe
mov rcx, qword [0x180146d40]
cmp rax, rcx
jb 0x1800b0222
mov dword [rsp + 0x230], 1
jmp 0x1800b022d
mov dword [rsp + 0x230], 0
movzx eax, word [rsp + 0x48]
cwde
movzx ecx, word [0x180146d60]
cmp eax, ecx
jge 0x1800b024b
mov dword [rsp + 0x22c], 1
jmp 0x1800b0256
mov dword [rsp + 0x22c], 0
mov eax, dword [rsp + 0x22c]
cmp dword [rsp + 0x230], eax
je 0x1800b0273
mov dword [rsp + 0x234], 1
jmp 0x1800b027e
mov dword [rsp + 0x234], 0
mov eax, dword [rsp + 0x234]
cmp dword [rsp + 0x238], eax
jl 0x1800b0363
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0xe
mov r9d, 0x78
mov r8d, dword [rsp + 0x70]
xor edx, edx
xor ecx, ecx
call fcn.180094460
mov word [0x180146d58], ax
movzx eax, byte [0x180146c2f]
movsx eax, al
cmp dword [0x180146d38], eax
jae 0x1800b02dc
mov dword [rsp + 0x240], 1
jmp 0x1800b02e7
mov dword [rsp + 0x240], 0
movzx eax, word [rsp + 0x54]
movzx eax, ax
test eax, eax
jne 0x1800b0301
mov qword [rsp + 0x328], 1
jmp 0x1800b030d
mov qword [rsp + 0x328], 0
mov rax, qword [rsp + 0xa8]
cmp qword [rsp + 0x328], rax
je 0x1800b032c
mov dword [rsp + 0x23c], 1
jmp 0x1800b0337
mov dword [rsp + 0x23c], 0
mov eax, dword [rsp + 0x23c]
cmp dword [rsp + 0x240], eax
jle 0x1800b0361
movzx eax, byte [0x180146c43]
mov dword [rsp + 0x68], eax
movsx eax, word [rsp + 0x44]
imul eax, eax, 0x2925
mov byte [rsp + 0x40], al
jmp 0x1800b037e
mov eax, dword [0x180146d4c]
test eax, eax
je 0x1800b037e
movzx eax, word [rsp + 0x48]
cwde
sub eax, 0x4595e14
mov byte [0x180146c43], al
mov eax, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x330]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0xc0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x338], rax
lea rdx, [rsp + 0x2c8]
mov rcx, qword [rsp + 0x318]
call fcn.1800b7e90
mov dword [rsp + 0xd0], eax
cmp dword [rsp + 0xd0], 0
je 0x1800b03da
cmp dword [rsp + 0xd0], 1
jne 0x1800b04de
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0xd
mov r9d, 0x93
xor r8d, r8d
xor edx, edx
mov ecx, 0x1d
call fcn.180094460
mov word [0x180146d58], ax
movzx eax, word [0x180146d58]
movzx eax, ax
test eax, eax
jge 0x1800b0421
mov dword [rsp + 0x248], 1
jmp 0x1800b042c
mov dword [rsp + 0x248], 0
movzx eax, word [0x180146d58]
movzx eax, ax
cmp eax, 0x40
jge 0x1800b0448
mov dword [rsp + 0x244], 1
jmp 0x1800b0453
mov dword [rsp + 0x244], 0
mov eax, dword [rsp + 0x244]
cmp dword [rsp + 0x248], eax
jge 0x1800b04d9
movzx eax, byte [rsp + 0x41]
movzx eax, al
movzx ecx, byte [0x180146c41]
movzx ecx, cl
imul eax, ecx
cdqe
movzx ecx, byte [0x180146c43]
imul rcx, qword [rsp + 0x90]
sub rax, rcx
not rax
mov ecx, dword [0x180146d14]
not ecx
movzx edx, byte [0x180146c5b]
movsx edx, dl
not edx
movsx edi, word [rsp + 0x44]
add edx, edi
add ecx, edx
mov ecx, ecx
imul rax, rcx
mov word [rsp + 0x48], ax
movsx eax, word [0x180146d08]
mov ecx, dword [0x180146c04]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x180146c04]
and ecx, eax
mov eax, ecx
mov dword [0x180146c04], eax
jmp 0x1800afbc0
call fcn.1800a6340
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x88]
add rax, 0x18
mov r8d, 0x104
xor edx, edx
mov rcx, rax
call fcn.1800311d0
mov rax, qword [rsp + 0x88]
add rax, 0x18
mov r8d, 0x103
mov rdx, qword [rsp + 0x338]
mov rcx, rax
call fcn.180100850
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x798]
mov qword [rax], rcx
mov eax, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x2d0]
movzx eax, word [rdx + rax*2]
mov word [rcx + 8], ax
mov eax, dword [rsp + 0xa0]
mov rcx, qword [rsp + 0x2d0]
movzx eax, word [rcx + rax*2]
mov rcx, qword [rsp + 0x320]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x798]
add rcx, rax
mov rax, rcx
mov rcx, qword [rsp + 0x88]
mov qword [rcx + 0x10], rax
cmp dword [rsp + 0xd0], 2
jne 0x1800b061a
movzx eax, byte [rsp + 0x41]
movzx eax, al
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
sub eax, ecx
movzx ecx, byte [rsp + 0x41]
movzx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x41], al
movzx eax, word [rsp + 0x54]
movzx eax, ax
mov rcx, qword [rsp + 0x78]
sub rax, rcx
mov word [rsp + 0x58], ax
mov rax, qword [rsp + 0x2c8]
mov rcx, qword [rsp + 0x318]
add rcx, rax
mov rax, rcx
movsxd rax, dword [rax]
mov rcx, qword [rsp + 0x88]
mov rcx, qword [rcx + 0x10]
add rcx, qword [rsp + 0x2c8]
lea rax, [rax + rcx + 4]
mov rcx, qword [rsp + 0x88]
mov qword [rcx + 0x220], rax
jmp 0x1800b083c
cmp dword [rsp + 0xd0], 3
jne 0x1800b06ba
movsx rax, word [0x180146d5c]
cmp rax, qword [rsp + 0xa8]
jg 0x1800b065c
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x78]
add rax, rcx
mov dword [rsp + 0x68], eax
movzx eax, word [rsp + 0x58]
movzx eax, ax
sar eax, 1
mov dword [0x180146d34], eax
jmp 0x1800b068f
movzx eax, word [rsp + 0x48]
cwde
test eax, eax
je 0x1800b068f
movsx rax, word [0x180146d3c]
mov rcx, qword [0x180146cf8]
sub rcx, rax
mov rax, rcx
mov rcx, qword [0x180146cf8]
sub rcx, rax
mov rax, rcx
mov qword [0x180146cf8], rax
mov rax, qword [rsp + 0x88]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x2c8]
mov eax, dword [rax + rcx]
mov rcx, qword [rsp + 0x88]
mov qword [rcx + 0x220], rax
jmp 0x1800b083c
cmp dword [rsp + 0xd0], 4
jne 0x1800b083c
mov dword [0x180146d14], 2
movzx eax, byte [0x180146c03]
movzx eax, al
mov ecx, dword [0x180146c44]
imul ecx, eax
mov eax, ecx
test eax, eax
jne 0x1800b06f8
mov dword [rsp + 0x24c], 1
jmp 0x1800b0703
mov dword [rsp + 0x24c], 0
movsx eax, word [0x180146d3c]
add eax, dword [rsp + 0x24c]
mov ecx, dword [rsp + 0x64]
sub ecx, eax
mov eax, ecx
cdqe
mov qword [rsp + 0xb8], rax
movzx eax, word [rsp + 0x48]
cwde
movzx ecx, word [rsp + 0x50]
movsx ecx, cx
sub eax, ecx
movzx ecx, word [rsp + 0x48]
movsx ecx, cx
add ecx, eax
mov eax, ecx
mov word [rsp + 0x48], ax
mov eax, dword [0x180146d14]
mov dword [rsp + 0xfc], eax
cmp dword [rsp + 0xfc], 0
je 0x1800b0774
cmp dword [rsp + 0xfc], 1
je 0x1800b07a6
cmp dword [rsp + 0xfc], 2
je 0x1800b07c6
jmp 0x1800b0805
movzx eax, word [0x180146d28]
movsx rax, ax
movabs rcx, 0x3b8cb501d9633
sub rax, rcx
mov byte [0x180146c2e], al
movzx eax, word [rsp + 0x58]
movzx eax, ax
add eax, 0x91d5
mov word [rsp + 0x4c], ax
jmp 0x1800b0805
mov eax, 8
imul rax, rax, 0x1b14
lea rcx, [0x18106ff00]
movzx eax, word [rcx + rax]
mov word [0x180146c5c], ax
jmp 0x1800b0805
movsx eax, word [rsp + 0x44]
add eax, 0xb03c
movsx ecx, word [0x180146d10]
movzx edx, byte [rsp + 0x41]
movzx edx, dl
add ecx, edx
imul eax, ecx
mov dword [0x180146d64], eax
movzx eax, byte [0x180146c2e]
movzx ecx, word [rsp + 0x54]
movzx ecx, cx
lea eax, [rcx + rax + 0xc53a]
mov word [rsp + 0x54], ax
mov rax, qword [rsp + 0x88]
mov rax, qword [rax + 0x10]
mov rcx, qword [rsp + 0x88]
mov rcx, qword [rcx + 0x10]
mov rdx, qword [rsp + 0x2c8]
mov ecx, dword [rcx + rdx]
mov rdx, qword [rsp + 0x88]
mov rax, qword [rax + rcx + 6]
mov qword [rdx + 0x220], rax
mov r8d, 0x30
lea rdx, [rsp + 0x410]
mov rax, qword [rsp + 0x88]
mov rcx, qword [rax + 0x220]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
mov qword [rsp + 0x340], rax
cmp qword [rsp + 0x340], 0
jne 0x1800b0c7f
mov rax, qword [rsp + 0x7a8]
cmp qword [rsp + 0xe8], rax
jae 0x1800b0987
mov eax, dword [0x180146d14]
test eax, eax
jne 0x1800b08a3
mov dword [rsp + 0x250], 1
jmp 0x1800b08ae
mov dword [rsp + 0x250], 0
mov rax, qword [0x180146d68]
test rax, rax
jne 0x1800b08c7
mov dword [rsp + 0x254], 1
jmp 0x1800b08d2
mov dword [rsp + 0x254], 0
movzx eax, byte [0x180146c43]
movzx ecx, word [rsp + 0x60]
movzx ecx, cx
sub eax, ecx
movsx ecx, byte [rsp + 0x40]
mov edx, dword [rsp + 0x250]
xor edx, ecx
mov ecx, edx
add eax, ecx
mov ecx, dword [0x180146d38]
imul ecx, dword [rsp + 0x254]
movzx edx, byte [0x180146c86]
movzx edi, word [0x180146d60]
sub edx, edi
add ecx, edx
sub eax, ecx
mov word [0x180146d08], ax
cmp qword [0x180146d00], 0
jne 0x1800b0935
mov dword [rsp + 0x258], 1
jmp 0x1800b0940
mov dword [rsp + 0x258], 0
mov eax, dword [rsp + 0x68]
mov ecx, dword [rsp + 0x258]
sub ecx, eax
mov eax, ecx
mov eax, eax
mov qword [0x180146cf8], rax
mov rax, qword [rsp + 0x7a0]
mov rcx, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x88]
mov qword [rax + rcx*8], rdx
mov rax, qword [rsp + 0xe8]
inc rax
mov qword [rsp + 0xe8], rax
movzx eax, word [rsp + 0x50]
cwde
mov dword [rsp + 0x28], 0xd9
mov dword [rsp + 0x20], 0
xor r9d, r9d
mov r8d, eax
xor edx, edx
mov ecx, 0xb3
call fcn.180094460
mov dword [0x180146c04], eax
mov rax, qword [rsp + 0x98]
movzx ecx, byte [rsp + 0x41]
movzx ecx, cl
cmp rax, rcx
je 0x1800b09d7
mov dword [rsp + 0x260], 1
jmp 0x1800b09e2
mov dword [rsp + 0x260], 0
movsx rax, byte [rsp + 0x40]
cmp rax, qword [rsp + 0x90]
jbe 0x1800b09ff
mov dword [rsp + 0x25c], 1
jmp 0x1800b0a0a
mov dword [rsp + 0x25c], 0
mov eax, dword [rsp + 0x25c]
cmp dword [rsp + 0x260], eax
jne 0x1800b0a27
mov dword [rsp + 0x264], 1
jmp 0x1800b0a32
mov dword [rsp + 0x264], 0
cmp qword [0x180146cf0], 0
je 0x1800b0a48
mov rax, qword [0x180146d18]
test rax, rax
jne 0x1800b0a6e
mov rax, qword [rsp + 0xa8]
not rax
movzx ecx, word [rsp + 0x48]
movsx rcx, cx
cmp rax, rcx
jg 0x1800b0a6e
mov dword [rsp + 0x268], 0
jmp 0x1800b0a79
mov dword [rsp + 0x268], 1
mov eax, dword [rsp + 0x264]
not eax
cmp eax, dword [rsp + 0x268]
jge 0x1800b0c2e
xor r8d, r8d
xor edx, edx
mov ecx, dword [rsp + 0x6c]
call fcn.1800953a0
mov word [rsp + 0x4c], ax
movzx eax, word [rsp + 0x4c]
test eax, eax
jge 0x1800b0c2c
movzx eax, byte [0x180146bc7]
movsx eax, al
movzx ecx, word [rsp + 0x60]
movzx ecx, cx
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
mov r9d, 0xb3
xor r8d, r8d
mov edx, 0x63
mov ecx, dword [rsp + 0x90]
call fcn.180094460
mov byte [0x180146caf], al
movsx eax, byte [0x180146caf]
test eax, eax
je 0x1800b0b2a
movzx eax, byte [rsp + 0x41]
movzx eax, al
mov rcx, qword [0x180146d40]
add rax, rcx
mov byte [rsp + 0x41], al
mov eax, 1
imul rax, rax, 0x7d1
lea rcx, [0x18100db70]
movzx edx, byte [rsp + 0x4c]
mov byte [rcx + rax], dl
jmp 0x1800b0c2c
mov eax, dword [0x180146d64]
not eax
test eax, eax
je 0x1800b0b7c
movzx eax, byte [str.U_This_legacy_API_is]
movsx eax, al
test eax, eax
je 0x1800b0b56
mov rax, qword [rsp + 0xe0]
mov qword [rsp + 0x348], rax
jmp 0x1800b0b67
movzx eax, word [rsp + 0x48]
movsx rax, ax
mov qword [rsp + 0x348], rax
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x98], rax
jmp 0x1800b0c2c
mov eax, dword [rsp + 0x64]
test eax, eax
jne 0x1800b0b91
mov dword [rsp + 0x274], 1
jmp 0x1800b0b9c
mov dword [rsp + 0x274], 0
movzx eax, word [rsp + 0x5c]
test eax, eax
jne 0x1800b0bb2
mov dword [rsp + 0x26c], 1
jmp 0x1800b0bbd
mov dword [rsp + 0x26c], 0
cmp dword [rsp + 0x26c], 0
jle 0x1800b0bd4
mov dword [rsp + 0x270], 1
jmp 0x1800b0bdf
mov dword [rsp + 0x270], 0
mov eax, dword [rsp + 0x270]
cmp dword [rsp + 0x274], eax
je 0x1800b0c05
imul rax, qword [rsp + 0x90], 0x663190fa
mov qword [rsp + 0x90], rax
jmp 0x1800b0c2c
movzx eax, byte [0x180146c43]
test eax, eax
je 0x1800b0c2c
movzx eax, word [rsp + 0x4c]
mov ecx, 8
imul rcx, rcx, 0x18f9
lea rdx, [0x1811e2d00]
mov qword [rdx + rcx], rax
jmp 0x1800b0c4c
movzx eax, byte [0x180146c41]
movzx eax, al
test eax, eax
je 0x1800b0c4c
mov rax, qword [rsp + 0x90]
shl rax, 2
mov byte [rsp + 0x41], al
mov rax, qword [rsp + 0x7b0]
mov eax, dword [rax]
inc eax
mov rcx, qword [rsp + 0x7b0]
mov dword [rcx], eax
mov dword [rsp + 0x2a4], 4
lea rcx, [rsp + 0x88]
call fcn.1800a6e00
jmp 0x1800afbc0
mov rax, qword [rsp + 0x798]
cmp qword [rsp + 0x418], rax
jne 0x1800b0e50
movzx eax, word [0x180146d0c]
movzx eax, ax
movzx ecx, byte [0x180146bee]
movsx ecx, cl
cmp eax, ecx
jg 0x1800b0d8d
mov rax, qword [0x180146d20]
movzx ecx, word [rsp + 0x5c]
cmp rax, rcx
jbe 0x1800b0ce4
movzx eax, byte [rsp + 0x41]
movzx eax, al
mov word [rsp + 0x48], ax
mov rax, qword [0x180146cf0]
add rax, 0xd
mov word [rsp + 0x4c], ax
jmp 0x1800b0d88
movzx eax, byte [0x180146c2e]
test eax, eax
je 0x1800b0d19
movabs rax, 0x78da23606e811
xor ecx, ecx
cmp rcx, rax
je 0x1800b0d19
movsx rax, word [rsp + 0x44]
mov rcx, qword [0x180146d18]
and rax, rcx
mov word [0x180146d08], ax
jmp 0x1800b0d88
movzx eax, word [0x180146d28]
cwde
test eax, eax
je 0x1800b0d88
movzx eax, word [rsp + 0x50]
cwde
mov ecx, dword [0x180146d64]
sub eax, ecx
mov eax, eax
mov qword [0x180146d50], rax
movsx eax, word [0x180146d10]
sub eax, dword [rsp + 0x68]
movsx ecx, word [0x180146d08]
movzx edx, byte [0x180146c43]
add ecx, edx
xor eax, ecx
mov eax, eax
mov ecx, dword [0x180146d34]
mov ecx, ecx
mov rdx, qword [0x180146d20]
add rdx, rcx
mov rcx, rdx
not rcx
mov edx, dword [0x180146d64]
mov edx, edx
add rcx, rdx
add rax, rcx
mov qword [0x180146d00], rax
jmp 0x1800b0e3e
mov rax, qword [0x180146cf0]
not rax
test rax, rax
je 0x1800b0dc6
movzx eax, byte [rsp + 0x41]
movzx eax, al
not eax
cmp eax, 0x4746
jl 0x1800b0dc6
movzx eax, byte [0x180146c42]
movsx eax, al
imul eax, eax, 0xe2b4ac66
mov eax, eax
mov qword [rsp + 0x78], rax
jmp 0x1800b0e3e
movzx eax, byte [rsp + 0x42]
movsx eax, al
test eax, eax
je 0x1800b0e0a
mov eax, dword [0x180146d2c]
add eax, 0xd8d3
mov eax, eax
mov rcx, qword [rsp + 0xe0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xe0], rax
movzx eax, word [rsp + 0x58]
movzx eax, ax
sub eax, 0x1a7b0ed0
mov dword [0x180146d4c], eax
jmp 0x1800b0e3e
movzx eax, byte [str.U_This_legacy_API_is]
movsx eax, al
test eax, eax
je 0x1800b0e3e
movzx eax, word [0x180146d58]
movzx eax, ax
add eax, 0x548f
mov dword [rsp + 0x70], eax
movsx eax, word [0x180146c5c]
add eax, 0x2254
cdqe
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x88]
call fcn.1800a6e00
jmp 0x1800afbc0
mov r8d, 0x104
xor edx, edx
lea rcx, [rsp + 0x550]
call fcn.1800311d0
mov rax, qword [0x180146d40]
test rax, rax
je 0x1800b0eca
movzx eax, word [rsp + 0x60]
movzx eax, ax
movabs rcx, 0xe089f73532c7a
imul rax, rcx
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [0x180146d40]
add rcx, rdx
not rcx
movzx edx, byte [0x180146c2f]
movsx rdx, dl
sub rcx, rdx
sub rax, rcx
mov qword [rsp + 0x78], rax
movsx eax, byte [rsp + 0x40]
mov ecx, dword [rsp + 0x6c]
add eax, ecx
movsx ecx, byte [rsp + 0x40]
and ecx, eax
mov eax, ecx
mov byte [rsp + 0x40], al
mov r9d, 0x104
lea r8, [rsp + 0x550]
mov rdx, qword [rsp + 0x798]
mov rcx, qword [rsp + 0x790]
call fcn.1800ab8d0
mov r8d, 0x104
xor edx, edx
lea rcx, [rsp + 0x660]
call fcn.1800311d0
mov rax, qword [0x180146d40]
movzx ecx, word [rsp + 0x4c]
cmp rax, rcx
jae 0x1800b0f20
mov dword [rsp + 0x27c], 1
jmp 0x1800b0f2b
mov dword [rsp + 0x27c], 0
mov rax, qword [0x180146d40]
cmp rax, 3
jae 0x1800b0f45
mov dword [rsp + 0x278], 1
jmp 0x1800b0f50
mov dword [rsp + 0x278], 0
mov eax, dword [rsp + 0x278]
cmp dword [rsp + 0x27c], eax
jl 0x1800b0f78
mov eax, 0xcad55558
mov rcx, qword [0x180146cf0]
and rcx, rax
mov rax, rcx
mov byte [0x180146c03], al
mov r9d, 0x104
lea r8, [rsp + 0x660]
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x790]
call fcn.1800ab8d0
lea rax, [rsp + 0xb0]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0xb0]
call fcn.1800ca7e0
lea rcx, [rsp + 0x390]
mov rdi, rcx
mov rsi, rax
mov ecx, 0xe
rep movsb byte [rdi], byte [rsi]
lea r9, [rsp + 0x390]
lea r8, [rsp + 0x550]
mov edx, 5
mov rcx, qword [sym.imp.SHLWAPI.dll_StrStrIA]
call fcn.180082490
test rax, rax
je 0x1800b1088
lea rax, [rsp + 0xb1]
mov rdi, rax
xor eax, eax
mov ecx, 1
rep stosb byte [rdi], al
lea rcx, [rsp + 0xb1]
call fcn.1800ca900
lea rcx, [rsp + 0x3d0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea r9, [rsp + 0x3d0]
lea r8, [rsp + 0x660]
mov edx, 5
mov rcx, qword [sym.imp.SHLWAPI.dll_StrStrIA]
call fcn.180082490
test rax, rax
je 0x1800b1088
mov eax, dword [0x181001ff0]
mov dword [0x180146c44], eax
movzx eax, word [0x180146d0c]
movzx eax, ax
sub eax, 0x97
mov dword [rsp + 0x70], eax
lea rcx, [rsp + 0x88]
call fcn.1800a6e00
jmp 0x1800afbc0
mov r8d, 0x104
xor edx, edx
lea rcx, [rsp + 0x440]
call fcn.1800311d0
mov r9d, 0x104
lea r8, [rsp + 0x440]
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x790]
call fcn.1800ab8d0
mov dword [rsp + 0x280], eax
mov rax, qword [rsp + 0x88]
add rax, 0x11c
mov r8d, 0x103
lea rdx, [rsp + 0x440]
mov rcx, rax
call fcn.180100850
mov rax, qword [rsp + 0x88]
add rax, 0x11c
mov qword [rsp + 0x388], rax
mov qword [rsp + 0x2d8], 0xffffffffffffffff
inc qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x388]
mov rcx, qword [rsp + 0x2d8]
cmp byte [rax + rcx], 0
jne 0x1800b110d
mov rax, qword [rsp + 0x2d8]
test rax, rax
je 0x1800b132c
mov rax, qword [rsp + 0x78]
mov ecx, dword [rsp + 0xa8]
mov dword [rsp + 0x30], ecx
mov ecx, dword [0x180146d64]
mov dword [rsp + 0x28], ecx
mov dword [rsp + 0x20], 0
mov r9d, eax
xor r8d, r8d
mov edx, 0x68
mov ecx, 0x30
call fcn.180094b10
mov byte [rsp + 0x40], al
movsx eax, byte [rsp + 0x40]
test eax, eax
jg 0x1800b1239
movzx eax, byte [0x180146c86]
movzx ecx, word [rsp + 0x60]
movzx ecx, cx
imul eax, ecx
not eax
test eax, eax
jne 0x1800b11ba
movzx eax, byte [0x180146bef]
movzx eax, al
not eax
test eax, eax
jne 0x1800b11ba
mov qword [rsp + 0x350], 0
jmp 0x1800b11c6
mov qword [rsp + 0x350], 1
mov rax, qword [0x180146d18]
not rax
mov rcx, qword [rsp + 0x78]
sub rcx, rax
mov rax, rcx
cmp qword [rsp + 0x350], rax
jg 0x1800b120f
movzx eax, byte [0x180146c5f]
imul eax, dword [rsp + 0x68]
movzx ecx, byte [0x180146c5f]
or ecx, eax
mov eax, ecx
mov byte [0x180146c5f], al
mov eax, dword [rsp + 0x70]
mov eax, eax
mov qword [rsp + 0x78], rax
jmp 0x1800b1237
cmp qword [rsp + 0xa8], 0
jne 0x1800b1237
movzx eax, word [rsp + 0x44]
dec ax
mov word [rsp + 0x44], ax
movzx eax, word [rsp + 0x5c]
add eax, 0x2649
mov byte [0x180146c5f], al
jmp 0x1800b1262
cmp qword [rsp + 0x90], 0
je 0x1800b1262
mov eax, dword [rsp + 0x6c]
mov eax, eax
mov rcx, qword [rsp + 0x78]
sub rax, rcx
mov ecx, dword [rsp + 0x6c]
mov ecx, ecx
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x6c], eax
mov r8d, 0x104
xor edx, edx
lea rcx, [rsp + 0x440]
call fcn.1800311d0
mov r9d, 0x104
lea r8, [rsp + 0x440]
mov rdx, qword [rsp + 0x798]
mov rcx, qword [rsp + 0x790]
call fcn.1800ab8d0
mov dword [rsp + 0x280], eax
mov rax, qword [rsp + 0x88]
add rax, 0x11c
lea rdx, [rsp + 0x440]
mov rcx, rax
call fcn.1800ca0b0
test eax, eax
je 0x1800b132c
mov byte [0x180146c5f], 0
mov rax, qword [0x180146d68]
imul rax, rax, 0x6deb
mov word [0x180146d5c], ax
mov rax, qword [0x180146cf8]
imul rax, rax, 0xa3
mov dword [0x180146d64], eax
movzx eax, byte [0x180146c5f]
mov byte [rsp + 0x314], al
cmp byte [rsp + 0x314], 0
je 0x1800b130d
jmp 0x1800b131a
mov eax, dword [0x181001ff0]
mov qword [0x180146d50], rax
lea rcx, [rsp + 0x88]
call fcn.1800a6e00
jmp 0x1800afbc0
mov rax, qword [rsp + 0x7a8]
cmp qword [rsp + 0xe8], rax
jae 0x1800b147b
mov eax, dword [0x180146d34]
mov ecx, dword [rsp + 0x6c]
cmp eax, ecx
jbe 0x1800b13c1
cmp qword [0x180146d00], 0
jne 0x1800b13c1
mov rax, qword [0x180146cf8]
test rax, rax
je 0x1800b13c1
movzx eax, byte [0x180146bee]
movsx eax, al
test eax, eax
je 0x1800b1394
movzx eax, byte [rsp + 0x41]
movzx eax, al
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
and eax, ecx
mov byte [rsp + 0x41], al
mov dword [rsp + 0x6c], 0x4f11533c
jmp 0x1800b13c1
movzx eax, byte [0x180146c03]
movzx eax, al
test eax, eax
je 0x1800b13c1
movzx eax, byte [rsp + 0x42]
movsx eax, al
and eax, 0x33
mov byte [0x180146c2f], al
mov eax, dword [0x181001ff0]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x7a0]
mov rcx, qword [rsp + 0xe8]
mov rdx, qword [rsp + 0x88]
mov qword [rax + rcx*8], rdx
movsx eax, word [0x180146d10]
xor r9d, r9d
mov r8d, eax
xor edx, edx
mov ecx, 0x77
call fcn.180094760
mov eax, eax
mov qword [rsp + 0x98], rax
mov rax, qword [rsp + 0x98]
test rax, rax
jg 0x1800b1435
movzx eax, word [rsp + 0x4c]
mov ecx, dword [rsp + 0x64]
sub eax, ecx
mov word [rsp + 0x60], ax
movsx eax, word [0x180146d3c]
mov ecx, dword [0x180146d14]
sub eax, ecx
mov word [0x180146d3c], ax
jmp 0x1800b1468
mov rax, qword [rsp + 0x78]
movabs rcx, 0xe2ed6394267ea
sub rax, rcx
mov word [rsp + 0x58], ax
movzx eax, word [0x180146d58]
movzx eax, ax
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
imul eax, ecx
mov word [0x180146d58], ax
mov rax, qword [rsp + 0xe8]
inc rax
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x1800b1510
movzx eax, word [rsp + 0x4c]
movzx ecx, word [0x180146d0c]
movzx ecx, cx
cmp eax, ecx
jl 0x1800b14ac
mov dword [rsp + 0x288], 1
jmp 0x1800b14b7
mov dword [rsp + 0x288], 0
movzx eax, word [rsp + 0x4c]
cmp eax, 0x43
jl 0x1800b14ce
mov dword [rsp + 0x284], 1
jmp 0x1800b14d9
mov dword [rsp + 0x284], 0
mov eax, dword [rsp + 0x284]
cmp dword [rsp + 0x288], eax
jge 0x1800b150e
mov eax, dword [0x180146cf0]
mov dword [rsp + 0x6c], eax
movsx rax, byte [rsp + 0x40]
movabs rcx, 0xae6de521a8b49
add rax, rcx
mov qword [rsp + 0xb8], rax
jmp 0x1800b1540
movzx eax, byte [rsp + 0x41]
movzx eax, al
movzx ecx, byte [0x180146bef]
movzx ecx, cl
cmp eax, ecx
jg 0x1800b1540
mov eax, 0xffffe83d
mov word [rsp + 0x44], ax
mov rax, qword [rsp + 0x98]
shl rax, 4
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x7b0]
mov eax, dword [rax]
inc eax
mov rcx, qword [rsp + 0x7b0]
mov dword [rcx], eax
jmp 0x1800afbc0
cmp qword [rsp + 0x790], 0xffffffffffffffff
je 0x1800b1700
movsx eax, byte [rsp + 0x40]
movzx ecx, byte [rsp + 0x42]
movsx ecx, cl
sub eax, ecx
movsx ecx, byte [rsp + 0x40]
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x40], al
movzx eax, word [rsp + 0x60]
movzx eax, ax
test eax, eax
je 0x1800b15a5
movzx eax, byte [0x180146c41]
movzx eax, al
mov dword [rsp + 0x28c], eax
jmp 0x1800b15b4
movzx eax, byte [rsp + 0x42]
movsx eax, al
mov dword [rsp + 0x28c], eax
mov eax, dword [rsp + 0x28c]
mov dword [rsp + 0x64], eax
mov rcx, qword [rsp + 0x2e0]
call fcn.1801007ac
mov eax, dword [rsp + 0x64]
cmp eax, 0x504a
je 0x1800b15e4
mov dword [rsp + 0x29c], 1
jmp 0x1800b15ef
mov dword [rsp + 0x29c], 0
cmp qword [rsp + 0xa8], 0
jne 0x1800b1610
cmp dword [0x180146d38], 0
jne 0x1800b1610
mov dword [rsp + 0x298], 0
jmp 0x1800b161b
mov dword [rsp + 0x298], 1
movzx eax, byte [0x180146c5b]
movsx eax, al
test eax, eax
jne 0x1800b1636
mov dword [rsp + 0x290], 1
jmp 0x1800b1641
mov dword [rsp + 0x290], 0
movzx eax, word [rsp + 0x58]
movzx eax, ax
cmp eax, dword [rsp + 0x290]
je 0x1800b165f
mov dword [rsp + 0x294], 1
jmp 0x1800b166a
mov dword [rsp + 0x294], 0
movzx eax, byte [rsp + 0x42]
movsx eax, al
mov ecx, dword [rsp + 0x294]
not ecx
cmp eax, ecx
jge 0x1800b168c
mov dword [rsp + 0x2a0], 1
jmp 0x1800b1697
mov dword [rsp + 0x2a0], 0
mov eax, dword [rsp + 0x298]
mov ecx, dword [rsp + 0x29c]
sub ecx, eax
mov eax, ecx
cmp eax, dword [rsp + 0x2a0]
jg 0x1800b16d3
movzx eax, byte [0x180146c42]
movsx rax, al
mov rcx, qword [0x180146d68]
add rcx, rax
mov rax, rcx
mov qword [0x180146d68], rax
jmp 0x1800b16f3
mov eax, dword [0x180146d48]
not eax
movzx ecx, word [rsp + 0x4c]
movsx edx, word [0x180146d10]
sub ecx, edx
not ecx
add eax, ecx
mov byte [0x180146c5e], al
mov rcx, qword [rsp + 0x2e8]
call fcn.1801007ac
mov eax, dword [rsp + 0x6c]
mov eax, eax
mov rcx, qword [rsp + 0x98]
sub rax, rcx
mov ecx, dword [rsp + 0x6c]
mov ecx, ecx
add rcx, rax
mov rax, rcx
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x2a4]
add rsp, 0x778
pop rdi
pop rsi
ret