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

Disassembly:
push rsi
sub rsp, 0xce0
mov qword [rsp + 0x298], r8
mov qword [rsp + 0x2a0], rdx
mov dword [rsp + 0x2ac], ecx
mov rax, qword [rsp + 0xd10]
mov qword [rsp + 0x2b0], rax
call fcn.140235f0a
mov qword [rsp + 0x2b8], rax
lea rcx, [rsp + 0x810]
mov edx, 0x4d0
call fcn.140235f25
lea rcx, [rsp + 0x810]
mov edx, 0x4d0
call fcn.140235f25
mov qword [rsp + 0x808], 0
mov dword [rsp + 0x804], 0
lea rcx, [rsp + 0x7f0]
mov edx, 0x10
call fcn.140235f25
lea rcx, [rsp + 0x7e0]
mov edx, 0x10
call fcn.140235f25
xor ecx, ecx
xor eax, eax
mov r8d, eax
mov rdx, r8
call qword [0x1402ce010]
mov rcx, rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x2c0], rcx
cmp byte [rax], 0
jne 0x14023732f
mov rcx, qword [rsp + 0x2c0]
xor edx, edx
mov r8d, 0x10
call qword [0x1402ce018]
mov rcx, rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x290], rcx
cmp byte [rax], 0
jne 0x14023732f
mov rdx, qword [rsp + 0x2b0]
mov rcx, qword [rsp + 0x290]
mov r8d, 0x10
call fcn.140235f8b
call fcn.140235fec
mov rdx, qword [rsp + 0x2b8]
mov qword [rsp + 0x270], rax
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rsp + 0x27f], cl
mov rcx, rax
mov qword [rsp + 0x280], rcx
mov qword [rsp + 0x288], rax
jne 0x1402372a2
mov rax, qword [rsp + 0x270]
mov rax, qword [rax + 0x60]
mov rcx, rax
add rcx, 0xf0
mov qword [rsp + 0x248], rcx
mov rcx, qword [rax + 0xf0]
mov rdx, qword [rcx]
mov qword [rsp + 0x250], rdx
mov qword [rcx], 0
mov r8, qword [rax + 0x10]
mov qword [rsp + 0x258], r8
mov rax, r8
add rax, 0x3c
mov qword [rsp + 0x260], rax
movsxd rdx, dword [r8 + 0x3c]
mov rcx, rdx
add rcx, r8
mov qword [rsp + 0x268], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1402361ea
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rax, qword [rsp + 0x268]
mov eax, dword [rax + 0x50]
mov dword [rsp + 0x20c], eax
lea rcx, [rsp + 0x7b0]
mov edx, 0x30
call fcn.140235f25
mov ecx, dword [rsp + 0x20c]
mov rax, qword [rsp + 0x258]
movsxd r8, ecx
mov qword [rsp + 0x210], r8
mov rcx, r8
add rcx, rax
mov qword [rsp + 0x218], rcx
mov rdx, rcx
xor rdx, rax
xor rcx, r8
and rdx, rcx
lea rcx, [rsp + 0x7b0]
add rcx, 0x18
mov qword [rsp + 0x220], rcx
xor ecx, ecx
cmp rdx, 0
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], rax
jl 0x1402362a8
mov rax, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x228]
mov rcx, qword [rsp + 0x230]
mov qword [rsp + 0x1f8], rcx
mov qword [rsp + 0x200], rdx
cmp rax, rcx
jg 0x1402362c7
jmp 0x1402363e5
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rcx, qword [rsp + 0x1f8]
lea rdx, [rsp + 0x7b0]
mov r8d, 0x30
call qword [0x1402ce028]
mov rcx, qword [rsp + 0x2b8]
mov qword [rsp + 0x1f0], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jne 0x14023725b
mov rax, qword [rsp + 0x1f0]
cmp rax, 0
je 0x1402363e5
mov rcx, qword [rsp + 0x200]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x1e8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x14023636a
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov r8, qword [rsp + 0x1f8]
mov rax, qword [rsp + 0x220]
mov rdx, qword [rax]
mov rcx, rdx
add rcx, r8
mov qword [rsp + 0x1e0], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1402363c0
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rax, qword [rsp + 0x1e0]
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 0x228], rcx
mov qword [rsp + 0x230], rax
jmp 0x140236272
mov rcx, qword [rsp + 0x200]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x1d8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x14023642c
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rdx, qword [rsp + 0x1d8]
mov ecx, 0x30
lea r8, [rsp + 0x7a8]
call fcn.140237338
test al, 1
jne 0x140236453
jmp 0x140236472
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rcx, qword [rsp + 0x2c0]
mov rax, qword [0x1402ce018]
mov r8, qword [rsp + 0x7a8]
xor edx, edx
call rax
mov rcx, qword [rsp + 0x2b8]
mov qword [rsp + 0x1d0], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jne 0x14023725b
mov rax, qword [rsp + 0x258]
lea rcx, [rsp + 0x7b0]
add rcx, 0x24
mov qword [rsp + 0x1b0], rcx
mov edx, 5
xor ecx, ecx
mov qword [rsp + 0x1b8], rdx
mov qword [rsp + 0x1c0], rcx
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x1b8]
mov r8, qword [rsp + 0x1c0]
mov rcx, qword [rsp + 0x1c8]
mov qword [rsp + 0x198], rcx
mov qword [rsp + 0x1a0], r8
mov qword [rsp + 0x1a8], rdx
cmp rax, rcx
jle 0x140236712
mov rcx, qword [rsp + 0x198]
lea rdx, [rsp + 0x7b0]
mov r8d, 0x30
call qword [0x1402ce028]
mov rcx, qword [rsp + 0x2b8]
mov qword [rsp + 0x190], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jne 0x14023725b
mov rax, qword [rsp + 0x190]
cmp rax, 0
je 0x140236712
mov rcx, qword [rsp + 0x1d0]
mov rax, qword [rsp + 0x1a0]
imul rax, rax, 0x30
add rcx, rax
lea rdx, [rsp + 0x7b0]
mov r8d, 0x30
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x1b0]
mov eax, dword [rax]
cmp eax, 0x80
mov dword [rsp + 0x18c], eax
jne 0x14023660b
mov rax, qword [rsp + 0x1b0]
mov rcx, qword [rsp + 0x1d0]
mov rdx, qword [rsp + 0x1a0]
imul rdx, rdx, 0x30
add rcx, rdx
add rcx, 0x24
mov dword [rcx], 0x40
mov eax, dword [rax]
mov dword [rsp + 0x18c], eax
mov eax, dword [rsp + 0x18c]
cmp eax, 8
jne 0x14023663c
mov rax, qword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x1a0]
imul rcx, rcx, 0x30
add rax, rcx
add rax, 0x24
mov dword [rax], 4
mov rcx, qword [rsp + 0x1a0]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x180], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x140236683
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov r8, qword [rsp + 0x198]
mov rax, qword [rsp + 0x220]
mov rdx, qword [rax]
mov rcx, rdx
add rcx, r8
mov qword [rsp + 0x178], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1402366d9
call fcn.140008d37
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rax, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x1a8]
add rdx, 1
mov qword [rsp + 0x1b8], rdx
mov qword [rsp + 0x1c0], rcx
mov qword [rsp + 0x1c8], rax
jmp 0x1402364f6
xor eax, eax
mov r9d, eax
xor r8d, r8d
mov rcx, r9
mov edx, r8d
call qword [0x1402ce030]
mov rdx, qword [rsp + 0x2b8]
mov rcx, rax
mov qword [rsp + 0x170], rcx
xor eax, eax
cmp byte [rdx], 0
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jne 0x14023725b
call qword [0x1402ce038]
mov rdx, qword [rsp + 0x2b8]
mov rcx, qword [rsp + 0x170]
mov qword [rsp + 0x168], rax
cmp byte [rdx], 0
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jne 0x14023725b
mov r8, qword [rsp + 0x258]
mov rax, qword [rsp + 0x260]
movsxd rdx, dword [rax]
mov rcx, rdx
add rcx, r8
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1402367e4
call fcn.140008d37
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rdx, qword [rsp + 0x168]
mov eax, dword [rsp + 0x20c]
mov rcx, qword [rsp + 0x258]
mov r8, qword [rsp + 0x290]
mov qword [rsp + 0x7f8], r8
mov dword [rsp + 0x7f0], 0x10
mov dword [rsp + 0x7f4], 0x10
mov qword [rsp + 0x7e8], rcx
mov dword [rsp + 0x7e0], eax
mov dword [rsp + 0x7e4], eax
mov rax, qword [0x1402ce040]
mov rcx, qword [0x14025a640]
mov r8, qword [rcx]
lea rcx, [rsp + 0x808]
lea r9, [rsp + 0x810]
xor r10d, r10d
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x30], 0x20
call rax
mov ecx, eax
mov rax, qword [rsp + 0x2b8]
mov dword [rsp + 0x164], ecx
cmp byte [rax], 0
jne 0x1402371d3
mov ecx, dword [rsp + 0x164]
call fcn.1400a24bc
mov cl, al
mov rax, qword [rsp + 0x2b8]
mov al, byte [rax]
test al, al
sete al
mov byte [rsp + 0x163], al
and al, cl
test al, 1
jne 0x1402368c2
jmp 0x1402371f8
mov rcx, qword [rsp + 0x170]
mov edx, 0x3c3
call qword [0x1402ce048]
mov rax, qword [rsp + 0x2b8]
cmp byte [rax], 0
jne 0x1402371d3
mov rcx, qword [rsp + 0x1a0]
mov rax, rcx
add rax, 4
mov qword [rsp + 0x158], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x140236918
call fcn.140008d37
jmp 0x1402371d3
mov rdx, qword [rsp + 0x158]
mov rcx, qword [rsp + 0x1a0]
add rcx, 5
mov qword [rsp + 0x148], rcx
mov rax, rcx
xor rax, rdx
mov qword [rsp + 0x150], rax
and rax, rcx
cmp rax, 0
jge 0x140236959
call fcn.140008d37
jmp 0x1402371d3
mov rdx, qword [rsp + 0x148]
mov ecx, 0x4d0
lea r8, [rsp + 0x7a0]
call fcn.140237338
test al, 1
jne 0x140236980
jmp 0x14023698a
call fcn.140008d37
jmp 0x1402371d3
mov rcx, qword [rsp + 0x2c0]
mov rax, qword [0x1402ce018]
mov r8, qword [rsp + 0x7a0]
xor edx, edx
call rax
mov rcx, rax
mov rax, qword [rsp + 0x2b8]
mov qword [rsp + 0x140], rcx
cmp byte [rax], 0
jne 0x1402371d3
mov rcx, qword [rsp + 0x1a8]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rsp + 0x130], rax
xor eax, eax
mov qword [rsp + 0x138], rax
mov rcx, qword [rsp + 0x130]
mov rax, qword [rsp + 0x138]
mov qword [rsp + 0x128], rax
cmp rax, rcx
je 0x140236a80
lea rcx, [rsp + 0x2d0]
mov edx, 0x4d0
call fcn.140235f25
mov rcx, qword [rsp + 0x140]
mov rax, qword [rsp + 0x128]
imul rax, rax, 0x4d0
add rcx, rax
mov qword [rsp + 0x120], rcx
lea rdx, [rsp + 0x2d0]
mov r8d, 0x4d0
call sub.msvcrt.dll_memcpy
mov rcx, qword [rsp + 0x120]
lea rdx, [rsp + 0x810]
mov r8d, 0x4d0
call fcn.140235f8b
mov rax, qword [rsp + 0x128]
add rax, 1
mov qword [rsp + 0x138], rax
jmp 0x1402369e4
mov rax, qword [rsp + 0x140]
mov rcx, rax
add rcx, 0x98
mov qword [rsp + 0x110], rcx
mov rdx, qword [rax + 0x98]
mov rax, rdx
add rax, 0xfffffffffffffff8
mov qword [rsp + 0x118], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140236ad3
jmp 0x140236add
call fcn.140008d37
jmp 0x1402371d3
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x258]
mov r8, qword [rsp + 0x110]
mov r9, qword [rsp + 0x118]
mov qword [r8], r9
mov r8, qword [0x1402ce050]
mov qword [rsp + 0xf0], r8
mov qword [rax + 0xf8], r8
mov qword [rax + 0x80], rdx
mov qword [rax + 0x88], rcx
mov qword [rax + 0xb8], 4
lea rcx, [rsp + 0x804]
mov qword [rsp + 0xf8], rcx
mov qword [rax + 0xc0], rcx
mov rcx, rax
add rcx, 0x568
mov qword [rsp + 0x100], rcx
mov rdx, qword [rax + 0x568]
mov rax, rdx
add rax, 0xfffffffffffffff8
mov qword [rsp + 0x108], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140236b99
jmp 0x140236ba3
call fcn.140008d37
jmp 0x1402371d3
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0x298]
mov rdx, qword [rsp + 0x100]
mov r8, qword [rsp + 0x108]
mov qword [rdx], r8
mov qword [rax + 0x5c8], rcx
lea rcx, [rsp + 0x7e0]
mov qword [rsp + 0xd0], rcx
mov qword [rax + 0x550], rcx
lea rcx, [rsp + 0x7f0]
mov qword [rsp + 0xd8], rcx
mov qword [rax + 0x558], rcx
mov rcx, rax
add rcx, 0x9a0
add rcx, 0x98
mov qword [rsp + 0xe0], rcx
mov rdx, qword [rax + 0xa38]
mov rax, rdx
add rax, 0xfffffffffffffff8
mov qword [rsp + 0xe8], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140236c4d
jmp 0x140236c57
call fcn.140008d37
jmp 0x1402371d3
mov rax, qword [rsp + 0x140]
mov ecx, dword [rsp + 0x2ac]
mov rdx, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xe8]
mov qword [rdx], r8
mov rdx, qword [0x1402ce058]
mov qword [rax + 0xa98], rdx
movsxd rcx, ecx
mov qword [rax + 0xa20], rcx
mov rcx, rax
add rcx, 0xe70
add rcx, 0x98
mov qword [rsp + 0xc0], rcx
mov rdx, qword [rax + 0xf08]
mov rax, rdx
add rax, 0xfffffffffffffff8
mov qword [rsp + 0xc8], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140236ce3
jmp 0x140236ced
call fcn.140008d37
jmp 0x1402371d3
mov rdx, qword [rsp + 0x1a0]
mov rax, qword [rsp + 0x140]
mov rcx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xd0]
mov r9, qword [rsp + 0x298]
mov r10, qword [rsp + 0xc0]
mov r11, qword [rsp + 0xc8]
mov qword [r10], r11
mov qword [rax + 0xf68], r9
mov qword [rax + 0xef0], r8
mov qword [rax + 0xef8], rcx
mov rcx, rdx
add rcx, 0xffffffffffffffff
mov qword [rsp + 0xa8], rcx
mov rax, rcx
xor rax, rdx
cmp rax, 0
setl al
cmp rcx, 0xffffffffffffffff
setg dl
and dl, al
mov ecx, 4
xor eax, eax
test dl, 1
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rax
jne 0x140236d87
jmp 0x140236d91
call fcn.140008d37
jmp 0x1402371d3
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0x140]
mov r8, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], r8
imul r8, r8, 0x4d0
add rdx, r8
add rdx, 0x98
mov qword [rsp + 0x90], rdx
mov r9, qword [rdx]
mov rdx, r9
add rdx, 0xfffffffffffffff8
mov qword [rsp + 0x98], rdx
mov r8, rdx
xor r8, r9
cmp r8, 0
setl r8b
cmp rdx, 0xffffffffffffffff
setg dl
and dl, r8b
mov byte [rsp + 0xa7], dl
cmp rax, rcx
jg 0x140236f79
mov al, byte [rsp + 0xa7]
test al, 1
jne 0x140236e28
jmp 0x140236e32
call fcn.140008d37
jmp 0x1402371d3
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x140]
mov r8, qword [rsp + 0x1d0]
mov r9, qword [rsp + 0x80]
mov r11, qword [rsp + 0xf0]
mov r10, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x98]
mov qword [r10], rsi
imul rsi, rcx, 0x4d0
mov r10, rax
add r10, rsi
add r10, 0xf8
mov qword [r10], r11
imul r11, r9, 0x30
mov r10, r8
add r10, r11
mov r11, qword [r10]
imul rsi, rcx, 0x4d0
mov r10, rax
add r10, rsi
add r10, 0x80
mov qword [r10], r11
imul r11, r9, 0x30
mov r10, r8
add r10, r11
add r10, 0x18
mov r11, qword [r10]
imul rsi, rcx, 0x4d0
mov r10, rax
add r10, rsi
add r10, 0x88
mov qword [r10], r11
imul r9, r9, 0x30
add r8, r9
add r8, 0x24
movsxd r9, dword [r8]
imul r10, rcx, 0x4d0
mov r8, rax
add r8, r10
add r8, 0xb8
mov qword [r8], r9
imul r8, rcx, 0x4d0
add rax, r8
add rax, 0xc0
mov qword [rax], rdx
mov rax, rcx
add rax, 1
mov qword [rsp + 0x78], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x140236f37
call fcn.140008d37
jmp 0x1402371d3
mov rcx, qword [rsp + 0x78]
mov r8, qword [rsp + 0x80]
mov rax, r8
add rax, 1
xor r8, 0xffffffffffffffff
mov rdx, rax
and rdx, r8
cmp rdx, 0
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rax
jge 0x140236d91
call fcn.140008d37
jmp 0x1402371d3
mov al, byte [rsp + 0xa7]
test al, 1
jne 0x140236f8d
jmp 0x140236f97
call fcn.140008d37
jmp 0x1402371d3
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x140]
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x98]
mov qword [r8], r9
mov r9, qword [0x1402ce060]
imul r10, rcx, 0x4d0
mov r8, rax
add r8, r10
add r8, 0xf8
mov qword [r8], r9
imul r8, rcx, 0x4d0
add rax, r8
add rax, 0x80
mov qword [rax], rdx
mov rax, rcx
add rax, 1
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x140237015
call fcn.140008d37
jmp 0x1402371d3
mov rcx, qword [rsp + 0x158]
mov rax, qword [rsp + 0x150]
cmp rax, 0
setl al
cmp rcx, 0xffffffffffffffff
setg cl
and cl, al
xor eax, eax
test cl, 1
mov qword [rsp + 0x70], rax
jne 0x14023704a
jmp 0x140237054
call fcn.140008d37
jmp 0x1402371d3
mov rcx, qword [rsp + 0x158]
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x68], rax
cmp rax, rcx
jg 0x140237188
mov rcx, qword [rsp + 0x68]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x60], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x14023709b
call fcn.140008d37
jmp 0x140237174
mov rcx, qword [rsp + 0x60]
mov edx, 0xc8
lea r8, [rsp + 0x2c8]
call fcn.140237338
test al, 1
jne 0x1402370bf
jmp 0x1402370c9
call fcn.140008d37
jmp 0x140237174
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x58], rax
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x14023710b
mov rcx, qword [rsp + 0x58]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
call fcn.14000db87
jmp 0x140237174
mov r8, qword [rsp + 0x2a0]
mov rdx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x58]
mov r9, qword [rsp + 0x140]
mov r10, qword [rsp + 0x68]
mov rax, qword [0x1402ce040]
imul r10, r10, 0x4d0
add r9, r10
mov r10d, ecx
lea rcx, [rsp + 0x808]
xor r11d, r11d
mov dword [rsp + 0x20], r10d
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x30], 0x20
call rax
mov rax, qword [rsp + 0x2b8]
cmp byte [rax], 0
je 0x140237179
jmp 0x1402371d3
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x70], rax
jmp 0x140237054
mov rcx, qword [rsp + 0x170]
mov edx, 0xffffffff
call qword [0x1402ce048]
mov rdx, qword [rsp + 0x2b8]
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x168]
mov dl, byte [rdx]
cmp dl, 0
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
je 0x14023722d
jmp 0x14023725b
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x170]
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jmp 0x14023725b
mov rax, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x170]
mov dl, byte [rsp + 0x163]
test dl, 1
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
jne 0x14023722d
jmp 0x14023725b
mov rcx, qword [rsp + 0x168]
call qword [0x1402ce068]
mov rcx, qword [rsp + 0x170]
mov rax, qword [rsp + 0x168]
mov qword [rsp + 0x238], rcx
mov qword [rsp + 0x240], rax
mov rdx, qword [rsp + 0x2b8]
mov r9, qword [rsp + 0x250]
mov r8, qword [rsp + 0x248]
mov rcx, qword [rsp + 0x238]
mov rax, qword [rsp + 0x240]
mov r8, qword [r8]
mov qword [r8], r9
mov dl, byte [rdx]
mov byte [rsp + 0x27f], dl
mov qword [rsp + 0x280], rcx
mov qword [rsp + 0x288], rax
mov rax, qword [rsp + 0x2b8]
mov rcx, qword [rsp + 0x2c0]
mov dl, byte [rsp + 0x27f]
mov r8, qword [rsp + 0x280]
mov r9, qword [rsp + 0x288]
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], r8
mov byte [rsp + 0x57], dl
mov byte [rax], 0
call qword [0x1402ce020]
mov rax, qword [rsp + 0x2b8]
cmp byte [rax], 0
jne 0x14023732f
mov rcx, qword [rsp + 0x40]
mov rax, qword [0x14025a650]
call qword [rax]
mov rax, qword [0x14025a650]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x808]
call rax
mov rcx, qword [rsp + 0x48]
mov rax, qword [0x14025a650]
call qword [rax]
mov cl, byte [rsp + 0x57]
mov rax, qword [rsp + 0x2b8]
mov byte [rax], cl
add rsp, 0xce0
pop rsi
ret