Function at 0x180058350
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x148
mov rax, qword [0x1800a3248]
xor rax, rsp
mov qword [rsp + 0x138], rax
mov eax, 2
imul rax, rax, 6
mov rcx, qword [str.aDmrcdYaq___]
movzx eax, word [rcx + rax]
cmp eax, 0x31
jne 0x1800583b0
mov eax, 2
imul rax, rax, 7
mov ecx, 0x3e
mov rdx, qword [str.aDmrcdYaq___]
mov word [rdx + rax], cx
mov eax, 2
imul rax, rax, 0xc
mov rcx, qword [str.e_e_Gv5BioyE]
movzx eax, word [rcx + rax]
cmp eax, 0x51
jne 0x1800583e2
mov eax, 2
imul rax, rax, 0
mov ecx, 0x4b
mov rdx, qword [str.e_e_Gv5BioyE]
mov word [rdx + rax], cx
mov eax, dword [0x1800a2da0]
add eax, 0x85bdcf15
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x3e9d82bc
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x6f2ccd15
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x8720f978
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xbcf6ae13
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xaf3f6791
mov dword [0x1800a2da0], eax
mov dword [rsp + 0x68], 0
mov eax, dword [0x1800a2da0]
and eax, 0x28a5b140
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x779fe036
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xe28646b4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xe8013a69
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x19423668
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x8740b41b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xaf721549
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xfdb89de4
mov dword [0x1800a2da0], eax
mov rcx, qword [rsp + 0x160]
call fcn.1800573b0
mov byte [rsp + 0x38], al
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x18005865c
imul eax, dword [0x1800a2da0], 0xf1fe63fb
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xc3d5f919
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x8643b895
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x34a79a0b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x772e5044
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x2bb2a08
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x720c1b6f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x9708e281
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xf24fb97c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xf4fd515a
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x9353e07e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x66731d28
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xd440b4a4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x3a4536ce
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x178]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x100], rax
mov eax, dword [0x1800a2da0]
and eax, 0x82ba499e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x6a7b10ab
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x971539d8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xbcedb351
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x100]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x68], eax
jmp 0x1800587bc
mov eax, dword [0x1800a2da0]
add eax, 0x3577ee0d
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x46811afa
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xd20443ff
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x6075b2f2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xb25df49c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x30947052
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xde0b2b47
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xc742cf20
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x3c9c2e66
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x3f372156
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x178]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x178]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x108], rax
mov eax, dword [0x1800a2da0]
sub eax, 0x5abe2992
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x72f0c158
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x4f3e83da
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x23764700
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x4b3fd854
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x2f0e9f6f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xc93337b7
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x1514ffa5
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x108]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x68], eax
mov eax, dword [0x1800a2da0]
or eax, 0x8bd145c4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xcf09010c
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
imul eax, eax, 5
mov dword [rsp + 0x88], eax
imul eax, dword [0x1800a2da0], 0xb570bbee
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xc6d5713
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xfacfebd7
mov dword [0x1800a2da0], eax
mov ecx, dword [rsp + 0x88]
call fcn.180049db0
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
je 0x18005a943
imul eax, dword [0x1800a2da0], 0xd53778dc
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xd8fff1b1
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xcb742e3
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x6cfd76f8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x393ab4da
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x9e110114
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x81538811
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xb404fd33
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xd76d232e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xef91db28
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x8fbd701e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x84b9247f
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x68]
mov r8d, eax
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x20]
call fcn.180049ca0
mov eax, dword [0x1800a2da0]
xor eax, 0x37373d79
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x8cdd539b
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x20]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x90], rax
imul eax, dword [0x1800a2da0], 0x4e08feb1
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x1b15961b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x85a6bde5
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x90]
movzx eax, word [rax + 0x14]
mov rcx, qword [rsp + 0x90]
lea rax, [rcx + rax + 0x18]
mov qword [rsp + 0x98], rax
mov eax, dword [0x1800a2da0]
add eax, 0x9ecaf3e0
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x67106af8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x7345e35d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x28ca6da0
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x5ec82d15
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xca204bb0
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xa4a9599e
mov dword [0x1800a2da0], eax
mov eax, 0x28
imul rax, rax, 0
mov rcx, qword [rsp + 0x98]
mov eax, dword [rcx + rax + 0x14]
mov dword [rsp + 0x4c], eax
imul eax, dword [0x1800a2da0], 0xb8417cd
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x38126b5c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x2d4a59a7
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x7520a2b9
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xb95dec10
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xd17aee9d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xa840564f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xa8cd12af
mov dword [0x1800a2da0], eax
xor eax, eax
mov word [rsp + 0x44], ax
jmp 0x180058ae2
movzx eax, word [rsp + 0x44]
inc ax
mov word [rsp + 0x44], ax
movzx eax, word [rsp + 0x44]
mov rcx, qword [rsp + 0x90]
movzx ecx, word [rcx + 6]
cmp eax, ecx
jge 0x180058b4c
imul eax, dword [0x1800a2da0], 0x3c46821b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x74863d47
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x94884753
mov dword [0x1800a2da0], eax
movzx eax, word [rsp + 0x44]
imul rax, rax, 0x28
mov rcx, qword [rsp + 0x98]
mov eax, dword [rcx + rax + 0x10]
mov ecx, dword [rsp + 0x4c]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x4c], eax
jmp 0x180058ad5
mov rcx, qword [rsp + 0x20]
call fcn.1800573b0
movzx eax, al
test eax, eax
je 0x180059474
mov eax, dword [0x1800a2da0]
add eax, 0xc007d593
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xcad29c9c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x42a7766a
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xb854a459
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x553d10e0
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xb42225c0
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x27c3c62c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xa67c77d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xbd2a1f13
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x3c332b52
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xb98edbf5
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xdb53a66
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xfec06bff
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x20]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x50], rax
mov eax, dword [0x1800a2da0]
and eax, 0xbfe0ade9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xa9e07761
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x543b54e2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x8be05031
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x50]
movzx eax, word [rax + 0x14]
mov rcx, qword [rsp + 0x50]
lea rax, [rcx + rax + 0x18]
mov rcx, qword [rsp + 0x50]
movzx ecx, word [rcx + 6]
dec ecx
movsxd rcx, ecx
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rsp + 0x28], rax
mov eax, dword [0x1800a2da0]
xor eax, 0xdb5a54ac
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xa3ce67c
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180058d4f
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xa0], rax
jmp 0x180058d5f
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x10]
mov rcx, qword [rsp + 0xa0]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x3c], eax
mov eax, dword [0x1800a2da0]
and eax, 0x25901603
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xce147c26
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x7066e8ba
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xf64268eb
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x3493cb56
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x4f2b16af
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xd733bfa4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xee46160f
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x10]
add eax, dword [rsp + 0x3c]
add eax, dword [rsp + 0x168]
mov rcx, qword [rsp + 0x28]
mov dword [rcx + 8], eax
mov eax, dword [0x1800a2da0]
or eax, 0x69a9b825
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xc8525152
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x323f60ca
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xd0c7715c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x3eb8aa2e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x6f41efbb
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xb8074f34
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x42e785c9
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180058f09
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xa8], rax
jmp 0x180058f19
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x28]
mov ecx, dword [rsp + 0xa8]
mov dword [rax + 0x10], ecx
mov eax, dword [0x1800a2da0]
xor eax, 0x6d0a71cf
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x430b7070
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x1704fd13
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x66509907
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xc243801e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xa47592f8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x77483eac
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xcc64da44
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x28]
add eax, dword [rcx + 0xc]
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x38]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x18005902c
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x28]
add eax, dword [rcx + 0xc]
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x38]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x38]
add rax, rcx
mov qword [rsp + 0xb0], rax
jmp 0x180059046
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x28]
add eax, dword [rcx + 0xc]
mov eax, eax
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x50]
mov ecx, dword [rsp + 0xb0]
mov dword [rax + 0x50], ecx
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x24]
and eax, 0x40
test eax, eax
je 0x18005913a
mov eax, dword [0x1800a2da0]
xor eax, 0xb2354459
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x2a98ddd1
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180059104
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xb8], rax
jmp 0x18005911d
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x20]
add rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 0x20], eax
jmp 0x180059354
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x24]
and eax, 0x80
test eax, eax
je 0x180059242
mov eax, dword [0x1800a2da0]
xor eax, 0xd1450926
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x9e9e679d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x70bbae52
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xe665e9e0
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x18005920c
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xc0], rax
jmp 0x180059225
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x24]
add rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 0x24], eax
jmp 0x180059354
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x24]
and eax, 0x20
test eax, eax
je 0x180059354
mov eax, dword [0x1800a2da0]
or eax, 0x2c76f40f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xad473a1b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x9021115f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x55e6cea8
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xc22141ba
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180059323
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xc8], rax
jmp 0x18005933c
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x3c]
add ecx, eax
mov eax, ecx
mov eax, eax
mov qword [rsp + 0xc8], rax
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x1c]
add rax, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 0x1c], eax
imul eax, dword [0x1800a2da0], 0x35a84168
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xccc8632a
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xceed8db6
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x90ad4fc7
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xf7b6f050
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x77d2d899
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xedf6b360
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x14]
mov rcx, qword [rsp + 0x28]
add eax, dword [rcx + 0x10]
mov rcx, qword [rsp + 0x170]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x20]
call fcn.180056810
cmp eax, 3
jne 0x18005946f
mov eax, dword [0x1800a2da0]
and eax, 0x29d143b3
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x6e73a63f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x8205b8e5
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x7f00006c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x53fa9772
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x24]
bts eax, 0x1b
mov rcx, qword [rsp + 0x28]
mov dword [rcx + 0x24], eax
mov rax, qword [rsp + 0x28]
mov eax, dword [rax + 0x24]
btr eax, 0x19
mov rcx, qword [rsp + 0x28]
mov dword [rcx + 0x24], eax
jmp 0x180059c3d
imul eax, dword [0x1800a2da0], 0x13e30a3d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x433caba8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x4b092623
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xaf1aee4e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x1646c9e4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xbc9dbd58
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x5a001c4b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xa0d1785e
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x8c4045cf
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x20]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x58], rax
mov eax, dword [0x1800a2da0]
sub eax, 0xbbeff912
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xd2e9564f
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x58]
movzx eax, word [rax + 0x14]
mov rcx, qword [rsp + 0x58]
lea rax, [rcx + rax + 0x18]
mov rcx, qword [rsp + 0x58]
movzx ecx, word [rcx + 6]
dec ecx
movsxd rcx, ecx
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rsp + 0x30], rax
mov eax, dword [0x1800a2da0]
sub eax, 0xb90fda60
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x7f1e6538
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x1f408dc1
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xec7785f0
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xc9f23241
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x18005962e
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xd0], rax
jmp 0x18005963e
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x10]
mov rcx, qword [rsp + 0xd0]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x40], eax
imul eax, dword [0x1800a2da0], 0xb32663d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xd608772e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xeedf3970
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x570d21d4
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x10]
add eax, dword [rsp + 0x40]
add eax, dword [rsp + 0x168]
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 8], eax
mov eax, dword [0x1800a2da0]
and eax, 0x2266bbcc
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x651b7fd9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x3ac8f287
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x3615b99c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xf2ee49f8
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180059771
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xd8], rax
jmp 0x180059781
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0x30]
mov ecx, dword [rsp + 0xd8]
mov dword [rax + 0x10], ecx
mov eax, dword [0x1800a2da0]
and eax, 0xbccf494d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xf4e2382e
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x30]
add eax, dword [rcx + 0xc]
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x38]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x18005982e
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x30]
add eax, dword [rcx + 0xc]
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x38]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x38]
add rax, rcx
mov qword [rsp + 0xe0], rax
jmp 0x180059848
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 8]
mov rcx, qword [rsp + 0x30]
add eax, dword [rcx + 0xc]
mov eax, eax
mov qword [rsp + 0xe0], rax
mov rax, qword [rsp + 0x58]
mov ecx, dword [rsp + 0xe0]
mov dword [rax + 0x50], ecx
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x24]
and eax, 0x40
test eax, eax
je 0x18005993c
mov eax, dword [0x1800a2da0]
sub eax, 0x909a35f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x12db92be
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180059906
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xe8], rax
jmp 0x18005991f
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x20]
add rax, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x20], eax
jmp 0x180059b67
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x24]
and eax, 0x80
test eax, eax
je 0x180059a65
mov eax, dword [0x1800a2da0]
sub eax, 0x9595aa8b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x2c83a1a6
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x50c3d627
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xb96652c0
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xb975cbec
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x50dc90fc
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180059a2f
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xf0], rax
jmp 0x180059a48
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x24]
add rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x24], eax
jmp 0x180059b67
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x24]
and eax, 0x20
test eax, eax
je 0x180059b67
mov eax, dword [0x1800a2da0]
sub eax, 0x76b4f460
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x721bd283
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xbd5d50b2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x54f8a8d6
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
mov ecx, ecx
and rax, rcx
test rax, rax
je 0x180059b36
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
dec ecx
not ecx
mov ecx, ecx
and rax, rcx
mov rcx, qword [rsp + 0x20]
movsxd rcx, dword [rcx + 0x3c]
mov rdx, qword [rsp + 0x20]
mov ecx, dword [rdx + rcx + 0x3c]
add rax, rcx
mov qword [rsp + 0xf8], rax
jmp 0x180059b4f
mov eax, dword [rsp + 0x168]
mov ecx, dword [rsp + 0x40]
add ecx, eax
mov eax, ecx
mov eax, eax
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x58]
mov eax, dword [rax + 0x1c]
add rax, qword [rsp + 0xf8]
mov rcx, qword [rsp + 0x58]
mov dword [rcx + 0x1c], eax
mov eax, dword [0x1800a2da0]
and eax, 0xf200c4ec
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x360e6b60
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xe642dc1b
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x49492b90
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x14]
mov rcx, qword [rsp + 0x30]
add eax, dword [rcx + 0x10]
mov rcx, qword [rsp + 0x170]
mov dword [rcx], eax
mov rcx, qword [rsp + 0x20]
call fcn.180056810
cmp eax, 3
jne 0x180059c3d
imul eax, dword [0x1800a2da0], 0x1cb764c2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xb8e21e35
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x6ee0d38e
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xe7385a4e
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x24]
bts eax, 0x1b
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x24], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x24]
btr eax, 0x19
mov rcx, qword [rsp + 0x30]
mov dword [rcx + 0x24], eax
mov rax, qword [rsp + 0x170]
cmp dword [rax], 0
je 0x18005a943
mov eax, dword [0x1800a2da0]
sub eax, 0x38884420
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x56cdb7d6
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xa40bcdbe
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x57b8b33e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x7befb5ec
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xeb8be929
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x4f0698c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x8d22af9e
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov eax, dword [0x1800a2da0]
sub eax, 0xcc8a9ebe
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x978412c9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x72054bf0
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x37bd6fa5
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
mov r8d, eax
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x60]
call fcn.180049ca0
mov eax, dword [0x1800a2da0]
sub eax, 0xcd0dbd27
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xf5503496
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x93b0c7ef
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x1bfb4e65
mov dword [0x1800a2da0], eax
mov dword [rsp + 0x48], 0
jmp 0x180059d9e
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x170]
mov eax, dword [rax]
cmp dword [rsp + 0x48], eax
jae 0x180059fd9
mov eax, dword [0x1800a2da0]
or eax, 0x4d27a67c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xf6680cb
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xab40d58d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x6cbe5859
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x988489dc
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x6e9b8bf9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x3cf1ed55
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xc1932182
mov dword [0x1800a2da0], eax
movzx eax, byte [rsp + 0x38]
test eax, eax
je 0x180059f28
mov eax, dword [0x1800a2da0]
sub eax, 0xc333d053
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xb9141f6
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x20]
movabs rdx, 0x5285241274382195
cmp qword [rcx + rax], rdx
jne 0x180059f23
mov eax, dword [0x1800a2da0]
xor eax, 0xe4607371
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xcc9a7bea
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xbbd005d4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xe758d60c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xfa4f9426
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xbc8c35c9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xe462be62
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xfadbf953
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x48]
mov ecx, dword [rsp + 0x4c]
mov rdx, qword [rsp + 0x20]
mov qword [rdx + rax], rcx
jmp 0x180059fd9
jmp 0x180059fd4
mov eax, dword [0x1800a2da0]
or eax, 0x25efee18
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xedaa0a04
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x20]
cmp dword [rcx + rax], 0x52852412
jne 0x180059fd4
mov eax, dword [0x1800a2da0]
sub eax, 0xe5f21dc9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xb7c81ae2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x4e33100
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x15f7f2e9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xf7a13ebc
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x46b4bb82
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x20]
mov edx, dword [rsp + 0x4c]
mov dword [rcx + rax], edx
jmp 0x180059fd9
jmp 0x180059d94
mov eax, dword [0x1800a2da0]
add eax, 0x19fa3d78
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xdc7af6
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xb7b75271
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x3eaa60a3
mov dword [0x1800a2da0], eax
mov rcx, qword [rsp + 0x178]
call fcn.180056f30
mov qword [rsp + 0x78], rax
imul eax, dword [0x1800a2da0], 0x27edbab3
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x2234e040
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x4418f095
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x8bf4d9d9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x5682acc0
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x92c11933
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xf814bfae
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xb2351ebb
mov dword [0x1800a2da0], eax
mov byte [rsp + 0x118], 0x62
mov byte [rsp + 0x119], 0x2e
mov byte [rsp + 0x11a], 0x64
mov byte [rsp + 0x11b], WSAGetLastError
mov byte [rsp + 0x11c], WSAGetLastError
mov byte [rsp + 0x11d], 0
lea rax, [rsp + 0x11e]
mov rdi, rax
xor eax, eax
mov ecx, 4
rep stosb byte [rdi], al
mov eax, dword [0x1800a2da0]
add eax, 0xa3491793
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xbd119d39
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x67a22c08
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xea766d9d
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xe25d2d4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x1af8031
mov dword [0x1800a2da0], eax
mov byte [rsp + 0x128], 0x63
mov byte [rsp + 0x129], 0x2e
mov byte [rsp + 0x12a], 0x64
mov byte [rsp + 0x12b], WSAGetLastError
mov byte [rsp + 0x12c], WSAGetLastError
mov byte [rsp + 0x12d], 0
lea rax, [rsp + 0x12e]
mov rdi, rax
xor eax, eax
mov ecx, 4
rep stosb byte [rdi], al
cmp qword [rsp + 0x78], 0
je 0x18005a1c2
lea rdx, [rsp + 0x118]
mov rcx, qword [rsp + 0x78]
call fcn.18004a390
test eax, eax
je 0x18005a1ce
cmp qword [rsp + 0x78], 0
jne 0x18005a4b1
mov eax, dword [0x1800a2da0]
and eax, 0x13510171
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xaebee513
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x8d529106
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x6a285ca2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xe654d20
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xa2d5f963
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xff70748e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xc0424668
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xe76287d
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x5945c957
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x3f0b82f6
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x34132550
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x4dafba90
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xf30b95aa
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x3e29acd3
mov dword [0x1800a2da0], eax
mov edx, 0xff
xor ecx, ecx
call fcn.180031050
mov byte [rsp + 0x39], al
mov eax, dword [0x1800a2da0]
add eax, 0xc0d7040f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xfa9c35a7
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x262c44fd
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x509748f1
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xbf5bb855
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xa79051fb
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x168]
mov dword [rax], ecx
mov eax, dword [0x1800a2da0]
add eax, 0xe4ee9b64
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x47f9f150
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xbe93197f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x4cb515bb
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x188cb96e
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x60]
movzx ecx, byte [rsp + 0x39]
mov byte [rax + 4], cl
mov eax, dword [0x1800a2da0]
sub eax, 0xd4bb5a2a
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xda507353
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x830a75f2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x7c55a908
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x12dd017
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xa11a2a17
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xe48e9832
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x45058736
mov dword [0x1800a2da0], eax
mov dword [rsp + 0x6c], 5
mov eax, dword [0x1800a2da0]
sub eax, 0xb3198997
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0x20bfc45d
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xbc332838
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x5bbc3615
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x6c]
mov ecx, dword [rsp + 0x168]
sub ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x6c]
mov rdx, qword [rsp + 0x60]
add rdx, rcx
mov rcx, rdx
movzx r8d, byte [rsp + 0x39]
mov edx, eax
call fcn.180049f70
jmp 0x18005a943
cmp qword [rsp + 0x78], 0
je 0x18005a84d
lea rdx, [rsp + 0x128]
mov rcx, qword [rsp + 0x78]
call fcn.18004a390
test eax, eax
jne 0x18005a84d
mov eax, dword [0x1800a2da0]
xor eax, 0x69ef19e4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x98aa42cc
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xffe57d0c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xcd2b91fa
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xa21486b5
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x46c3a440
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x8fd44d27
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xbfb4a91b
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x168]
mov dword [rax], ecx
mov eax, dword [0x1800a2da0]
sub eax, 0x248d530e
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x3f34a82a
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x8fa6a717
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0xc10ba833
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xcf0030cd
mov dword [0x1800a2da0], eax
mov ecx, 0x38
call fcn.180049db0
mov qword [rsp + 0x80], rax
cmp qword [rsp + 0x80], 0
je 0x18005a71c
imul eax, dword [0x1800a2da0], 0xd32c4a01
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0xcd19e7f
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x283bba28
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x70328432
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x6ffab3e0
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xd5808458
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x60]
lea rdi, [rax + 4]
mov rsi, qword [rsp + 0x80]
mov ecx, 0x38
rep movsb byte [rdi], byte [rsi]
cmp qword [rsp + 0x80], 0
je 0x18005a71c
mov eax, dword [0x1800a2da0]
or eax, 0xe95f5218
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x463b6566
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x1b3fe071
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xc6da8bee
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x928c1071
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0x16127b8c
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x9861fdf4
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x2990ee38
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x7c6a5e1d
mov dword [0x1800a2da0], eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x80]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [0x1800a2da0]
add eax, 0xed820295
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x4e71a5e2
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x1fe68609
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
xor eax, 0xac41e7c5
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xc629bd97
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x34107f3d
mov dword [0x1800a2da0], eax
mov dword [rsp + 0x70], 0x3c
imul eax, dword [0x1800a2da0], 0xb7dc21b4
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xb2aca39
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xfc6f0de8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x147553d8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x68789ef9
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xe93ba8eb
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x6f020066
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x60]
add rax, 4
mov ecx, dword [rsp + 0x70]
mov edx, dword [rsp + 0x168]
sub edx, ecx
mov ecx, edx
mov edx, dword [rsp + 0x70]
mov rdi, qword [rsp + 0x60]
add rdi, rdx
mov rdx, rdi
mov qword [rsp + 0x110], rdx
mov r9d, 0x38
mov r8, rax
mov edx, ecx
mov rax, qword [rsp + 0x110]
mov rcx, rax
call fcn.18004a010
jmp 0x18005a943
mov eax, dword [0x1800a2da0]
or eax, 0xf827a47b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x8d33b0a8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xe6d7d637
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x2b11151f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x40b30683
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0x9dce8517
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xfe218965
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
and eax, 0x8f07496f
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0xc257645b
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
sub eax, 0x10ff003f
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x168]
mov dword [rax], ecx
mov eax, dword [0x1800a2da0]
xor eax, 0xed8c6ab8
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
or eax, 0x18d02920
mov dword [0x1800a2da0], eax
mov eax, dword [rsp + 0x168]
sub rax, 4
mov rcx, qword [rsp + 0x60]
add rcx, 4
mov r8b, 0x44
mov edx, eax
call fcn.180049f70
mov eax, dword [0x1800a2da0]
sub eax, 0x41749284
mov dword [0x1800a2da0], eax
imul eax, dword [0x1800a2da0], 0xb8bdcb31
mov dword [0x1800a2da0], eax
mov eax, dword [0x1800a2da0]
add eax, 0xd9976f6e
mov dword [0x1800a2da0], eax
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x138]
xor rcx, rsp
call fcn.18006a240
add rsp, 0x148
pop rdi
pop rsi
ret