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

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov dword [rsp + 8], ecx
sub rsp, 0x68
mov eax, dword [section..data]
neg eax
add eax, dword [0x180028008]
add eax, dword [0x180028004]
mov ecx, dword [0x180028008]
imul ecx, dword [0x180028004]
imul ecx, dword [0x180028008]
sub eax, ecx
sub eax, dword [section..data]
add eax, dword [0x180028010]
mov ecx, dword [0x180028004]
imul ecx, dword [section..data]
imul ecx, dword [0x180028010]
add eax, ecx
sub eax, dword [0x18002800c]
sub eax, dword [0x180028004]
add eax, dword [0x180028010]
mov ecx, dword [0x180028004]
imul ecx, dword [0x18002800c]
sub eax, ecx
mov ecx, dword [0x180028008]
imul ecx, dword [0x180028004]
sub eax, ecx
sub eax, dword [0x180028014]
sub eax, dword [0x180028014]
add eax, dword [0x180028004]
mov ecx, dword [0x18002800c]
imul ecx, dword [0x180028008]
imul ecx, dword [0x180028014]
sub eax, ecx
mov ecx, dword [0x180028014]
imul ecx, dword [0x180028010]
sub eax, ecx
mov ecx, dword [0x180028014]
imul ecx, dword [0x180028008]
sub eax, ecx
mov ecx, dword [rsp + 0x70]
imul ecx, eax
mov eax, ecx
cdqe
imul rax, rax, 0x40
mov rcx, qword [rsp + 0x80]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov ecx, dword [0x180028004]
imul ecx, dword [section..data]
mov edx, dword [0x180028008]
sub edx, ecx
mov ecx, edx
mov edx, dword [0x180028004]
imul edx, dword [section..data]
add ecx, edx
mov edx, dword [0x18002800c]
imul edx, dword [0x180028008]
sub ecx, edx
add ecx, dword [0x180028010]
add ecx, dword [0x180028004]
add ecx, dword [0x180028014]
mov edx, dword [0x180028008]
imul edx, dword [0x18002800c]
imul edx, dword [0x180028008]
mov r8d, dword [0x180028004]
add r8d, ecx
mov ecx, r8d
add edx, ecx
mov ecx, edx
add ecx, dword [0x18002800c]
mov edx, dword [0x180028008]
imul edx, dword [section..data]
sub ecx, edx
mov edx, dword [0x180028010]
imul edx, dword [section..data]
imul edx, dword [0x180028010]
sub ecx, edx
sub ecx, dword [0x180028004]
sub ecx, dword [0x180028014]
add ecx, dword [0x18002800c]
sub ecx, dword [0x180028014]
mov edx, dword [rsp + 0x88]
imul edx, ecx
mov ecx, edx
movsxd rcx, ecx
imul rcx, rcx, 0x108
add rax, rcx
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
mov eax, dword [rax + 0x88]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x20]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x24]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x20], 0
jmp 0x180003811
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x38]
mov eax, dword [rax + 0x18]
cmp dword [rsp + 0x20], eax
jae 0x1800039fa
mov eax, dword [0x180028010]
neg eax
sub eax, dword [0x180028014]
sub eax, dword [0x180028008]
add eax, dword [0x180028010]
sub eax, dword [0x180028014]
sub eax, dword [0x18002800c]
mov ecx, dword [0x180028004]
imul ecx, dword [0x180028008]
imul ecx, dword [0x180028008]
imul ecx, dword [section..data]
imul ecx, dword [section..data]
sub eax, ecx
sub eax, dword [0x180028014]
add eax, dword [0x180028014]
add eax, dword [0x180028004]
add eax, dword [0x180028010]
add eax, dword [0x180028014]
mov ecx, dword [0x180028014]
imul ecx, dword [0x18002800c]
add eax, ecx
mov ecx, dword [0x180028004]
imul ecx, dword [0x180028004]
add eax, ecx
mov ecx, dword [0x180028014]
imul ecx, dword [0x180028008]
imul ecx, dword [0x180028004]
sub eax, ecx
sub eax, dword [0x180028014]
sub eax, dword [0x180028004]
sub eax, dword [0x180028010]
add eax, dword [0x180028004]
sub eax, dword [0x180028010]
sub eax, dword [0x180028014]
sub eax, dword [0x180028008]
add eax, dword [0x180028010]
sub eax, dword [0x180028014]
sub eax, dword [0x18002800c]
mov ecx, dword [0x180028004]
imul ecx, dword [0x180028008]
imul ecx, dword [0x180028008]
imul ecx, dword [section..data]
imul ecx, dword [section..data]
sub eax, ecx
sub eax, dword [0x180028014]
add eax, dword [0x180028014]
add eax, dword [0x180028004]
add eax, dword [0x180028010]
add eax, dword [0x180028014]
mov ecx, dword [0x180028014]
imul ecx, dword [0x18002800c]
add eax, ecx
mov ecx, dword [0x180028004]
imul ecx, dword [0x180028004]
add eax, ecx
mov ecx, dword [0x180028014]
imul ecx, dword [0x180028008]
imul ecx, dword [0x180028004]
sub eax, ecx
sub eax, dword [0x180028014]
sub eax, dword [0x180028004]
sub eax, dword [0x180028010]
add eax, dword [0x180028004]
mov ecx, dword [rsp + 0x88]
imul ecx, eax
mov eax, ecx
mov ecx, dword [rsp + 0x20]
sub ecx, eax
mov eax, ecx
mov eax, eax
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x28]
call fcn.18000f180
test eax, eax
jne 0x1800039f5
mov eax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x50]
movzx eax, word [rcx + rax*2]
mov rcx, qword [rsp + 0x58]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
jmp 0x1800039fc
jmp 0x180003807
xor eax, eax
add rsp, 0x68
ret