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

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x70
mov rax, qword [0x18008a040]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov r8d, dword [rcx]
mov edx, 0x78
and r8d, 0x3f
mov eax, 0x38
sub edx, r8d
sub eax, r8d
cmp r8d, 0x38
mov rdi, rcx
cmovae eax, edx
lea rdx, [0x18008a470]
mov r8d, eax
mov ebx, eax
call fcn.180072680
mov edx, dword [rdi]
sub edx, ebx
mov dword [rdi], edx
movzx eax, byte [rdi + 0x16]
movzx ecx, byte [rdi + 0x17]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x15]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x14]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x1a]
mov dword [rsp + 0x20], ecx
movzx ecx, byte [rdi + 0x1b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x19]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x18]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x1e]
mov dword [rsp + 0x24], ecx
movzx ecx, byte [rdi + 0x1f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x1d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x1c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x22]
mov dword [rsp + 0x28], ecx
movzx ecx, byte [rdi + 0x23]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x21]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x20]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x26]
mov dword [rsp + 0x2c], ecx
movzx ecx, byte [rdi + 0x27]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x25]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x24]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x2a]
mov dword [rsp + 0x30], ecx
movzx ecx, byte [rdi + 0x2b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x29]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x28]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x34], ecx
movzx eax, byte [rdi + 0x2e]
movzx ecx, byte [rdi + 0x2f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x2d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x2c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x32]
mov dword [rsp + 0x38], ecx
movzx ecx, byte [rdi + 0x33]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x31]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x30]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x36]
mov dword [rsp + 0x3c], ecx
movzx ecx, byte [rdi + 0x37]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x35]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x34]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x3a]
mov dword [rsp + 0x40], ecx
movzx ecx, byte [rdi + 0x3b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x39]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x38]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x3e]
mov dword [rsp + 0x44], ecx
movzx ecx, byte [rdi + 0x3f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x3d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x3c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x42]
mov dword [rsp + 0x48], ecx
movzx ecx, byte [rdi + 0x43]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x41]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x40]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x46]
mov dword [rsp + 0x4c], ecx
movzx ecx, byte [rdi + 0x47]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x45]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x44]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x4a]
mov dword [rsp + 0x50], ecx
movzx ecx, byte [rdi + 0x4b]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x5c], 0
movzx eax, byte [rdi + 0x49]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x48]
shl ecx, 8
or ecx, eax
lea eax, [rdx*8]
mov dword [rsp + 0x54], ecx
lea rdx, [rsp + 0x20]
lea rcx, [rdi + 4]
mov dword [rsp + 0x58], eax
call fcn.180072c60
movzx eax, byte [rdi + 4]
mov byte [rdi + 0x54], al
mov ecx, dword [rdi + 4]
mov eax, ecx
shr eax, 8
mov byte [rdi + 0x55], al
mov eax, ecx
shr eax, 0x10
mov byte [rdi + 0x56], al
shr ecx, 0x18
mov byte [rdi + 0x57], cl
movzx eax, byte [rdi + 8]
mov byte [rdi + 0x58], al
mov ecx, dword [rdi + 8]
mov eax, ecx
shr eax, 8
mov byte [rdi + 0x59], al
mov eax, ecx
shr eax, 0x10
mov byte [rdi + 0x5a], al
shr ecx, 0x18
mov byte [rdi + 0x5b], cl
movzx eax, byte [rdi + 0xc]
mov byte [rdi + 0x5c], al
mov ecx, dword [rdi + 0xc]
mov eax, ecx
shr eax, 8
mov byte [rdi + 0x5d], al
mov eax, ecx
shr eax, 0x10
mov byte [rdi + 0x5e], al
shr ecx, 0x18
mov byte [rdi + 0x5f], cl
movzx eax, byte [rdi + 0x10]
mov byte [rdi + 0x60], al
mov ecx, dword [rdi + 0x10]
mov eax, ecx
shr eax, 8
mov byte [rdi + 0x61], al
mov eax, ecx
shr eax, 0x10
shr ecx, 0x18
mov byte [rdi + 0x62], al
mov byte [rdi + 0x63], cl
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.180073200
mov rbx, qword [rsp + 0x88]
add rsp, 0x70
pop rdi
ret