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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x250]
cmp rax, qword [rcx + 0x10]
jbe 0x443f02
sub rsp, 0x2d0
mov qword [rsp + 0x2c8], rbp
lea rbp, [rsp + 0x2c8]
mov rax, qword [rsp + 0x2f8]
test rax, rax
jle 0x443ca5
mov rcx, qword [rsp + 0x310]
test rcx, rcx
jne 0x443ee7
mov rdx, qword gs:[0x28]
mov rdx, qword [rdx]
mov rbx, qword [rsp + 0x2f0]
cmp rbx, rdx
jne 0x442259
mov rsi, qword [rdx + 0x30]
cmp qword [rsi + 0x90], rdx
je 0x443ecc
nop
mov esi, dword [0x004e4104]
mov rdx, qword [rdx + 0x30]
movzx edx, byte [rdx + 0xf9]
shr esi, 2
test dl, dl
cmovne esi, edx
mov rdx, qword [rsp + 0x2d8]
cmp rdx, 0xffffffffffffffff
jne 0x443c9b
mov r8, qword [rsp + 0x2e0]
cmp r8, 0xffffffffffffffff
jne 0x443c8b
mov rdx, qword [rbx + 0x70]
test rdx, rdx
je 0x443c7e
mov r8, qword [rbx + 0x78]
mov qword [rsp + 0x270], 0
lea rdi, [rsp + 0x278]
xorps xmm0, xmm0
lea rdi, [rdi - 0x30]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0044e8d5
mov rbp, qword [rbp]
mov qword [rsp + 0x280], r8
mov qword [rsp + 0x298], rdx
mov r9, qword [rbx + 0x148]
mov r10, qword [rbx + 0x140]
mov r11, qword [rsp + 0x300]
test r11, r11
je 0x443c72
xor edi, edi
mov r12, qword [rbx + 0x28]
jmp 0x442312
mov r12, qword [r12 + 0x28]
test r12, r12
je 0x44231f
cmp qword [r12 + 8], 0xffffffffffffffff
je 0x44230d
mov byte [rsp + 0x3d], dil
mov qword [rsp + 0x248], r12
mov qword [rsp + 0xa0], r9
mov qword [rsp + 0x240], r10
mov dword [rsp + 0x40], esi
test r8, r8
jne 0x44235f
mov r8, rdx
mov rdx, qword [rdx]
mov qword [rsp + 0x280], rdx
lea rdx, [r8 + 8]
mov qword [rsp + 0x298], rdx
mov rax, qword [rsp + 0x280]
mov qword [rsp], rax
call fcn.0043e1d0
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 8]
nop
test rcx, rcx
je 0x443ba6
mov qword [rsp + 0x270], rcx
mov qword [rsp + 0x278], rax
lea rdi, [rsp + 0xe0]
xorps xmm0, xmm0
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0044e8a4
mov rbp, qword [rbp]
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0x308]
mov rbx, qword [rsp + 0x248]
mov rsi, qword [rsp + 0x2f8]
mov r8, qword [rsp + 0x240]
mov r9, qword [rsp + 0xa0]
xor edx, edx
xor edi, edi
xor r10d, r10d
xor r11d, r11d
jmp 0x44251e
mov rbx, qword [rbx + 0x28]
test rbx, rbx
je 0x44360f
mov rcx, qword [rbx + 8]
mov r14, qword [rsp + 0x298]
cmp rcx, r14
jne 0x443603
cmp qword [rsp + 0x2a0], r14
je 0x443603
mov ecx, 1
test cl, cl
jne 0x4423f1
test rax, rax
mov qword [rsp + 0x248], rbx
jne 0x443558
mov rcx, qword [rsp + 0x300]
test rcx, rcx
jne 0x44323d
mov qword [rsp + 0x2f8], rsi
movzx r14d, byte [rsp + 0x3d]
test r14b, r14b
jne 0x442981
lea rdi, [rdx + 1]
cmp byte [r12 + 0x24], 0xe
jne 0x44248a
test r9, r9
jle 0x44248a
mov r13, qword [r8 + r9*8 - 8]
test rsi, rsi
jne 0x442487
test rax, rax
je 0x4428f1
dec r9
nop
movzx r12d, byte [r12 + 0x24]
cmp r12b, 9
test r15, r15
je 0x4426de
mov qword [rsp + 0x270], r15
mov r13, qword [rsp + 0x218]
mov qword [rsp + 0x278], r13
mov r13, qword [rsp + 0x290]
mov qword [rsp + 0x280], r13
mov qword [rsp + 0x290], 0
mov r13, qword [rsp + 0x2a0]
mov qword [rsp + 0x298], r13
mov qword [rsp + 0x2a0], 0
mov qword [rsp + 0x2c0], 0
cmp r12b, 9
sete r12b
mov r13, qword [rsp + 0x2f0]
mov r15, qword [rsp + 0x308]
mov rax, r13
mov rcx, r15
mov rdx, rdi
mov edi, r12d
cmp rdx, rcx
jge 0x443b90
mov r12, qword [rsp + 0x270]
mov r13, qword [rsp + 0x278]
cmp dword [r12 + 0x14], 0
je 0x443b7a
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x268], rbx
mov qword [rsp + 0x60], r11
mov qword [rsp + 0x2f8], rsi
mov byte [rsp + 0x3b], r10b
mov byte [rsp + 0x3a], dil
cmp qword [rsp + 0x2a0], 0
je 0x4439bf
mov r14, qword [rax + 0x30]
test r14, r14
je 0x4439b7
cmp qword [r14], rax
sete r14b
nop
movzx r15d, byte [r12 + 0x24]
cmp r15b, 2
jne 0x443948
mov r14d, 1
mov qword [rsp + 0xa0], r9
mov qword [rsp + 0x260], r8
mov qword [rsp + 0x210], r13
mov qword [rsp + 0x230], r12
test r14b, r14b
je 0x4436e6
mov qword [rsp + 0x290], 0
xor r14d, r14d
xor r15d, r15d
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0x2a8], rax
lea rcx, [rax - 8]
mov qword [rsp + 0x2a8], rcx
cmp qword [rsp + 0x298], rcx
jae 0x442617
cmp byte [0x004e4dc0], 0
je 0x442617
add rax, 0xfffffffffffffff0
mov qword [rsp + 0x2a8], rax
mov qword [rsp + 0x218], r14
mov qword [rsp + 0x238], r15
mov rax, qword [rsp + 0x310]
test rax, rax
je 0x4436d1
mov rcx, qword [rsp + 0x2a0]
mov qword [rsp + 0x2b0], rcx
nop
je 0x4436ca
cmp dword [r12 + 0xc], 0x80000000
sete cl
movsxd r14, dword [r12 + 0xc]
mov qword [rsp + 0x2b8], r14
mov qword [rsp + 0x2c0], 0
test cl, cl
jne 0x443628
mov rcx, qword [rsp + 0x280]
mov qword [rsp + 0x288], rcx
test dil, dil
je 0x4423f5
test rbx, rbx
je 0x443617
mov rcx, qword [rsp + 0x298]
cmp qword [rbx + 8], rcx
jne 0x443617
cmp qword [rsp + 0x2a0], rcx
je 0x443617
mov rcx, qword [rsp + 0x270]
mov r14d, dword [rcx + 0x10]
add r14, qword [rcx]
lea rcx, [r14 + 1]
mov qword [rsp + 0x288], rcx
jmp 0x4423f5
movzx ecx, r14b
test rcx, rcx
cmovne rdi, r11
test rax, rax
je 0x4428e7
mov rcx, qword [rsp + 0x308]
cmp rdi, rcx
jge 0x4428e2
test rbx, rbx
je 0x4428a0
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rax + 0x98]
mov qword [rsp + 0xd8], rcx
mov rdx, qword [rbx + 8]
mov qword [rsp + 0xd0], rdx
mov rbx, qword [rbx + 0x10]
mov qword [rsp + 0xc8], rbx
call fcn.00429450
lea rax, [0x00484df3]
mov qword [rsp], rax
mov qword [rsp + 8], 0xa
call fcn.00429df0
mov rax, qword [rsp + 0xd8]
mov qword [rsp], rax
call fcn.00429c20
lea rax, [0x00486826]
mov qword [rsp], rax
mov qword [rsp + 8], 0x14
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
lea rax, [0x00484686]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.00429df0
mov rax, qword [rsp + 0xc8]
mov qword [rsp], rax
call fcn.00429c90
call fcn.00429700
call fcn.004294e0
mov rax, qword [rsp + 0x2f0]
mov rax, qword [rax + 0x28]
jmp 0x442892
mov qword [rsp + 0x248], rax
mov rcx, qword [rax + 8]
mov qword [rsp + 0xd0], rcx
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0xc8], rdx
call fcn.00429450
lea rax, [0x0048494c]
mov qword [rsp], rax
mov qword [rsp + 8], 7
call fcn.00429df0
mov rax, qword [rsp + 0x248]
mov qword [rsp], rax
call fcn.00429da0
lea rax, [0x0048468e]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
lea rax, [0x00484686]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.00429df0
mov rax, qword [rsp + 0xc8]
mov qword [rsp], rax
call fcn.00429c90
call fcn.00429700
call fcn.004294e0
mov rax, qword [rsp + 0x248]
mov rax, qword [rax + 0x28]
test rax, rax
jne 0x4427d9
jmp 0x443e51
test rax, rax
je 0x4428ca
cmp rdi, rcx
jge 0x4428ca
mov rax, qword [rsp + 0x298]
mov rdx, qword [rsp + 0x2f0]
mov rbx, qword [rdx + 0x80]
cmp rax, rbx
jne 0x443cb2
mov qword [rsp + 0x328], rdi
mov rbp, qword [rsp + 0x2c8]
add rsp, 0x2d0
ret
test rax, rax
jmp 0x4428a3
mov rcx, qword [rsp + 0x308]
jmp 0x4428a3
mov qword [rsp + 0xc0], r11
mov byte [rsp + 0x3f], r10b
mov qword [rsp], rcx
mov byte [rsp + 8], r14b
mov qword [rsp + 0x10], r13
mov qword [rsp + 0x18], rdi
mov rax, qword [rsp + 0x308]
mov qword [rsp + 0x20], rax
call fcn.004440f0
mov rdi, qword [rsp + 0x28]
mov rax, qword [rsp + 0x310]
mov rcx, qword [rsp + 0x300]
mov rbx, qword [rsp + 0x248]
mov rsi, qword [rsp + 0x2f8]
mov r8, qword [rsp + 0x260]
mov r9, qword [rsp + 0xa0]
movzx r10d, byte [rsp + 0x3f]
mov r11, qword [rsp + 0xc0]
mov r12, qword [rsp + 0x230]
movzx r14d, byte [rsp + 0x3d]
mov r15, qword [rsp + 0x238]
jmp 0x442487
mov byte [rsp + 0x3e], r10b
mov qword [rsp + 0xb8], rdx
mov r14, qword [rsp + 0x280]
test rdx, rdx
jle 0x443215
cmp qword [r12], r14
jae 0x4429ae
test dil, dil
je 0x44320d
mov qword [rsp + 0x50], r14
mov qword [rsp], r12
mov qword [rsp + 8], r13
mov byte [rsp + 0x10], 2
call fcn.0043eef0
mov rax, qword [rsp + 0x18]
test rax, rax
jne 0x442f27
movzx eax, byte [rsp + 0x3e]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0x50], rcx
mov rbx, qword [rsp + 0x320]
bt ebx, 0
jae 0x442ec9
mov eax, 1
test al, al
jne 0x442a67
mov r12, qword [rsp + 0x230]
movzx r10d, byte [r12 + 0x24]
mov rax, qword [rsp + 0x310]
mov rcx, qword [rsp + 0x300]
mov rbx, qword [rsp + 0x248]
mov rsi, qword [rsp + 0x2f8]
mov r8, qword [rsp + 0x260]
mov r9, qword [rsp + 0xa0]
movzx r14d, byte [rsp + 0x3d]
mov r15, qword [rsp + 0x238]
mov r11, rdx
mov rdx, qword [rsp + 0xb8]
jmp 0x442463
mov rax, qword [rsp + 0x230]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x210]
mov qword [rsp + 8], rcx
call fcn.0043e910
mov rax, qword [rsp + 0x18]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x10]
mov qword [rsp + 0x1e8], rcx
mov rdx, qword [rsp + 0x230]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x210]
mov qword [rsp + 8], rbx
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x10], rbx
call fcn.0043ec50
movsxd rax, dword [rsp + 0x28]
mov qword [rsp + 0xd8], rax
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0x208], rcx
mov rdx, qword [rsp + 0x20]
mov qword [rsp + 0x90], rdx
mov rbx, qword [rsp + 0x70]
cmp rbx, 0xf
jne 0x442eb7
movabs rsi, 0x2e656d69746e7572
mov rdi, qword [rsp + 0x1e8]
cmp qword [rdi], rsi
jne 0x442eaa
cmp dword [rdi + 8], 0x61706f67
jne 0x442e9d
cmp word [rdi + 0xc], 0x696e
jne 0x442e90
cmp byte [rdi + 0xe], 0x63
jne 0x442e83
lea rbx, [0x004847ff]
mov edi, 5
mov qword [rsp + 0x1e8], rbx
mov qword [rsp + 0x70], rdi
call fcn.00429450
mov rax, qword [rsp + 0x1e8]
mov qword [rsp], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 8], rax
call fcn.00429df0
lea rax, [0x00484541]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.00429df0
call fcn.004294e0
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x258], rax
xor ecx, ecx
jmp 0x442be0
test byte [rax], al
mov rdx, qword [rax + rcx*8]
mov qword [rsp + 0xd0], rdx
call fcn.00429450
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
call fcn.004294e0
mov rax, qword [rsp + 0x88]
lea rcx, [rax + 1]
mov rax, qword [rsp + 0x258]
mov rdx, qword [rsp + 0x2b8]
shr rdx, 3
cmp rcx, rdx
jae 0x442c5f
cmp rcx, 0xa
jae 0x442c3c
mov qword [rsp + 0x88], rcx
test rcx, rcx
je 0x442ba3
call fcn.00429450
lea rax, [0x00484561]
mov qword [rsp], rax
mov qword [rsp + 8], 2
call fcn.00429df0
call fcn.004294e0
mov rax, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x88]
jmp 0x442ba3
call fcn.00429450
lea rax, [0x004847cd]
mov qword [rsp], rax
mov qword [rsp + 8], 5
call fcn.00429df0
call fcn.004294e0
call fcn.00429450
lea rax, [0x0048455f]
mov qword [rsp], rax
mov qword [rsp + 8], 2
call fcn.00429df0
call fcn.004294e0
call fcn.00429450
lea rax, [0x0048454f]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.00429df0
mov rax, qword [rsp + 0x208]
mov qword [rsp], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 8], rax
call fcn.00429df0
lea rax, [0x00484548]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.00429df0
mov rax, qword [rsp + 0xd8]
mov qword [rsp], rax
call fcn.00429c20
call fcn.004294e0
mov rax, qword [rsp + 0x280]
mov rcx, qword [rsp + 0x230]
mov rdx, qword [rcx]
cmp rax, rdx
ja 0x442e27
mov rax, qword [rsp + 0x2f0]
mov rdx, qword [rax + 0x30]
test rdx, rdx
je 0x442e18
cmp dword [rdx + 0xc4], 0
jle 0x442e18
cmp qword [rdx + 0x90], rax
jne 0x442e18
mov rax, qword [rsp + 0x2a0]
mov qword [rsp + 0xd0], rax
mov rcx, qword [rsp + 0x298]
mov qword [rsp + 0xc8], rcx
mov rdx, qword [rsp + 0x280]
mov qword [rsp + 0xa8], rdx
call fcn.00429450
lea rax, [0x00484676]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
lea rax, [0x0048468e]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.00429df0
mov rax, qword [rsp + 0xc8]
mov qword [rsp], rax
call fcn.00429c90
lea rax, [0x00484686]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.00429df0
mov rax, qword [rsp + 0xa8]
mov qword [rsp], rax
call fcn.00429c90
call fcn.004294e0
call fcn.00429450
call fcn.00429700
call fcn.004294e0
mov rax, qword [rsp + 0xb0]
lea rdx, [rax + 1]
mov rbx, qword [rsp + 0x320]
jmp 0x442a0b
mov edx, dword [rsp + 0x40]
cmp edx, 2
jge 0x442d38
jmp 0x442df0
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xc8], rdx
call fcn.00429450
lea rax, [0x00484555]
mov qword [rsp], rax
mov qword [rsp + 8], 2
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xc8]
sub rax, rcx
mov qword [rsp], rax
call fcn.00429c90
call fcn.004294e0
mov rcx, qword [rsp + 0x230]
jmp 0x442d09
mov rbx, rdi
mov rdi, qword [rsp + 0x70]
jmp 0x442b44
mov rbx, rdi
mov rdi, qword [rsp + 0x70]
jmp 0x442b44
mov rbx, rdi
mov rdi, qword [rsp + 0x70]
jmp 0x442b44
mov rbx, rdi
mov rdi, qword [rsp + 0x70]
jmp 0x442b44
mov rbx, qword [rsp + 0x1e8]
mov rdi, qword [rsp + 0x70]
jmp 0x442b44
mov rcx, qword [rsp + 0x230]
movzx ebx, byte [rcx + 0x24]
mov qword [rsp], rcx
mov rsi, qword [rsp + 0x210]
mov qword [rsp + 8], rsi
mov rdi, qword [rsp + 0x2f0]
mov qword [rsp + 0x10], rdi
test rdx, rdx
sete byte [rsp + 0x18]
mov byte [rsp + 0x19], bl
mov byte [rsp + 0x1a], al
call fcn.00445160
movzx eax, byte [rsp + 0x20]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x320]
jmp 0x442a07
mov qword [rsp + 0x258], rax
mov rcx, qword [rsp + 0x50]
movzx edx, byte [rsp + 0x3e]
mov rbx, qword [rsp + 0x60]
jmp 0x442f74
mov rsi, qword [rsp + 0x270]
lea rax, [rax + rax*4]
mov rdi, rax
shl rax, 2
mov r8, qword [rsp + 0x258]
movzx eax, byte [rax + r8 + 2]
mov edi, dword [r8 + rdi*4 + 0x10]
movsxd rdi, edi
add rdi, qword [rsi]
mov rcx, rdi
mov rbx, rdx
mov edx, eax
mov qword [rsp + 0xb0], rbx
mov byte [rsp + 0x3b], dl
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0x230]
mov qword [rsp], rax
mov rsi, qword [rsp + 0x210]
mov qword [rsp + 8], rsi
mov dword [rsp + 0x10], 1
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], 0
call fcn.0043ee40
mov eax, dword [rsp + 0x28]
test eax, eax
jl 0x4431f6
mov dword [rsp + 0x44], eax
mov rcx, qword [rsp + 0x320]
bt ecx, 0
jae 0x443173
mov edx, 1
test dl, dl
jne 0x443000
mov rdx, qword [rsp + 0xb0]
movsxd rax, eax
cmp rax, 0x100000
jb 0x442f40
jmp 0x443e6c
movsxd rdx, eax
cmp rdx, 0x100000
jae 0x443e73
lea rax, [rdx + rdx*4]
mov rcx, qword [rsp + 0x258]
mov eax, dword [rcx + rax*4 + 0xc]
mov rdx, qword [rsp + 0x230]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x210]
mov qword [rsp + 8], rbx
mov dword [rsp + 0x10], eax
call fcn.0043e9c0
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0x1e0], rcx
mov rdx, qword [rsp + 0x230]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x210]
mov qword [rsp + 8], rbx
mov rsi, qword [rsp + 0x50]
mov qword [rsp + 0x10], rsi
call fcn.0043ec50
movsxd rax, dword [rsp + 0x28]
mov qword [rsp + 0xd8], rax
mov rcx, qword [rsp + 0x20]
mov qword [rsp + 0x98], rcx
mov rdx, qword [rsp + 0x18]
mov qword [rsp + 0x200], rdx
call fcn.00429450
mov rax, qword [rsp + 0x1e0]
mov qword [rsp], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 8], rax
call fcn.00429df0
lea rax, [0x00484877]
mov qword [rsp], rax
mov qword [rsp + 8], 6
call fcn.00429df0
call fcn.004294e0
call fcn.00429450
lea rax, [0x0048454f]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.00429df0
mov rax, qword [rsp + 0x200]
mov qword [rsp], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 8], rax
call fcn.00429df0
lea rax, [0x00484548]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.00429df0
mov rax, qword [rsp + 0xd8]
mov qword [rsp], rax
call fcn.00429c20
call fcn.00429700
call fcn.004294e0
mov rax, qword [rsp + 0xb0]
lea rdx, [rax + 1]
mov eax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x320]
jmp 0x442fec
movsxd rdx, eax
cmp rdx, 0x100000
jae 0x443e7a
lea rax, [rdx + rdx*4]
shl rax, 2
mov rcx, qword [rsp + 0x258]
movzx eax, byte [rax + rcx + 2]
mov rdx, qword [rsp + 0x230]
mov qword [rsp], rdx
mov rbx, qword [rsp + 0x210]
mov qword [rsp + 8], rbx
mov rsi, qword [rsp + 0x2f0]
mov qword [rsp + 0x10], rsi
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
sete byte [rsp + 0x18]
mov byte [rsp + 0x19], al
movzx eax, byte [rsp + 0x3b]
mov byte [rsp + 0x1a], al
call fcn.00445160
movzx edx, byte [rsp + 0x20]
mov eax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x320]
jmp 0x442fe0
movzx eax, byte [rsp + 0x3b]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xb0]
jmp 0x4429e3
dec r14
jmp 0x4429ae
mov rcx, qword [rsp + 0x320]
bt ecx, 1
jb 0x443230
mov rcx, qword [rsp + 0x300]
jmp 0x44299f
mov rcx, qword [rsp + 0x300]
jmp 0x4429ae
mov r14, qword [rsp + 0x280]
mov qword [rsp + 0x48], r14
test rdx, rdx
jle 0x443530
cmp qword [r12], r14
jae 0x443262
test dil, dil
je 0x443524
mov qword [rsp + 0xd0], r14
mov qword [rsp], r12
mov qword [rsp + 8], r13
mov byte [rsp + 0x10], 2
call fcn.0043eef0
mov rax, qword [rsp + 0x18]
test rax, rax
jne 0x443380
movzx eax, byte [rsp + 0x3b]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x2f8]
mov rsi, qword [rsp + 0x230]
cmp byte [rsi + 0x24], 0x14
jne 0x4432c6
nop
cmp al, 0x12
jne 0x443368
mov eax, 1
test al, al
je 0x443360
test rbx, rbx
jle 0x443325
lea rax, [rbx - 1]
movzx r10d, byte [rsi + 0x24]
lea rdx, [rcx - 1]
mov rcx, qword [rsp + 0x300]
mov rbx, qword [rsp + 0x248]
movzx edi, byte [rsp + 0x3a]
mov r8, qword [rsp + 0x260]
mov r9, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x60]
mov r12, rsi
mov r13, qword [rsp + 0x210]
mov r15, qword [rsp + 0x238]
mov rsi, rax
mov rax, qword [rsp + 0x310]
jmp 0x44244c
mov rax, qword [rsp + 0x308]
cmp rcx, rax
jge 0x443356
cmp rcx, 0x100000
jae 0x443e81
mov rdi, qword [rsp + 0x300]
mov qword [rdi + rcx*8], rdx
inc rcx
mov rax, rbx
jmp 0x4432cf
mov rdi, qword [rsp + 0x300]
jmp 0x44334e
mov rax, rbx
jmp 0x4432cf
cmp al, 9
jne 0x443376
mov eax, 1
jmp 0x4432be
cmp al, 0x13
sete al
jmp 0x4432be
mov qword [rsp + 0x258], rax
mov rcx, qword [rsp + 0xd0]
movzx edx, byte [rsp + 0x3b]
mov rbx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x2f8]
jmp 0x4433d0
mov r8, qword [rsp + 0x270]
movzx eax, byte [rax + rdx + 2]
mov r9d, dword [rdx + rcx*4 + 0x10]
movsxd rcx, r9d
add rcx, qword [r8]
lea r8, [rcx + 1]
mov edx, eax
mov rdi, rbx
mov rbx, rsi
mov rsi, r8
mov qword [rsp + 0x2f8], rdi
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0xb8], rbx
mov byte [rsp + 0x3c], dl
mov rax, qword [rsp + 0x230]
mov qword [rsp], rax
mov r8, qword [rsp + 0x210]
mov qword [rsp + 8], r8
mov dword [rsp + 0x10], 1
mov qword [rsp + 0x18], rcx
lea rcx, [rsp + 0xe0]
mov qword [rsp + 0x20], rcx
call fcn.0043ee40
mov eax, dword [rsp + 0x28]
test eax, eax
jl 0x443505
movsxd rax, eax
cmp rax, 0x100000
jae 0x443e8f
lea rax, [rax + rax*4]
mov rcx, rax
shl rax, 2
mov rdx, qword [rsp + 0x258]
movzx ebx, byte [rax + rdx + 2]
cmp bl, 0x14
jne 0x443471
nop
movzx ebx, byte [rsp + 0x3c]
cmp bl, 0x12
jne 0x4434eb
mov ebx, 1
test bl, bl
je 0x4434d6
mov rbx, qword [rsp + 0x2f8]
test rbx, rbx
jle 0x44348e
dec rbx
mov rsi, qword [rsp + 0xb8]
jmp 0x4433a9
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x308]
cmp rsi, rdi
jge 0x4434c9
cmp rsi, 0x100000
jae 0x443e88
mov r8, qword [rsp + 0x58]
mov r9, qword [rsp + 0x300]
mov qword [r9 + rsi*8], r8
inc rsi
jmp 0x4433a9
mov r9, qword [rsp + 0x300]
jmp 0x4433a9
mov rsi, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0x2f8]
jmp 0x4433a9
cmp bl, 9
jne 0x4434fa
mov ebx, 1
jmp 0x44346d
cmp bl, 0x13
sete bl
jmp 0x44346d
movzx eax, byte [rsp + 0x3c]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x2f8]
jmp 0x4432a2
lea rdi, [r14 - 1]
mov r14, rdi
jmp 0x443262
mov rbx, qword [rsp + 0x320]
bt ebx, 1
jb 0x44354b
mov rbx, qword [rsp + 0x248]
jmp 0x443253
mov rbx, qword [rsp + 0x248]
jmp 0x443262
nop
lea rcx, [rsp + 0x270]
mov qword [rsp], rcx
mov rbx, qword [rsp + 0x318]
mov qword [rsp + 8], rbx
mov rsi, qword [rax]
mov rdx, rax
call rsi
cmp byte [rsp + 0x10], 0
je 0x4435e6
mov rcx, qword [rsp + 0x300]
test rcx, rcx
mov rax, qword [rsp + 0x310]
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x248]
mov rsi, qword [rsp + 0x2f8]
movzx edi, byte [rsp + 0x3a]
mov r8, qword [rsp + 0x260]
mov r9, qword [rsp + 0xa0]
movzx r10d, byte [rsp + 0x3b]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x230]
mov r13, qword [rsp + 0x210]
mov r15, qword [rsp + 0x238]
jmp 0x442446
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x328], rax
mov rbp, qword [rsp + 0x2c8]
add rsp, 0x2d0
ret
cmp rcx, 0xffffffffffffffff
sete cl
jmp 0x442426
test rax, rax
jmp 0x44242d
mov qword [rsp + 0x288], 0
jmp 0x4423f5
lea rcx, [rsp + 0x270]
mov qword [rsp], rcx
mov qword [rsp + 8], r12
mov qword [rsp + 0x10], r13
test rax, rax
setne dl
mov byte [rsp + 0x18], dl
mov qword [rsp + 0x20], 0
call fcn.00443f10
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x2c0], rcx
mov rax, qword [rsp + 0x310]
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x2f8]
movzx edi, byte [rsp + 0x3a]
mov r8, qword [rsp + 0x260]
mov r9, qword [rsp + 0xa0]
movzx r10d, byte [rsp + 0x3b]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x230]
mov r13, qword [rsp + 0x210]
mov r15, qword [rsp + 0x238]
jmp 0x44267c
xor ecx, ecx
jmp 0x44265b
movzx ecx, byte [rsp + 0x3d]
test cl, cl
je 0x44267c
test rax, rax
jmp 0x442638
cmp qword [rsp + 0x290], 0
jne 0x443940
mov r14, qword [rsp + 0x2a0]
add r14, 0xfffffffffffffff8
mov r15, r14
mov r14, qword [r14]
mov qword [rsp + 0x290], r14
mov qword [rsp + 0x80], r15
mov rax, qword [rsp + 0x290]
mov qword [rsp], rax
call fcn.0043e1d0
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x10]
nop
test rax, rax
je 0x443798
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x2f8]
movzx edi, byte [rsp + 0x3a]
mov r8, qword [rsp + 0x260]
mov r9, qword [rsp + 0xa0]
movzx r10d, byte [rsp + 0x3b]
mov r11, qword [rsp + 0x60]
mov r12, qword [rsp + 0x230]
mov r13, qword [rsp + 0x210]
mov r14, rcx
mov r15, rax
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0x308]
jmp 0x4425dc
movzx ebx, byte [rsp + 0x3d]
test bl, bl
je 0x44392e
mov rsi, qword [rsp + 0x2f0]
mov rdi, qword [rsi + 0x30]
cmp byte [rdi + 0xe9], 0
je 0x443924
mov rdi, qword [rsp + 0x230]
cmp byte [rdi + 0x24], 9
jne 0x44391d
xor edx, edx
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x1f0], rcx
mov r8, qword [rsp + 0x310]
test r8, r8
jne 0x443801
test dl, dl
jne 0x443801
test r8, r8
je 0x443738
jmp 0x443e96
mov qword [rsp], rdi
mov rax, qword [rsp + 0x210]
mov qword [rsp + 8], rax
call fcn.0043e910
mov rax, qword [rsp + 0x10]
mov qword [rsp + 0x250], rax
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0xb8], rcx
mov rdx, qword [rsp + 0x290]
mov qword [rsp + 0xd0], rdx
call fcn.00429450
lea rax, [0x00489aae]
mov qword [rsp], rax
mov qword [rsp + 8], 0x22
call fcn.00429df0
mov rax, qword [rsp + 0x250]
mov qword [rsp], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 8], rax
call fcn.00429df0
lea rax, [0x004853e4]
mov qword [rsp], rax
mov qword [rsp + 8], 0xd
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
call fcn.00429700
call fcn.004294e0
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rax + 8]
mov rdx, qword [rax]
mov qword [rsp], rdx
mov qword [rsp + 8], rcx
lea rcx, [rsp + 0x270]
mov qword [rsp + 0x10], rcx
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x18], rdx
call fcn.004459e0
mov r8, qword [rsp + 0x310]
test r8, r8
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x1f0]
movzx ebx, byte [rsp + 0x3d]
mov rsi, qword [rsp + 0x2f0]
mov rdi, qword [rsp + 0x230]
jmp 0x4437f6
mov edx, ebx
jmp 0x4437d2
mov rdi, qword [rsp + 0x230]
jmp 0x44391d
mov rsi, qword [rsp + 0x2f0]
mov rdi, qword [rsp + 0x230]
jmp 0x44391d
xor r15d, r15d
jmp 0x44370f
cmp r15b, 6
jne 0x443959
mov r14d, 1
jmp 0x4425a1
cmp r15b, 4
jne 0x44396a
mov r14d, 1
jmp 0x4425a1
cmp r15b, 5
jne 0x44397b
mov r14d, 1
jmp 0x4425a1
cmp r15b, 7
jne 0x44398c
mov r14d, 1
jmp 0x4425a1
cmp r15b, 0x10
jne 0x44399d
mov r14d, 1
jmp 0x4425a1
test r14b, r14b
je 0x4439af
cmp r15b, 8
sete r14b
jmp 0x4425a1
xor r14d, r14d
jmp 0x4425a1
xor r14d, r14d
jmp 0x44258a
mov r14, qword [rsp + 0x320]
bt r14d, 2
jae 0x443a1e
mov r15, qword [rax + 0x30]
cmp qword [r15], rax
jne 0x443a1e
mov r15, qword [r15 + 0x90]
test r15, r15
je 0x443a1e
movzx r14d, byte [r12 + 0x24]
cmp r14b, 5
je 0x443ae1
cmp r14b, 0xd
jne 0x443a1e
mov r8, qword [r15 + 0x38]
mov qword [rsp + 0x298], r8
mov r8, qword [rax + 0x30]
mov r8, qword [r8 + 0x90]
mov r9, qword [r8 + 0x148]
mov r8, qword [r8 + 0x140]
mov qword [rsp + 0xa0], r9
mov qword [rsp + 0x260], r8
mov qword [rsp + 0x220], r13
mov qword [rsp + 0x228], r12
mov qword [rsp], r12
mov qword [rsp + 8], r13
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0x10], rax
lea rax, [rsp + 0xe0]
mov qword [rsp + 0x18], rax
call fcn.0043ecd0
movsxd rax, dword [rsp + 0x20]
add rax, qword [rsp + 0x298]
mov qword [rsp + 0x2a0], rax
add rax, 8
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0x308]
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x2f8]
movzx edi, byte [rsp + 0x3a]
movzx r10d, byte [rsp + 0x3b]
mov r11, qword [rsp + 0x60]
mov r13, qword [rsp + 0x220]
mov r12, qword [rsp + 0x228]
mov r9, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x260]
jmp 0x442576
mov rax, qword [r15 + 0x40]
mov qword [rsp + 0x280], rax
mov qword [rsp], rax
call fcn.0043e1d0
mov r12, qword [rsp + 8]
mov r13, qword [rsp + 0x10]
mov qword [rsp + 0x270], r12
mov qword [rsp + 0x278], r13
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rax + 0x30]
mov rcx, qword [rcx + 0x90]
mov rcx, qword [rcx + 0x38]
mov qword [rsp + 0x298], rcx
mov rcx, qword [rax + 0x30]
mov rcx, qword [rcx + 0x90]
mov r9, qword [rcx + 0x148]
mov r8, qword [rcx + 0x140]
mov rcx, qword [rsp + 0x308]
mov rdx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x268]
mov rsi, qword [rsp + 0x2f8]
movzx edi, byte [rsp + 0x3a]
movzx r10d, byte [rsp + 0x3b]
mov r11, qword [rsp + 0x60]
jmp 0x443a1e
mov rax, qword [rsp + 0x310]
movzx r14d, byte [rsp + 0x3d]
mov rdi, rdx
jmp 0x4426de
mov rax, qword [rsp + 0x310]
movzx r14d, byte [rsp + 0x3d]
mov rdi, rdx
jmp 0x4426de
mov rax, qword [rsp + 0x310]
test rax, rax
je 0x443c60
mov rax, qword [rsp + 0x280]
mov qword [rsp + 0xd0], rax
call fcn.00429450
lea rax, [0x00486b96]
mov qword [rsp], rax
mov qword [rsp + 8], 0x14
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
call fcn.00429700
call fcn.004294e0
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rax + 8]
mov rax, qword [rax]
mov qword [rsp], rax
mov qword [rsp + 8], rcx
lea rax, [rsp + 0x270]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 0
call fcn.004459e0
mov rax, qword [rsp + 0x310]
test rax, rax
jne 0x443eb1
mov qword [rsp + 0x328], 0
mov rbp, qword [rsp + 0x2c8]
add rsp, 0x2d0
ret
movzx ecx, byte [rsp + 0x3d]
test cl, cl
jne 0x443bb7
test rax, rax
jmp 0x443c3e
test rcx, rcx
sete dil
jmp 0x442307
mov r8, qword [rbx + 0x40]
mov rdx, qword [rbx + 0x38]
jmp 0x4422a8
mov r8, rdx
mov rdx, qword [rsp + 0x2e0]
jmp 0x4422a8
mov r8, qword [rsp + 0x2e0]
jmp 0x443c8b
mov rcx, qword [rsp + 0x310]
jmp 0x44222b
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0x78], rdi
mov rax, qword [rdx + 0x98]
mov qword [rsp + 0xd8], rax
call fcn.00429450
lea rax, [0x00484df3]
mov qword [rsp], rax
mov qword [rsp + 8], 0xa
call fcn.00429df0
mov rax, qword [rsp + 0xd8]
mov qword [rsp], rax
call fcn.00429c20
lea rax, [0x00484f09]
mov qword [rsp], rax
mov qword [rsp + 8], 0xb
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
lea rax, [0x00484791]
mov qword [rsp], rax
mov qword [rsp + 8], 5
call fcn.00429df0
mov rax, qword [rsp + 0xc8]
mov qword [rsp], rax
call fcn.00429c90
call fcn.00429700
call fcn.004294e0
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rax]
mov qword [rsp + 0xd0], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0xc8], rax
call fcn.00429450
lea rax, [0x00484a29]
mov qword [rsp], rax
mov qword [rsp + 8], 8
call fcn.00429df0
mov rax, qword [rsp + 0xd0]
mov qword [rsp], rax
call fcn.00429c90
lea rax, [0x00484545]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.00429df0
mov rax, qword [rsp + 0xc8]
mov qword [rsp], rax
call fcn.00429c90
lea rax, [0x004846e6]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.00429df0
mov rax, qword [rsp + 0x78]
mov qword [rsp], rax
call fcn.00429c20
lea rax, [0x0048477d]
mov qword [rsp], rax
mov qword [rsp + 8], 5
call fcn.00429df0
mov rax, qword [rsp + 0x308]
mov qword [rsp], rax
call fcn.00429c20
call fcn.00429700
call fcn.004294e0
lea rax, [0x00489c94]
mov qword [rsp], rax
mov qword [rsp + 8], 0x23
call fcn.00428a40
ud2
lea rax, [0x00488e5c]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1d
call fcn.00428a40
ud2
call fcn.004273f0
ud2
call fcn.004273f0
ud2
call fcn.004273f0
ud2
call fcn.004273f0
ud2
call fcn.004273f0
ud2
call fcn.004273f0
ud2
lea rax, [0x00486063]
mov qword [rsp], rax
mov qword [rsp + 8], 0x11
call fcn.00428a40
ud2
lea rax, [0x00484e2f]
mov qword [rsp], rax
mov qword [rsp + 8], 0xa
call fcn.00428a40
ud2
lea rax, [0x0048b27b]
mov qword [rsp], rax
mov qword [rsp + 8], 0x39
call fcn.00428a40
ud2
lea rax, [0x0048b19d]
mov qword [rsp], rax
mov qword [rsp + 8], 0x37
call fcn.00428a40
ud2
call fcn.0044bf70
jmp fcn.004421d0