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

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x70
mov rax, qword [0x140043030]
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, [0x14077b260]
mov r8d, eax
mov ebx, eax
call fcn.140005570
mov rdx, qword [rdi]
sub rdx, rbx
mov qword [rdi], rdx
movzx eax, byte [rdi + 0x1a]
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 + 0x20], 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 + 0x24], 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 + 0x28], 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 + 0x2c], 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
movzx eax, byte [rdi + 0x2e]
mov dword [rsp + 0x30], ecx
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
mov dword [rsp + 0x34], ecx
movzx eax, byte [rdi + 0x32]
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 + 0x38], 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 + 0x3c], 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 + 0x40], 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 + 0x44], 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 + 0x48], 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 + 0x4c], ecx
movzx ecx, byte [rdi + 0x4b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x49]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x48]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x4e]
mov dword [rsp + 0x50], ecx
movzx ecx, byte [rdi + 0x4f]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x4d]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdi + 0x4c]
shl ecx, 8
or ecx, eax
lea eax, [rdx*8]
mov dword [rsp + 0x58], eax
lea rax, [rdx*8]
shr rax, 0x20
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x54], ecx
lea rcx, [rdi + 8]
mov dword [rsp + 0x5c], eax
call fcn.140005b40
movzx eax, byte [rdi + 8]
mov byte [rdi + 0x58], al
mov eax, dword [rdi + 8]
shr eax, 8
mov byte [rdi + 0x59], al
movzx eax, byte [rdi + 0xa]
mov byte [rdi + 0x5a], al
movzx eax, byte [rdi + 0xb]
mov byte [rdi + 0x5b], al
movzx eax, byte [rdi + 0xc]
mov byte [rdi + 0x5c], al
mov eax, dword [rdi + 0xc]
shr eax, 8
mov byte [rdi + 0x5d], al
movzx eax, byte [rdi + 0xe]
mov byte [rdi + 0x5e], al
movzx eax, byte [rdi + 0xf]
mov byte [rdi + 0x5f], al
movzx eax, byte [rdi + 0x10]
mov byte [rdi + 0x60], al
mov eax, dword [rdi + 0x10]
shr eax, 8
mov byte [rdi + 0x61], al
movzx eax, byte [rdi + 0x12]
mov byte [rdi + 0x62], al
movzx eax, byte [rdi + 0x13]
mov byte [rdi + 0x63], al
movzx eax, byte [rdi + 0x14]
mov byte [rdi + 0x64], al
mov eax, dword [rdi + 0x14]
shr eax, 8
mov byte [rdi + 0x65], al
movzx eax, byte [rdi + 0x16]
mov byte [rdi + 0x66], al
movzx eax, byte [rdi + 0x17]
mov byte [rdi + 0x67], al
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140008c30
mov rbx, qword [rsp + 0x88]
add rsp, 0x70
pop rdi
ret