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

Disassembly:
push rsi
push rdi
sub rsp, 0x308
mov rax, qword [0x1800c68a0]
mov byte [rsp + 0xa0], al
mov eax, dword [0x1800c6844]
mov word [rsp + 0x2c], ax
mov eax, 0xffff964e
mov word [rsp + 0x24], ax
mov qword [rsp + 0x98], 0x132d
mov eax, 0xffffd456
mov word [rsp + 0x3c], ax
mov rax, qword [0x1800c68a0]
mov byte [rsp + 0x28], al
movzx eax, word [0x1800c6824]
mov byte [rsp + 0x22], al
mov byte [rsp + 0x21], 0x38
mov eax, dword [0x1800c68bc]
mov dword [rsp + 0x68], eax
mov eax, 0xffff9e94
mov word [rsp + 0x34], ax
mov eax, 0xaaa0a9af
mov qword [rsp + 0x70], rax
mov eax, 0x7dff
mov word [rsp + 0x54], ax
mov eax, 0xffffebea
mov word [rsp + 0x44], ax
movzx eax, word [0x1800c68b8]
mov qword [rsp + 0x60], rax
mov rax, qword [0x1800c6818]
mov word [rsp + 0x58], ax
movsx ax, byte [0x1800c675e]
mov word [rsp + 0x40], ax
mov dword [rsp + 0x4c], 0x13c3
mov byte [rsp + 0x20], 4
mov rax, qword [0x1800c68c0]
mov word [rsp + 0x38], ax
movzx eax, word [0x1800c682c]
mov word [rsp + 0x48], ax
movzx eax, word [0x1800c6898]
mov word [rsp + 0x50], ax
mov eax, 0x5b
mov word [rsp + 0x30], ax
mov dword [rsp + 0x80], 0xdce2
mov dword [rsp + 0x25c], 0x922b00d2
mov qword [rsp + 0x288], 0x11b6
mov dword [rsp + 0x260], 0x34e
mov eax, dword [str.g]
mov word [rsp + 0x184], ax
mov eax, 0x70a2
mov word [rsp + 0x200], ax
mov rax, qword [0x1800c6830]
mov word [rsp + 0x1fc], ax
movzx eax, byte [0x1800c6820]
mov byte [rsp + 0xa1], al
mov dword [rsp + 0x264], 0x15fb3200
movzx eax, word [0x1800c682c]
movzx eax, ax
mov qword [rsp + 0x290], rax
mov rax, qword [0x1800c68a0]
mov byte [rsp + 0xa4], al
movabs rax, 0x9194ef0c2b82f
mov qword [rsp + 0x298], rax
mov eax, 0x67
mov word [rsp + 0x1f8], ax
mov byte [rsp + 0xa2], 0x2d
movzx eax, word [0x1800c6828]
mov word [rsp + 0x1f4], ax
mov eax, dword [0x1800c689c]
mov byte [rsp + 0xa3], al
movzx eax, word [0x1800c675c]
movsx rax, ax
mov qword [rsp + 0x2a0], rax
mov eax, dword [0x180895050]
mov dword [rsp + 0xac], eax
movzx eax, word [0x1800c6884]
movzx eax, ax
test eax, eax
je 0x18005d519
cmp qword [0x1800c6870], 0
je 0x18005d519
mov qword [rsp + 0x210], 1
jmp 0x18005d525
mov qword [rsp + 0x210], 0
mov rax, qword [0x1800c6838]
cmp rax, qword [rsp + 0x210]
jne 0x18005d543
mov dword [rsp + 0xf8], 1
jmp 0x18005d54e
mov dword [rsp + 0xf8], 0
mov rax, qword [rsp + 0x70]
cmp qword [rsp + 0x70], rax
jge 0x18005d571
movzx eax, word [rsp + 0x3c]
cwde
test eax, eax
je 0x18005d571
mov dword [rsp + 0xf4], 1
jmp 0x18005d57c
mov dword [rsp + 0xf4], 0
mov eax, dword [rsp + 0xf4]
mov ecx, dword [rsp + 0xf8]
or ecx, eax
mov eax, ecx
test eax, eax
jne 0x18005d597
jmp 0x18005d679
cmp qword [0x1800c6870], 0
je 0x18005d5b5
movzx eax, word [rsp + 0x2c]
movzx eax, ax
sar eax, 3
mov byte [rsp + 0x21], al
jmp 0x18005d679
mov rax, qword [0x1800c68a0]
cmp rax, qword [rsp + 0x70]
je 0x18005d607
movzx eax, word [0x1800c6854]
movzx eax, ax
movzx ecx, word [rsp + 0x2c]
movzx ecx, cx
imul eax, ecx
movzx ecx, word [0x1800c6854]
movzx ecx, cx
and ecx, eax
mov eax, ecx
mov word [0x1800c6854], ax
movzx eax, word [0x1800c6824]
movzx eax, ax
sub eax, 0x25fe2265
cdqe
mov qword [0x1800c6888], rax
jmp 0x18005d679
movzx eax, word [rsp + 0x34]
movsx rax, ax
mov rcx, qword [0x1800c68c0]
cmp rax, rcx
ja 0x18005d641
movzx eax, word [rsp + 0x48]
movzx eax, ax
test eax, eax
jne 0x18005d634
mov rax, qword [0x1800c6818]
test rax, rax
je 0x18005d641
mov dword [rsp + 0xfc], 1
jmp 0x18005d64c
mov dword [rsp + 0xfc], 0
mov eax, dword [rsp + 0xfc]
not eax
test eax, eax
je 0x18005d679
mov rax, qword [0x1800c6890]
add rax, 0x27938129
movzx ecx, byte [0x1800c679f]
and rcx, rax
mov rax, rcx
mov byte [0x1800c679f], al
mov eax, dword [rsp + 0xac]
add eax, 0x546
mov dword [rsp + 0x114], eax
mov eax, dword [0x180895050]
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0xac]
add eax, 0x616
mov dword [rsp + 0x118], eax
movsx eax, word [rsp + 0x38]
imul eax, eax, 0xffffff70
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0xac]
add eax, 0x576
mov dword [rsp + 0x268], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xb0], eax
mov eax, dword [rsp + 0xb0]
add eax, 0x833
mov dword [rsp + 0x1a4], eax
movzx eax, word [rsp + 0x30]
movabs rcx, 0xe22cb85045a18
add rax, rcx
mov byte [0x1800c6776], al
mov eax, dword [rsp + 0xb0]
add eax, 0x6f9
mov dword [rsp + 0xc4], eax
mov eax, 3
mov word [rsp + 0x50], ax
mov eax, 0xffff8310
mov word [0x1800c6880], ax
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x80], eax
movzx eax, word [rsp + 0x50]
mov dword [rsp + 0x84], eax
cmp dword [rsp + 0x84], 0
je 0x18005d772
cmp dword [rsp + 0x84], 1
je 0x18005d79e
cmp dword [rsp + 0x84], 2
je 0x18005d7d9
cmp dword [rsp + 0x84], 3
je 0x18005d7ea
jmp 0x18005d810
mov rax, qword [0x1800c6838]
sub rax, 0xda
mov byte [rsp + 0x22], al
movsx rax, word [rsp + 0x24]
movabs rcx, 0x4a8f1a90aa33d
add rax, rcx
mov dword [str.g], eax
jmp 0x18005d810
movzx eax, word [rsp + 0x2c]
movzx eax, ax
mov rcx, qword [0x1800c68c0]
xor rax, rcx
mov word [rsp + 0x2c], ax
movsx eax, word [0x1800c6858]
movsx ecx, word [0x1800c6880]
add eax, ecx
movsx ecx, word [0x1800c6858]
sub ecx, eax
mov eax, ecx
mov word [0x1800c6858], ax
jmp 0x18005d810
movabs rax, 0x8de70272f1006
mov qword [rsp + 0x60], rax
jmp 0x18005d810
movzx eax, word [rsp + 0x58]
sub eax, 0xc713eeb7
mov word [rsp + 0x24], ax
movsx rax, word [rsp + 0x44]
mov rcx, qword [rsp + 0x98]
add rax, rcx
mov byte [0x1800c675f], al
mov eax, dword [rsp + 0xb0]
add eax, 0x4d2
mov dword [rsp + 0x26c], eax
movzx eax, word [0x1800c675c]
cwde
test eax, eax
je 0x18005d841
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x218], rax
jmp 0x18005d852
movzx eax, byte [rsp + 0x20]
movsx rax, al
mov qword [rsp + 0x218], rax
movzx eax, word [rsp + 0x218]
mov word [0x1800c67f4], ax
mov eax, dword [0x180895050]
mov dword [rsp + 0xb4], eax
movzx eax, byte [rsp + 0x22]
movsx eax, al
movzx ecx, byte [rsp + 0x22]
movsx ecx, cl
cmp eax, ecx
jge 0x18005d88f
mov dword [rsp + 0x104], 1
jmp 0x18005d89a
mov dword [rsp + 0x104], 0
movzx eax, byte [rsp + 0x22]
movsx eax, al
cmp eax, 0x18
jge 0x18005d8b4
mov dword [rsp + 0x100], 1
jmp 0x18005d8bf
mov dword [rsp + 0x100], 0
mov eax, dword [rsp + 0x100]
mov eax, dword [rsp + 0xb4]
add eax, 0x54f
mov dword [rsp + 0x270], eax
movzx eax, word [0x1800c6860]
cwde
mov ecx, dword [0x1800c686c]
add ecx, eax
mov eax, ecx
mov ecx, dword [0x1800c686c]
xor ecx, eax
mov eax, ecx
mov dword [0x1800c686c], eax
mov rax, qword [rsp + 0x60]
inc rax
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0xb4]
add eax, 0x5aea
mov dword [rsp + 0x274], eax
movsx eax, word [rsp + 0x24]
movzx ecx, word [rsp + 0x30]
imul eax, ecx
test eax, eax
jne 0x18005d93a
mov qword [rsp + 0x220], 1
jmp 0x18005d946
mov qword [rsp + 0x220], 0
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0xb4]
add eax, 0x3b11
mov dword [rsp + 0x108], eax
mov eax, dword [rsp + 0x108]
mov ecx, dword [rsp + 0x108]
xor eax, ecx
xor eax, 0x5d2
mov dword [rsp + 0x1a8], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xb8], eax
mov eax, dword [rsp + 0xb8]
add eax, 0x576
mov dword [rsp + 0x190], eax
mov eax, dword [rsp + 0xb8]
add eax, 0x476d
mov dword [rsp + 0x18c], eax
xor eax, eax
mov word [rsp + 0x48], ax
movzx eax, word [rsp + 0x48]
movzx eax, ax
mov dword [rsp + 0x188], eax
cmp dword [rsp + 0x188], 0
je 0x18005d9d7
jmp 0x18005d9f4
mov rax, qword [0x1800c6818]
imul rax, rax, 0x58
mov ecx, dword [0x1800c686c]
sub rcx, rax
mov rax, rcx
mov dword [0x1800c686c], eax
mov eax, dword [rsp + 0xb8]
add eax, 0x26b7
mov dword [rsp + 0x278], eax
mov eax, 4
mov word [rsp + 0x24], ax
movzx eax, byte [0x180895050]
mov byte [0x1800c675e], al
movsx rax, word [0x1800c6850]
mov rcx, qword [0x1800c6890]
add rax, rcx
not rax
mov rcx, qword [0x1800c68b0]
imul rax, rcx
mov byte [rsp + 0x20], al
movsx eax, word [rsp + 0x24]
mov dword [rsp + 0x78], eax
cmp dword [rsp + 0x78], 0
je 0x18005da7b
cmp dword [rsp + 0x78], 1
je 0x18005da8a
cmp dword [rsp + 0x78], 2
je 0x18005da9d
cmp dword [rsp + 0x78], 3
je 0x18005db09
cmp dword [rsp + 0x78], 4
je 0x18005db2f
jmp 0x18005db52
mov dword [0x1800c6820], 0x72ff
jmp 0x18005db52
movzx eax, word [rsp + 0x54]
cwde
shl eax, 7
mov word [rsp + 0x24], ax
jmp 0x18005db52
movzx eax, word [rsp + 0x58]
test eax, eax
jne 0x18005dab3
mov dword [rsp + 0x10c], 1
jmp 0x18005dabe
mov dword [rsp + 0x10c], 0
movsx eax, byte [rsp + 0x21]
mov ecx, dword [rsp + 0x10c]
imul ecx, eax
mov eax, ecx
cdqe
movzx ecx, word [0x1800c682c]
movzx ecx, cx
mov rdx, qword [0x1800c6818]
imul rdx, rcx
mov rcx, rdx
not rcx
imul rax, rcx
mov qword [0x1800c6890], rax
movzx eax, byte [rsp + 0x20]
movsx eax, al
sar eax, 7
mov word [rsp + 0x34], ax
jmp 0x18005db52
movzx eax, word [rsp + 0x2c]
movzx eax, ax
add eax, 0x44
cdqe
mov qword [0x1800c68a0], rax
mov eax, dword [rsp + 0x68]
add eax, 0xec
mov word [0x1800c68d0], ax
jmp 0x18005db52
movzx eax, word [rsp + 0x2c]
movzx eax, ax
mov rcx, qword [rsp + 0x60]
imul rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
movzx eax, word [rsp + 0x4c]
mov word [rsp + 0x30], ax
mov eax, dword [rsp + 0x18c]
mov ecx, dword [rsp + 0x190]
xor eax, ecx
xor eax, 0x442d
mov dword [rsp + 0x1ac], eax
mov byte [0x1800c675e], 0
movzx eax, word [rsp + 0x3c]
cwde
test eax, eax
je 0x18005db90
movzx eax, byte [rsp + 0x28]
movzx eax, al
mov dword [rsp + 0x110], eax
jmp 0x18005db9c
movzx eax, word [rsp + 0x50]
mov dword [rsp + 0x110], eax
movzx eax, word [rsp + 0x110]
mov word [rsp + 0x44], ax
movzx eax, byte [0x1800c675e]
mov byte [rsp + 0x194], al
cmp byte [rsp + 0x194], 0
je 0x18005dbc3
jmp 0x18005dbd4
mov rax, qword [0x1800c6890]
sar rax, 1
mov word [0x1800c6854], ax
mov eax, dword [0x180895050]
mov dword [rsp + 0xbc], eax
movzx eax, byte [rsp + 0x20]
movsx eax, al
add eax, 0x3b
mov word [rsp + 0x38], ax
mov eax, dword [rsp + 0xbc]
add eax, 0x540
mov dword [rsp + 0x19c], eax
movsx rax, word [0x1800c6850]
mov rcx, qword [0x1800c6830]
mov rdx, qword [rsp + 0x60]
sub rcx, rdx
add rax, rcx
mov word [0x1800c6840], ax
movzx eax, word [0x1800c682c]
mov word [0x1800c6864], ax
mov eax, dword [rsp + 0xbc]
add eax, 0x4ff
mov dword [rsp + 0x280], eax
mov eax, dword [rsp + 0xbc]
add eax, 0x7c89
mov dword [rsp + 0x198], eax
mov eax, 2
mov word [0x1800c6898], ax
movsxd rax, dword [rsp + 0x4c]
movabs rcx, 0x9e38be194847f
imul rax, rcx
movzx ecx, byte [rsp + 0x20]
movsx rcx, cl
sub rcx, rax
mov rax, rcx
mov byte [rsp + 0x20], al
mov eax, 3
mov word [rsp + 0x34], ax
movzx eax, byte [rsp + 0x20]
movsx rax, al
mov rcx, qword [0x1800c6830]
add rcx, rax
mov rax, rcx
mov qword [0x1800c6830], rax
movzx eax, byte [0x1800c675b]
movzx eax, al
mov word [0x1800c6774], ax
movzx eax, word [rsp + 0x34]
cwde
mov dword [rsp + 0x88], eax
cmp dword [rsp + 0x88], 0
je 0x18005dcfa
cmp dword [rsp + 0x88], 1
je 0x18005dd0b
cmp dword [rsp + 0x88], 2
je 0x18005dd26
cmp dword [rsp + 0x88], 3
je 0x18005dd39
jmp 0x18005dd53
movsx eax, byte [rsp + 0x21]
add eax, dword [0x1800c68ac]
mov byte [rsp + 0x21], al
jmp 0x18005dd53
movzx eax, word [rsp + 0x30]
mov rcx, qword [0x1800c68b0]
add rcx, rax
mov rax, rcx
mov qword [0x1800c68b0], rax
jmp 0x18005dd53
movzx eax, byte [rsp + 0x28]
movzx eax, al
and rax, qword [rsp + 0x70]
mov byte [rsp + 0x28], al
jmp 0x18005dd53
movzx eax, word [rsp + 0x54]
movsx rax, ax
mov rcx, qword [rsp + 0x60]
imul rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov eax, dword [rsp + 0x198]
or eax, 0xfb
mov ecx, dword [rsp + 0x19c]
xor ecx, 0x83
or eax, ecx
xor eax, 0x7b93
mov ecx, dword [rsp + 0x118]
mov edx, dword [rsp + 0x114]
xor ecx, edx
mov edx, dword [rsp + 0x114]
mov r8d, dword [rsp + 0x118]
xor edx, r8d
sub ecx, edx
sub eax, ecx
mov dword [rsp + 0x1b0], eax
mov eax, 1
mov word [rsp + 0x30], ax
mov rax, qword [0x1800c68c0]
shl rax, 3
mov word [rsp + 0x48], ax
mov eax, dword [0x180895050]
mov dword [rsp + 0xc0], eax
mov rax, qword [rsp + 0x60]
imul rax, rax, 0xb16a
mov word [0x1800c6880], ax
mov byte [0x1800c679e], 4
mov eax, dword [rsp + 0xc0]
add eax, 0x9e89
mov dword [rsp + 0x1a0], eax
movsx eax, word [0x1800c6880]
add eax, 0x14
mov word [rsp + 0x34], ax
mov eax, dword [0x1800c68d4]
dec eax
mov dword [0x1800c68d4], eax
mov eax, dword [rsp + 0xc0]
add eax, 0x567
mov dword [rsp + 0x11c], eax
xor eax, eax
cmp eax, 1
je 0x18005de44
movzx eax, word [0x1800c6868]
movzx ecx, byte [0x1800c679f]
add eax, ecx
mov word [0x1800c6868], ax
jmp 0x18005de56
xor eax, eax
cmp eax, 0x3cc4b965
je 0x18005de56
mov qword [rsp + 0x60], 0xbd54
mov eax, dword [rsp + 0xc0]
add eax, 0x7d00
mov dword [rsp + 0x230], eax
lea rax, [rsp + 0x2a8]
lea rcx, str.Return_value_canno
mov rdi, rax
mov rsi, rcx
mov ecx, 0x13
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x2a8]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
cdqe
mov qword [0x1800c6870], rax
mov eax, dword [rsp + 0x11c]
or eax, 0x3249
mov ecx, dword [rsp + 0x1a0]
mov edx, dword [rsp + 0x11c]
imul ecx, edx
add eax, ecx
mov ecx, 0x358b0ef
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0xc4]
xor ecx, 0x2b4
mov edx, dword [rsp + 0x1a4]
mov edi, 0x2b4
sub edi, edx
mov edx, edi
imul ecx, edx
mov edx, dword [rsp + 0xc4]
mov edi, dword [rsp + 0xc4]
add edx, edi
imul edx, edx, 0
imul ecx, edx
sub eax, ecx
mov dword [rsp + 0x1b4], eax
movzx eax, word [0x1800c682c]
movzx eax, ax
movsx ecx, word [rsp + 0x38]
add eax, ecx
mov word [0x1800c682c], ax
mov eax, dword [0x180895050]
mov dword [rsp + 0xc8], eax
movsx eax, word [rsp + 0x24]
sub eax, dword [rsp + 0x4c]
mov dword [0x1800c685c], eax
mov eax, dword [rsp + 0x1a8]
mov ecx, dword [rsp + 0xc8]
add eax, ecx
mov dword [rsp + 0xcc], eax
movzx eax, word [0x1800c682c]
movzx eax, ax
xor eax, 0x2d3fd61b
mov word [rsp + 0x44], ax
movzx eax, word [0x1800c6864]
cwde
mov ecx, dword [0x1800c68d4]
sub eax, ecx
movzx ecx, word [0x1800c6864]
movsx ecx, cx
and ecx, eax
mov eax, ecx
mov word [0x1800c6864], ax
mov eax, dword [rsp + 0x1ac]
mov ecx, dword [rsp + 0xc8]
add eax, ecx
mov dword [rsp + 0x234], eax
mov eax, dword [rsp + 0x1b0]
mov ecx, dword [rsp + 0xc8]
add eax, ecx
mov dword [rsp + 0xd0], eax
mov eax, dword [0x1800c68bc]
test eax, eax
je 0x18005dfce
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x208], rax
jmp 0x18005dfdd
mov rax, qword [0x1800c68a0]
mov qword [rsp + 0x208], rax
mov rax, qword [rsp + 0x208]
mov qword [0x1800c6818], rax
mov rax, qword [0x1800c6838]
test rax, rax
je 0x18005e00b
movzx eax, word [0x1800c6884]
movzx eax, ax
mov dword [rsp + 0x120], eax
jmp 0x18005e01a
movzx eax, byte [rsp + 0x20]
movsx eax, al
mov dword [rsp + 0x120], eax
movzx eax, word [rsp + 0x120]
mov word [rsp + 0x38], ax
mov qword [rsp + 0x90], 0
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, 0x228
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rsp + 0x90], rax
mov eax, dword [rsp + 0x1b4]
mov ecx, dword [rsp + 0xcc]
sub eax, ecx
mov ecx, dword [rsp + 0xd0]
mov edx, dword [rsp + 0xd0]
or ecx, edx
add eax, ecx
mov ecx, dword [rsp + 0xcc]
mov edx, dword [rsp + 0xcc]
add ecx, edx
mov edx, dword [rsp + 0xd0]
add ecx, edx
cmp eax, ecx
je 0x18005f08a
mov rax, qword [0x1800c68a0]
not rax
add rax, 0xba2b
test rax, rax
jne 0x18005e0ba
mov dword [rsp + 0x124], 1
jmp 0x18005e0c5
mov dword [rsp + 0x124], 0
mov eax, dword [rsp + 0x124]
mov dword [rsp + 0x80], eax
movsx eax, byte [rsp + 0x21]
imul eax, eax, 0xfc2b
mov word [rsp + 0x30], ax
mov eax, dword [0x180895050]
mov dword [rsp + 0xd4], eax
mov eax, dword [rsp + 0xd4]
add eax, 0xf7ab
mov dword [rsp + 0x1b8], eax
mov eax, dword [rsp + 0xd4]
add eax, 0x57f
mov dword [rsp + 0x1bc], eax
mov eax, 0x8e96
mov word [0x1800c682c], ax
mov rax, qword [0x1800c6830]
mov ecx, 0xee2584b4
imul rax, rcx
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0xd4]
add eax, 0x147b
mov dword [rsp + 0x238], eax
movsx rax, word [0x1800c68d0]
movabs rcx, 0x5f02cadf7ed5d
cmp rax, rcx
jle 0x18005e1ea
mov rax, qword [rsp + 0x60]
movzx ecx, word [0x1800c67f4]
movsx rcx, cx
cmp rax, rcx
je 0x18005e186
mov dword [rsp + 0x12c], 1
jmp 0x18005e191
mov dword [rsp + 0x12c], 0
mov rax, qword [rsp + 0x60]
cmp rax, 5
je 0x18005e1a9
mov dword [rsp + 0x128], 1
jmp 0x18005e1b4
mov dword [rsp + 0x128], 0
mov eax, dword [rsp + 0x128]
cmp dword [rsp + 0x12c], eax
jne 0x18005e1d8
mov rax, qword [0x1800c6818]
sub rax, 0xf175
mov word [rsp + 0x24], ax
jmp 0x18005e1e5
mov eax, dword [0x180895050]
mov qword [0x1800c68c8], rax
jmp 0x18005e29e
movsx rax, word [rsp + 0x44]
mov rcx, qword [0x1800c6888]
cmp rax, rcx
ja 0x18005e209
mov dword [rsp + 0x134], 1
jmp 0x18005e214
mov dword [rsp + 0x134], 0
movzx eax, word [rsp + 0x30]
test eax, eax
jne 0x18005e22a
mov dword [rsp + 0x130], 1
jmp 0x18005e235
mov dword [rsp + 0x130], 0
movsx eax, word [rsp + 0x38]
cmp dword [rsp + 0x130], eax
jne 0x18005e250
mov dword [rsp + 0x138], 1
jmp 0x18005e25b
mov dword [rsp + 0x138], 0
mov eax, dword [rsp + 0x134]
not eax
cmp eax, dword [rsp + 0x138]
jle 0x18005e29e
movzx eax, word [rsp + 0x2c]
movzx eax, ax
movsx ecx, byte [0x1800c675e]
add eax, ecx
movzx ecx, word [rsp + 0x2c]
movzx ecx, cx
and ecx, eax
mov eax, ecx
mov word [rsp + 0x2c], ax
mov rax, qword [rsp + 0x60]
shr rax, 3
mov byte [0x1800c675b], al
mov eax, dword [str.g]
movzx ecx, word [rsp + 0x30]
cmp eax, ecx
jae 0x18005e2ba
mov dword [rsp + 0x140], 1
jmp 0x18005e2c5
mov dword [rsp + 0x140], 0
mov eax, dword [str.g]
cmp eax, 0x20
jae 0x18005e2dd
mov dword [rsp + 0x13c], 1
jmp 0x18005e2e8
mov dword [rsp + 0x13c], 0
mov eax, dword [rsp + 0x13c]
cmp dword [rsp + 0x140], eax
jg 0x18005e37c
movzx eax, word [0x1800c6868]
test eax, eax
jne 0x18005e362
movsx eax, byte [0x1800c679e]
test eax, eax
jne 0x18005e31f
mov dword [rsp + 0x144], 1
jmp 0x18005e32a
mov dword [rsp + 0x144], 0
movzx eax, word [rsp + 0x58]
cmp eax, dword [rsp + 0x144]
je 0x18005e345
mov dword [rsp + 0x148], 1
jmp 0x18005e350
mov dword [rsp + 0x148], 0
movsx eax, byte [0x1800c675e]
or eax, dword [rsp + 0x148]
test eax, eax
je 0x18005e37c
movzx eax, byte [0x1800c675b]
movzx eax, al
movzx ecx, byte [0x1800c6777]
imul eax, ecx
mov byte [0x1800c675b], al
mov eax, dword [rsp + 0x1b8]
mov ecx, dword [rsp + 0x1bc]
sub eax, ecx
or eax, 0xd6f1
add eax, 0xffff1189
mov dword [rsp + 0x1d8], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xd8], eax
movzx eax, word [rsp + 0x40]
mov ecx, dword [rsp + 0x80]
cmp eax, ecx
ja 0x18005e3c7
mov dword [rsp + 0x150], 1
jmp 0x18005e3d2
mov dword [rsp + 0x150], 0
movzx eax, word [rsp + 0x40]
cmp eax, 0xf
jg 0x18005e3e9
mov dword [rsp + 0x14c], 1
jmp 0x18005e3f4
mov dword [rsp + 0x14c], 0
mov eax, dword [rsp + 0x14c]
cmp dword [rsp + 0x150], eax
je 0x18005e423
mov eax, dword [0x1800c68d4]
mov ecx, dword [rsp + 0x4c]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x4c], eax
jmp 0x18005e4cf
movzx eax, word [0x1800c6840]
test eax, eax
je 0x18005e454
movsx eax, byte [0x1800c675e]
movzx ecx, word [0x1800c6860]
movsx ecx, cx
add eax, ecx
movsx ecx, byte [0x1800c675e]
add ecx, eax
mov eax, ecx
mov byte [0x1800c675e], al
jmp 0x18005e4cf
mov rax, qword [0x1800c6818]
cmp rax, 0xce
jg 0x18005e498
mov rax, qword [0x1800c6878]
add rax, 0x18
movzx ecx, word [0x1800c6884]
movzx ecx, cx
sub rcx, rax
mov rax, rcx
mov word [0x1800c6884], ax
movzx eax, byte [0x1800c6777]
sar eax, 7
cdqe
mov qword [rsp + 0x60], rax
jmp 0x18005e4cf
movzx eax, word [0x1800c6864]
cwde
test eax, eax
je 0x18005e4cf
movsx eax, word [0x1800c6858]
movzx ecx, word [0x1800c6868]
sub eax, ecx
mov word [0x1800c6858], ax
movzx eax, byte [0x1800c675b]
movzx eax, al
add eax, 0x87e0
mov word [rsp + 0x40], ax
mov eax, dword [rsp + 0xd8]
add eax, 0x4f0d
mov dword [rsp + 0xdc], eax
movabs rax, 0xb9e0e4d6d2416
mov rcx, qword [0x1800c6870]
add rcx, rax
mov rax, rcx
mov byte [0x1800c6773], al
mov eax, dword [0x180895050]
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0xd8]
add eax, 0x591
mov dword [rsp + 0x1c0], eax
movsx eax, word [0x1800c6880]
movsx ecx, word [0x1800c6858]
not ecx
cmp eax, ecx
jge 0x18005e535
jmp 0x18005e607
movzx eax, byte [0x1800c6776]
movzx eax, al
test eax, eax
jne 0x18005e550
mov dword [rsp + 0x158], 1
jmp 0x18005e55b
mov dword [rsp + 0x158], 0
cmp dword [rsp + 0x68], 0xcb
jge 0x18005e572
mov dword [rsp + 0x154], 1
jmp 0x18005e57d
mov dword [rsp + 0x154], 0
mov eax, dword [rsp + 0x154]
cmp dword [rsp + 0x158], eax
jl 0x18005e5a9
movzx eax, byte [0x1800c675f]
movzx eax, al
mov rcx, qword [0x1800c6848]
add rax, rcx
mov byte [0x1800c675f], al
jmp 0x18005e607
movsx eax, word [0x1800c6850]
test eax, eax
je 0x18005e5ce
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x18005e5ce
mov dword [rsp + 0x15c], 1
jmp 0x18005e5d9
mov dword [rsp + 0x15c], 0
mov eax, dword [0x1800c685c]
cmp eax, dword [rsp + 0x15c]
jne 0x18005e607
mov eax, dword [0x1800c6844]
inc eax
mov dword [0x1800c6844], eax
movsx eax, word [rsp + 0x44]
sub eax, 0xe4
cdqe
mov qword [rsp + 0x60], rax
mov eax, dword [rsp + 0xd8]
add eax, 0x514
mov dword [rsp + 0x23c], eax
movsx eax, word [rsp + 0x24]
test eax, eax
je 0x18005e70a
mov eax, 4
mov word [rsp + 0x44], ax
movsxd rax, dword [rsp + 0x4c]
movabs rcx, 0xaa04501472dc4
add rax, rcx
mov byte [rsp + 0x22], al
movzx eax, word [rsp + 0x40]
movzx ecx, word [0x1800c675c]
movsx ecx, cx
add eax, ecx
not eax
mov byte [rsp + 0x28], al
movsx eax, word [rsp + 0x44]
mov dword [rsp + 0x7c], eax
cmp dword [rsp + 0x7c], 0
je 0x18005e68c
cmp dword [rsp + 0x7c], 1
je 0x18005e69b
cmp dword [rsp + 0x7c], 2
je 0x18005e6bd
cmp dword [rsp + 0x7c], 3
je 0x18005e6d3
cmp dword [rsp + 0x7c], 4
je 0x18005e6e0
jmp 0x18005e708
mov eax, dword [rsp + 0x80]
not eax
mov byte [rsp + 0x20], al
jmp 0x18005e708
movzx eax, word [0x1800c6884]
movzx eax, ax
mov ecx, 4
imul rcx, rcx, 0xa7
lea rdx, [0x180a7ee50]
mov dword [rdx + rcx], eax
jmp 0x18005e708
mov eax, dword [0x1800c6844]
add eax, 0xb2
mov eax, eax
mov qword [0x1800c6888], rax
jmp 0x18005e708
movzx eax, byte [0x180895050]
mov byte [rsp + 0x22], al
jmp 0x18005e708
movzx eax, byte [rsp + 0x20]
movsx eax, al
shl eax, 6
mov dword [rsp + 0x4c], eax
movsx eax, word [rsp + 0x38]
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
lea eax, [rcx + rax + 0xb10f]
mov word [rsp + 0x3c], ax
jmp 0x18005e758
movzx eax, byte [0x1800c6777]
mov ecx, dword [str.g]
cmp eax, ecx
jae 0x18005e758
movzx eax, byte [rsp + 0x28]
movzx eax, al
add eax, 0xd47f0bda
mov word [0x1800c682c], ax
movzx eax, word [rsp + 0x34]
cwde
movzx ecx, word [0x1800c6864]
movsx ecx, cx
xor eax, ecx
movzx ecx, word [rsp + 0x30]
mov edx, dword [rsp + 0x80]
add ecx, edx
sub eax, ecx
mov word [0x1800c68b8], ax
mov eax, dword [rsp + 0xdc]
mov ecx, dword [rsp + 0x1c0]
imul eax, ecx
mov ecx, dword [rsp + 0xdc]
mov edx, dword [rsp + 0xdc]
xor ecx, edx
add eax, ecx
mov ecx, 0x1b80e75
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x1dc], eax
movzx eax, byte [0x1800c6773]
movsx eax, al
movzx ecx, byte [0x1800c675f]
movzx ecx, cl
cmp eax, ecx
jl 0x18005e96d
movzx eax, word [rsp + 0x3c]
cwde
movzx ecx, byte [0x1800c675b]
movzx ecx, cl
sub eax, ecx
test eax, eax
je 0x18005e886
mov eax, 4
imul rax, rax, 0x39
lea rcx, [0x1809b0f20]
movsxd rax, dword [rcx + rax]
mov qword [rsp + 0x98], rax
movzx eax, word [0x1800c6864]
cwde
test eax, eax
jne 0x18005e7f7
mov qword [rsp + 0x228], 1
jmp 0x18005e803
mov qword [rsp + 0x228], 0
mov rax, qword [0x1800c6830]
mov rcx, qword [rsp + 0x228]
imul rcx, rax
mov rax, rcx
test rax, rax
jne 0x18005e82b
mov dword [rsp + 0x160], 1
jmp 0x18005e836
mov dword [rsp + 0x160], 0
movzx eax, word [rsp + 0x40]
imul eax, eax, 0xd5
not eax
mov ecx, dword [rsp + 0x160]
add ecx, eax
mov eax, ecx
cdqe
movzx ecx, word [rsp + 0x54]
movsx ecx, cx
movsx edx, word [rsp + 0x38]
sub ecx, edx
not ecx
movsxd rcx, ecx
mov rdx, qword [rsp + 0x60]
mov rdi, qword [0x1800c68a0]
sub rdx, rdi
imul rcx, rdx
imul rax, rcx
mov byte [0x1800c679e], al
jmp 0x18005e96b
movzx eax, byte [rsp + 0x22]
movsx eax, al
test eax, eax
jne 0x18005e8c2
movzx eax, word [0x1800c67f4]
cwde
mov ecx, dword [0x1800c685c]
add eax, ecx
mov word [0x1800c67f4], ax
mov rax, qword [0x1800c6878]
add rax, 0x1adbafbf
mov word [0x1800c68a8], ax
jmp 0x18005e96b
cmp dword [rsp + 0x68], 0
je 0x18005e8dd
movsx eax, byte [0x1800c675e]
shl eax, 4
mov word [rsp + 0x40], ax
jmp 0x18005e96b
movzx eax, word [0x1800c675c]
movsx rax, ax
movabs rcx, 0x133c7292c4327
cmp rax, rcx
jge 0x18005e904
mov dword [rsp + 0x164], 1
jmp 0x18005e90f
mov dword [rsp + 0x164], 0
movzx eax, word [rsp + 0x34]
cwde
cmp dword [rsp + 0x4c], eax
jne 0x18005e928
mov dword [rsp + 0x168], 1
jmp 0x18005e933
mov dword [rsp + 0x168], 0
mov eax, dword [rsp + 0x164]
not eax
cmp eax, dword [rsp + 0x168]
jl 0x18005e96b
movzx eax, word [rsp + 0x2c]
movzx eax, ax
shl eax, 1
cdqe
mov qword [0x1800c6888], rax
movzx eax, byte [0x1800c679f]
imul rax, qword [rsp + 0x70]
mov byte [0x1800c679f], al
jmp 0x18005e9cb
xor eax, eax
cmp eax, 0xd989
je 0x18005e982
mov dword [0x1800c6820], 2
jmp 0x18005e9cb
cmp dword [0x1800c6820], 0
jne 0x18005e998
mov dword [rsp + 0x16c], 1
jmp 0x18005e9a3
mov dword [rsp + 0x16c], 0
movzx eax, byte [rsp + 0x28]
movzx eax, al
cmp dword [rsp + 0x16c], eax
jle 0x18005e9cb
movzx eax, byte [0x1800c679f]
not eax
movsx ecx, word [rsp + 0x24]
xor eax, ecx
not eax
mov word [rsp + 0x48], ax
mov eax, dword [0x180895050]
mov dword [rsp + 0xe0], eax
mov eax, dword [rsp + 0xe0]
add eax, 0x4de
mov dword [rsp + 0x240], eax
movzx eax, byte [0x1800c675f]
movzx eax, al
mov rcx, qword [rsp + 0x98]
sub rax, rcx
movzx ecx, byte [0x1800c675f]
movzx ecx, cl
or rcx, rax
mov rax, rcx
mov byte [0x1800c675f], al
mov eax, dword [rsp + 0xe0]
add eax, 0xc0c3
mov dword [rsp + 0x244], eax
mov eax, dword [rsp + 0xe0]
add eax, 0x12bb
mov dword [rsp + 0x248], eax
movzx eax, byte [rsp + 0x20]
movsx eax, al
movzx ecx, word [0x1800c67f4]
movsx ecx, cx
add eax, ecx
movzx ecx, byte [rsp + 0x20]
movsx ecx, cl
sub ecx, eax
mov eax, ecx
mov byte [rsp + 0x20], al
mov dword [rsp + 0x1e0], 0x803
mov eax, dword [0x1800c686c]
movabs rcx, 0x320df560ce922
imul rax, rcx
mov qword [rsp + 0x70], rax
mov eax, dword [0x180895050]
mov dword [rsp + 0xe4], eax
mov eax, dword [rsp + 0xe4]
add eax, 0x55e
mov dword [rsp + 0x24c], eax
mov eax, dword [rsp + 0xe4]
add eax, 0x73c1
mov dword [rsp + 0x1c4], eax
movsx eax, byte [rsp + 0x21]
imul eax, eax, 0x1e
mov word [rsp + 0x2c], ax
mov eax, dword [rsp + 0xe4]
add eax, 0x3351
mov dword [rsp + 0x250], eax
movsx eax, word [rsp + 0x24]
mov ecx, dword [0x1800c68bc]
imul eax, ecx
movsx ecx, word [rsp + 0x24]
or ecx, eax
mov eax, ecx
mov word [rsp + 0x24], ax
mov eax, dword [rsp + 0x1c4]
add eax, 0xffff8fc4
mov dword [rsp + 0x1e8], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xe8], eax
mov eax, dword [rsp + 0xe8]
add eax, 0x1012e
mov dword [rsp + 0x1cc], eax
mov eax, dword [rsp + 0xe8]
add eax, 0x4f8
mov dword [rsp + 0x170], eax
mov eax, dword [rsp + 0xe8]
add eax, 0x5a2
mov dword [rsp + 0x1c8], eax
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x1c8]
add eax, ecx
mov ecx, dword [rsp + 0x170]
mov edx, dword [rsp + 0x1cc]
imul ecx, edx
imul eax, ecx
mov eax, eax
movabs rcx, 0x34eb544fd4
xor rax, rcx
mov dword [rsp + 0x1ec], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xec], eax
lea rax, [rsp + 0x2d8]
lea rcx, str.network_unreachabl
mov rdi, rax
mov rsi, rcx
mov ecx, 0x26
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x2d8]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov word [0x1800c6840], ax
mov eax, dword [rsp + 0xec]
add eax, 0x4c2
mov dword [rsp + 0x1d4], eax
movzx eax, word [rsp + 0x34]
cwde
imul eax, eax, 0x3f
mov byte [0x1800c679e], al
mov eax, dword [rsp + 0xec]
add eax, 0x2bde
mov dword [rsp + 0x254], eax
mov eax, dword [rsp + 0xec]
add eax, 0xc72a
mov dword [rsp + 0x1d0], eax
mov byte [0x1800c6773], 3
mov eax, 0xe6b8
mov word [rsp + 0x2c], ax
movzx eax, word [rsp + 0x70]
mov word [rsp + 0x54], ax
movzx eax, byte [0x1800c6773]
mov byte [rsp + 0x8c], al
cmp byte [rsp + 0x8c], 0
je 0x18005ec66
cmp byte [rsp + 0x8c], 1
je 0x18005ec81
cmp byte [rsp + 0x8c], 2
je 0x18005eccb
cmp byte [rsp + 0x8c], 3
je 0x18005ecea
jmp 0x18005ed10
movzx eax, word [rsp + 0x50]
movzx ecx, word [0x1800c6884]
movzx ecx, cx
add eax, ecx
mov word [rsp + 0x50], ax
jmp 0x18005ed10
movzx eax, word [0x1800c6898]
movzx eax, ax
movabs rcx, 0xc39c4c3c5410f
imul rax, rcx
mov rcx, qword [0x1800c68c0]
and rcx, rax
mov rax, rcx
mov qword [0x1800c68c0], rax
movzx eax, word [rsp + 0x48]
movzx eax, ax
movabs rcx, 0xd6e37658fe045
add rax, rcx
mov word [0x1800c68a8], ax
jmp 0x18005ed10
mov rax, qword [rsp + 0x98]
movabs rcx, 0x2a73ad87db9d4
imul rax, rcx
mov word [0x1800c68d0], ax
jmp 0x18005ed10
movzx eax, word [rsp + 0x48]
movzx eax, ax
xor eax, 0xbbdb
mov word [rsp + 0x30], ax
mov rax, qword [0x1800c6838]
mov ecx, 0xaca2fe4e
sub rax, rcx
mov word [rsp + 0x24], ax
mov eax, dword [rsp + 0x1d0]
mov ecx, dword [rsp + 0x1d4]
sub eax, ecx
or eax, 0x7d
mov ecx, 0xc2dc
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x1f0], eax
cmp qword [rsp + 0x90], 0
jne 0x18005f08a
movzx eax, word [0x1800c682c]
movzx eax, ax
movzx ecx, word [rsp + 0x3c]
movsx ecx, cx
cmp eax, ecx
jne 0x18005eda5
movsx eax, byte [0x1800c675e]
movsx ecx, byte [rsp + 0x21]
cmp eax, ecx
je 0x18005ed7e
movzx eax, word [rsp + 0x3c]
cwde
add eax, 0xb3eb
cdqe
mov qword [0x1800c68c8], rax
jmp 0x18005eda0
movzx eax, word [0x180895050]
mov word [rsp + 0x40], ax
movzx eax, word [0x1800c6884]
movzx eax, ax
add eax, 0xfd0477a7
mov word [0x1800c6868], ax
jmp 0x18005ee79
movsx eax, byte [rsp + 0x21]
test eax, eax
je 0x18005edf0
movzx eax, word [0x1800c6884]
movzx eax, ax
imul eax, eax, 0x151c
mov word [0x1800c6828], ax
movsx rax, byte [rsp + 0x21]
movabs rcx, 0xc8cab2f498c68
add rax, rcx
movzx ecx, byte [0x1800c679f]
sub rcx, rax
mov rax, rcx
mov byte [0x1800c679f], al
jmp 0x18005ee79
movzx eax, word [0x1800c6840]
test eax, eax
je 0x18005ee16
mov rax, qword [0x1800c68a0]
movabs rcx, 0xf3e2f31226761
imul rax, rcx
mov byte [rsp + 0x20], al
jmp 0x18005ee79
movzx eax, word [rsp + 0x58]
test eax, eax
jne 0x18005ee2c
mov dword [rsp + 0x174], 1
jmp 0x18005ee37
mov dword [rsp + 0x174], 0
movsx eax, word [rsp + 0x38]
cmp dword [rsp + 0x174], eax
jl 0x18005ee79
cmp dword [rsp + 0x68], 0
je 0x18005ee5f
movzx eax, word [0x1800c6898]
movzx eax, ax
mov dword [rsp + 0x178], eax
jmp 0x18005ee6c
movzx eax, word [rsp + 0x54]
cwde
mov dword [rsp + 0x178], eax
movzx eax, word [rsp + 0x178]
mov word [rsp + 0x34], ax
movsx eax, word [0x1800c6828]
test eax, eax
je 0x18005ee86
jmp 0x18005eef0
movsx eax, byte [rsp + 0x21]
cmp eax, dword [rsp + 0x4c]
jl 0x18005ee9e
mov dword [rsp + 0x17c], 1
jmp 0x18005eea9
mov dword [rsp + 0x17c], 0
movzx eax, word [rsp + 0x40]
cmp eax, dword [rsp + 0x17c]
jge 0x18005eef0
mov eax, 8
imul rax, rax, 0x26
lea rcx, [0x180895060]
movzx edx, word [0x1800c6884]
movzx edx, dx
add rdx, qword [rcx + rax]
mov rax, rdx
mov word [0x1800c6884], ax
movzx eax, byte [0x1800c675b]
movzx eax, al
sar eax, 7
mov dword [rsp + 0x68], eax
mov eax, dword [0x180895050]
mov dword [rsp + 0xa8], eax
cmp dword [rsp + 0x68], 0
je 0x18005ef2f
movzx eax, byte [0x1800c675f]
dec al
mov byte [0x1800c675f], al
movsx eax, word [rsp + 0x38]
add eax, 0x41
cdqe
mov rcx, qword [rsp + 0x70]
or rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
jmp 0x18005ef43
movsx eax, word [rsp + 0x44]
mov ecx, 0xa9
sub ecx, eax
mov eax, ecx
mov dword [str.g], eax
mov eax, dword [rsp + 0x1d8]
mov ecx, dword [rsp + 0xa8]
add eax, ecx
mov dword [rsp + 0x1e4], eax
mov eax, dword [rsp + 0x1dc]
mov ecx, dword [rsp + 0xa8]
add eax, ecx
mov dword [rsp + 0x258], eax
lea rax, [rsp + 0x2c0]
lea rcx, str.trust2005
mov rdi, rax
mov rsi, rcx
mov ecx, 0x14
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x2c0]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
cdqe
mov qword [0x1800c6890], rax
mov eax, dword [rsp + 0x1e0]
mov ecx, dword [rsp + 0xa8]
add eax, ecx
mov dword [rsp + 0x27c], eax
mov eax, dword [rsp + 0x1e4]
mov ecx, dword [rsp + 0x1e8]
or eax, ecx
mov ecx, dword [rsp + 0x1ec]
mov edx, dword [rsp + 0x1f0]
imul ecx, edx
cmp eax, ecx
je 0x18005f08a
movzx eax, word [rsp + 0x3c]
cwde
test eax, eax
je 0x18005f00c
movabs rax, 0x44df17c854d13
xor ecx, ecx
cmp rcx, rax
je 0x18005f00c
mov dword [rsp + 0x180], 0
jmp 0x18005f017
mov dword [rsp + 0x180], 1
movzx eax, word [rsp + 0x3c]
cwde
cmp eax, dword [rsp + 0x180]
jl 0x18005f033
mov dword [rsp + 0xf0], 1
jmp 0x18005f03e
mov dword [rsp + 0xf0], 0
mov eax, dword [rsp + 0xf0]
not eax
test eax, eax
je 0x18005f086
movzx eax, word [0x1800c675c]
movsx rax, ax
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x98], rax
movsx rax, word [rsp + 0x24]
movabs rcx, 0x600d1a1bdc31c
xor rax, rcx
mov word [0x1800c6860], ax
xor eax, eax
jmp 0x18005f0f6
mov rax, qword [rsp + 0x90]
mov qword [rax], 0
mov rax, qword [rsp + 0x90]
mov qword [rax + 0x10], 0
mov rax, qword [rsp + 0x90]
add rax, 0x18
mov rdi, rax
xor eax, eax
mov ecx, 0x104
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x90]
add rax, 0x11c
mov rdi, rax
xor eax, eax
mov ecx, 0x104
rep stosb byte [rdi], al
mov rax, qword [rsp + 0x90]
mov qword [rax + 0x220], 0
mov rax, qword [rsp + 0x90]
add rsp, 0x308
pop rdi
pop rsi
ret