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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0x120
mov rax, qword [0x1801f5f20]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0x88], r8
mov rax, rcx
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0xa0], rcx
mov ecx, dword [rcx]
mov ebx, dword [rax + 0x1c]
mov r14d, dword [rax + 0x38]
mov edx, dword [rax + 4]
mov r8d, dword [rax + 8]
mov r10d, dword [rax + 0xc]
mov r11d, dword [rax + 0x10]
mov esi, dword [rax + 0x14]
mov ebp, dword [rax + 0x18]
mov edi, dword [rax + 0x30]
mov dword [rsp + 0x50], ebx
mov ebx, dword [rax + 0x20]
mov dword [rsp + 0x54], ebx
mov ebx, dword [rax + 0x24]
mov dword [rsp + 0x58], ebx
mov ebx, dword [rax + 0x28]
mov dword [rsp + 0x5c], ebx
mov ebx, dword [rax + 0x2c]
mov dword [rsp + 0x60], ebx
mov ebx, dword [rax + 0x34]
mov dword [rsp + 0x64], r14d
mov r14d, dword [rax + 0x3c]
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x44], r9d
mov dword [rsp + 0x6c], ecx
mov dword [rsp + 0x70], edx
mov dword [rsp + 0x74], r8d
mov dword [rsp + 0x78], r10d
mov dword [rsp + 0x7c], r11d
mov dword [rsp + 0x80], esi
mov dword [rsp + 0x84], ebp
mov dword [rsp + 0x3c], edi
mov dword [rsp + 0x68], r14d
test r9d, r9d
je 0x180141007
mov qword [rsp + 0x108], r15
mov qword [rsp + 0x110], r13
mov qword [rsp + 0x118], r12
nop dword [rax]
mov eax, dword [rsp + 0x50]
mov r14d, ecx
mov ecx, esi
mov dword [rsp + 0x20], ebp
mov ebp, dword [rsp + 0x64]
mov esi, ebx
mov ebx, dword [rsp + 0x68]
mov r15d, edx
mov edx, dword [rsp + 0x5c]
mov r12d, r8d
mov r8d, dword [rsp + 0x60]
mov r13d, r10d
mov r10d, dword [rsp + 0x54]
mov r9d, r11d
mov r11d, dword [rsp + 0x58]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x48], 0xa
jmp 0x18014086d
mov edx, dword [rsp + 0x34]
mov r8d, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x24]
add r12d, dword [rsp + 0x20]
add r15d, ecx
add r13d, dword [rsp + 0x30]
add r14d, r9d
xor edi, r14d
xor ebx, r13d
rol ebx, 0x10
xor esi, r15d
add r8d, ebx
rol edi, 0x10
add r10d, edi
rol esi, 0x10
add r11d, esi
xor ebp, r12d
rol ebp, 0x10
mov eax, r10d
xor eax, r9d
add edx, ebp
rol eax, 0xc
add r14d, eax
xor edi, r14d
rol edi, 8
add r10d, edi
mov r9d, r10d
xor r9d, eax
mov eax, r11d
xor eax, ecx
rol r9d, 7
rol eax, 0xc
add r15d, eax
xor esi, r15d
rol esi, 8
add r11d, esi
mov ecx, r11d
xor ecx, eax
mov eax, edx
xor eax, dword [rsp + 0x20]
rol eax, 0xc
add r12d, eax
rol ecx, 7
add r14d, ecx
xor ebp, r12d
rol ebp, 8
add edx, ebp
mov dword [rsp + 0x34], edx
xor edx, eax
mov eax, r8d
rol edx, 7
xor eax, dword [rsp + 0x30]
add r15d, edx
rol eax, 0xc
xor edi, r15d
add r13d, eax
rol edi, 0x10
xor ebx, r13d
rol ebx, 8
add r8d, ebx
xor ebx, r14d
mov dword [rsp + 0x38], r8d
xor r8d, eax
mov eax, dword [rsp + 0x34]
rol ebx, 0x10
add eax, ebx
rol r8d, 7
mov dword [rsp + 0x34], eax
xor eax, ecx
mov ecx, dword [rsp + 0x34]
rol eax, 0xc
add r14d, eax
xor ebx, r14d
rol ebx, 8
add ecx, ebx
mov dword [rsp + 0x24], ecx
xor dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x38]
rol dword [rsp + 0x24], 7
add eax, edi
mov dword [rsp + 0x38], eax
xor eax, edx
rol eax, 0xc
mov dword [rsp + 0x34], ecx
mov edx, dword [rsp + 0x38]
add r15d, eax
add r12d, r8d
add r13d, r9d
xor esi, r12d
xor ebp, r13d
rol esi, 0x10
xor edi, r15d
add r10d, esi
rol ebp, 0x10
add r11d, ebp
rol edi, 8
add edx, edi
mov dword [rsp + 0x20], edx
xor dword [rsp + 0x20], eax
mov eax, r10d
rol dword [rsp + 0x20], 7
xor eax, r8d
rol eax, 0xc
add r12d, eax
mov dword [rsp + 0x38], edx
xor esi, r12d
rol esi, 8
add r10d, esi
mov r8d, r10d
xor r8d, eax
mov eax, r11d
xor eax, r9d
rol r8d, 7
rol eax, 0xc
add r13d, eax
mov dword [rsp + 0x30], r8d
xor ebp, r13d
rol ebp, 8
add r11d, ebp
mov r9d, r11d
xor r9d, eax
rol r9d, 7
sub qword [rsp + 0x48], 1
jne 0x180140860
add ecx, dword [rsp + 0x5c]
add edx, dword [rsp + 0x60]
mov eax, dword [rsp + 0x84]
add dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x50]
add dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x3c]
add edi, eax
add r9d, dword [rsp + 0x7c]
add r10d, dword [rsp + 0x54]
add r11d, dword [rsp + 0x58]
mov r8d, dword [rsp + 0x24]
add r8d, dword [rsp + 0x80]
add r14d, dword [rsp + 0x6c]
add r15d, dword [rsp + 0x70]
add r12d, dword [rsp + 0x74]
add r13d, dword [rsp + 0x78]
add ebp, dword [rsp + 0x64]
add ebx, dword [rsp + 0x68]
mov dword [rsp + 0x34], ecx
mov ecx, dword [rsp + 0x40]
add esi, ecx
add eax, 1
mov dword [rsp + 0x38], edx
mov rdx, qword [rsp + 0x28]
mov dword [rsp + 0x3c], eax
lea eax, [rcx + 1]
mov dword [rsp + 0x98], r9d
cmovne eax, ecx
mov dword [rsp + 0x24], r8d
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x44]
mov dword [rsp + 0x90], r10d
mov dword [rsp + 0x94], r11d
cmp eax, 0x40
jb 0x180140a9e
mov rax, qword [rsp + 0x88]
jmp 0x180140ae0
mov r8, rax
lea rcx, [rsp + 0xb0]
call fcn.180150e10
mov r10d, dword [rsp + 0x90]
lea rdx, [rsp + 0xb0]
mov r11d, dword [rsp + 0x94]
lea rax, [rsp + 0xb0]
mov r9d, dword [rsp + 0x98]
mov r8d, dword [rsp + 0x24]
mov qword [rsp + 0x28], rdx
movzx ecx, byte [rdx + 3]
shl ecx, 8
mov qword [rsp + 0x48], rax
movzx eax, byte [rdx + 2]
or ecx, eax
movzx eax, byte [rdx + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 6]
xor r14d, ecx
movzx ecx, byte [rdx + 7]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 5]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 4]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0xa]
xor r15d, ecx
movzx ecx, byte [rdx + 0xb]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 9]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 8]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0xe]
xor r12d, ecx
movzx ecx, byte [rdx + 0xf]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0xd]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0xc]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x12]
xor r13d, ecx
movzx ecx, byte [rdx + 0x13]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x11]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x10]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x16]
xor r9d, ecx
movzx ecx, byte [rdx + 0x17]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x15]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x14]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x1a]
xor r8d, ecx
movzx ecx, byte [rdx + 0x1b]
shl ecx, 8
or ecx, eax
mov dword [rsp + 0x24], r8d
movzx eax, byte [rdx + 0x19]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x18]
shl ecx, 8
or ecx, eax
xor dword [rsp + 0x20], ecx
movzx ecx, byte [rdx + 0x1f]
shl ecx, 8
movzx eax, byte [rdx + 0x1e]
or ecx, eax
mov r8, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rdx + 0x1d]
or ecx, eax
movzx eax, byte [rdx + 0x1c]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x22]
xor dword [rsp + 0x30], ecx
movzx ecx, byte [rdx + 0x23]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x21]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x20]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x26]
xor r10d, ecx
movzx ecx, byte [rdx + 0x27]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x25]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x24]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x2a]
xor r11d, ecx
movzx ecx, byte [rdx + 0x2b]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x29]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x28]
mov edx, dword [rsp + 0x34]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 0x2e]
xor edx, ecx
movzx ecx, byte [r8 + 0x2f]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 0x2d]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 0x2c]
mov r8d, dword [rsp + 0x38]
shl ecx, 8
or ecx, eax
mov rax, qword [rsp + 0x28]
xor r8d, ecx
movzx ecx, byte [rax + 0x33]
movzx eax, byte [rax + 0x32]
shl ecx, 8
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x31]
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x30]
or ecx, eax
mov rax, qword [rsp + 0x28]
xor edi, ecx
movzx ecx, byte [rax + 0x37]
movzx eax, byte [rax + 0x36]
shl ecx, 8
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x35]
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x34]
or ecx, eax
mov rax, qword [rsp + 0x28]
xor esi, ecx
movzx ecx, byte [rax + 0x3b]
movzx eax, byte [rax + 0x3a]
shl ecx, 8
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x39]
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x38]
or ecx, eax
mov rax, qword [rsp + 0x28]
xor ebp, ecx
movzx ecx, byte [rax + 0x3f]
movzx eax, byte [rax + 0x3e]
shl ecx, 8
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x3d]
or ecx, eax
mov rax, qword [rsp + 0x28]
shl ecx, 8
movzx eax, byte [rax + 0x3c]
or ecx, eax
mov eax, r14d
shr eax, 8
xor ebx, ecx
mov rcx, qword [rsp + 0x48]
mov byte [rcx + 1], al
mov eax, r14d
shr eax, 0x10
mov byte [rcx + 2], al
mov eax, r15d
shr eax, 8
mov byte [rcx + 5], al
mov eax, r15d
shr eax, 0x10
mov byte [rcx + 6], al
mov eax, r12d
shr eax, 8
mov byte [rcx + 9], al
mov eax, r12d
shr eax, 0x10
mov byte [rcx + 0xa], al
mov eax, r13d
shr eax, 8
mov byte [rcx + 0xd], al
mov eax, r13d
shr eax, 0x10
mov byte [rcx + 0xe], al
mov eax, r9d
shr eax, 8
mov byte [rcx + 0x11], al
mov eax, r9d
mov byte [rcx], r14b
shr r14d, 0x18
shr eax, 0x10
mov byte [rcx + 4], r15b
mov byte [rcx + 8], r12b
mov byte [rcx + 0xc], r13b
mov byte [rcx + 3], r14b
mov r14, rcx
shr r15d, 0x18
shr r12d, 0x18
shr r13d, 0x18
mov byte [rcx + 0x10], r9b
mov byte [rcx + 0x12], al
shr r9d, 0x18
mov byte [rcx + 0x13], r9b
mov byte [rcx + 7], r15b
mov byte [rcx + 0xb], r12b
mov byte [rcx + 0xf], r13b
mov ecx, dword [rsp + 0x24]
mov eax, ecx
mov byte [r14 + 0x14], cl
shr eax, 8
mov byte [r14 + 0x15], al
mov eax, ecx
shr eax, 0x10
mov byte [r14 + 0x16], al
shr ecx, 0x18
mov byte [r14 + 0x17], cl
mov ecx, dword [rsp + 0x20]
mov eax, ecx
shr eax, 8
mov byte [r14 + 0x19], al
mov eax, ecx
shr eax, 0x10
mov byte [r14 + 0x1a], al
mov byte [r14 + 0x18], cl
shr ecx, 0x18
mov byte [r14 + 0x1b], cl
mov ecx, dword [rsp + 0x30]
mov eax, ecx
shr eax, 8
mov byte [r14 + 0x1d], al
mov eax, ecx
shr eax, 0x10
mov byte [r14 + 0x1e], al
mov eax, r10d
shr eax, 8
mov byte [r14 + 0x21], al
mov eax, r10d
shr eax, 0x10
mov byte [r14 + 0x22], al
mov eax, r11d
shr eax, 8
mov byte [r14 + 0x25], al
mov eax, r11d
shr eax, 0x10
mov byte [r14 + 0x26], al
mov eax, edx
shr eax, 8
mov byte [r14 + 0x29], al
mov eax, edx
shr eax, 0x10
mov byte [r14 + 0x2a], al
mov eax, r8d
shr eax, 8
mov byte [r14 + 0x2d], al
mov eax, r8d
shr eax, 0x10
mov byte [r14 + 0x2e], al
mov eax, edi
shr eax, 8
mov byte [r14 + 0x31], al
mov eax, edi
shr eax, 0x10
mov byte [r14 + 0x32], al
mov eax, esi
shr eax, 8
mov byte [r14 + 0x35], al
mov eax, esi
shr eax, 0x10
mov byte [r14 + 0x1c], cl
shr ecx, 0x18
mov byte [r14 + 0x20], r10b
shr r10d, 0x18
mov byte [r14 + 0x24], r11b
shr r11d, 0x18
mov byte [r14 + 0x28], dl
shr edx, 0x18
mov byte [r14 + 0x2c], r8b
shr r8d, 0x18
mov byte [r14 + 0x30], dil
shr edi, 0x18
mov byte [r14 + 0x34], sil
shr esi, 0x18
mov byte [r14 + 0x37], sil
mov byte [r14 + 0x1f], cl
mov byte [r14 + 0x23], r10b
mov byte [r14 + 0x27], r11b
mov byte [r14 + 0x2b], dl
mov byte [r14 + 0x2f], r8b
mov byte [r14 + 0x33], dil
mov byte [r14 + 0x36], al
mov eax, ebp
mov byte [r14 + 0x38], bpl
shr eax, 8
mov byte [r14 + 0x39], al
mov eax, ebp
shr eax, 0x10
mov byte [r14 + 0x3a], al
mov eax, ebx
shr eax, 8
mov byte [r14 + 0x3d], al
mov eax, ebx
shr eax, 0x10
shr ebp, 0x18
mov byte [r14 + 0x3e], al
mov eax, dword [rsp + 0x44]
mov byte [r14 + 0x3c], bl
shr ebx, 0x18
mov byte [r14 + 0x3b], bpl
mov byte [r14 + 0x3f], bl
cmp eax, 0x40
jb 0x180140fdf
add qword [rsp + 0x28], 0x40
add qword [rsp + 0x88], 0x40
mov ebx, dword [rsp + 0x40]
add eax, 0xffffffc0
mov edi, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x6c]
mov edx, dword [rsp + 0x70]
mov r8d, dword [rsp + 0x74]
mov r10d, dword [rsp + 0x78]
mov r11d, dword [rsp + 0x7c]
mov esi, dword [rsp + 0x80]
mov ebp, dword [rsp + 0x84]
mov dword [rsp + 0x44], eax
jne 0x180140810
mov rax, qword [rsp + 0xa0]
mov dword [rax + 0x30], edi
mov r13, qword [rsp + 0x110]
mov r12, qword [rsp + 0x118]
mov r15, qword [rsp + 0x108]
mov dword [rax + 0x34], ebx
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.180131f30
add rsp, 0x120
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rcx, qword [rsp + 0x88]
mov r8, rax
mov rdx, r14
call fcn.180150e10
mov rax, qword [rsp + 0xa0]
mov edi, dword [rsp + 0x3c]
mov ebx, dword [rsp + 0x40]
mov dword [rax + 0x30], edi
jmp 0x180140fa6
mov dword [rax + 0x30], edi
jmp 0x180140fbe