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

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rsi, rdx
mov rdi, rcx
mov edx, dword [rdx + 0x30]
xor ebp, ebp
mov ebx, 0x8000
mov r8d, 0x1f000000
movabs r14, 0x7fffffffffff
lea rcx, [rsi + 0x38]
and edx, r8d
mov r12, rcx
cmp edx, 0xb000000
je 0x140033833
cmp dword [rcx], ebp
mov r8d, ebp
mov rdx, rsi
mov rcx, rdi
setne r8b
call fcn.140035260
test eax, eax
je 0x140033f2a
jmp 0x140033ade
mov rax, qword [rsi + 8]
cmp rax, 0xffffffffffffffff
je 0x140033853
sar rax, 0x2f
cmp eax, 0xfffffff2
jae 0x140033897
movsd xmm0, qword [rsi + 8]
ucomisd xmm0, xmm0
jp 0x140033853
je 0x140033897
cmp dword [rsi + 0x38], ebp
jne 0x140033f1c
cmp word [rsi + 0x34], bx
jae 0x140033897
cmp dword [rsi + 0x44], ebp
je 0x14003387d
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call fcn.140035260
test eax, eax
jne 0x140033ade
mov eax, 0x7fff
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea r9, [rsp + 0x80]
mov rdx, rsi
lea r8, [rsp + 0x24]
mov rcx, rdi
call fcn.140037200
mov r15, qword [rdi + 0x20]
movzx r13d, ax
mov dword [rsp + 0x20], eax
mov bl, byte [r15 + r13*8 + 5]
mov byte [rsp + 0x78], bl
cmp bl, 0x1a
jne 0x1400338d0
mov r15, qword [r15 + r13*8 + 8]
jmp 0x1400338d4
mov r15, qword [rsi + 0x28]
cmp dword [rsi + 0x38], ebp
jne 0x1400339ba
mov r14, qword [r15]
sar r14, 0x2f
cmp r14d, 0xfffffff2
jae 0x1400338f2
mov r14d, 0xe
jmp 0x1400338f5
not r14d
lea r8, [rdi - 0x1e0]
cmp r15, r8
jne 0x140033938
mov edx, 0x1a
mov rcx, rdi
call fcn.1400466a4
mov ecx, 0x889
mov word [rdi + 0xb8], r13w
mov word [rdi + 0xbc], cx
mov rcx, rdi
mov word [rdi + 0xba], ax
call fcn.14004e53c
mov ebx, 0x7fff
jmp 0x14003396d
cmp bl, 0x38
mov word [rdi + 0xb8], r13w
mov eax, 0x4380
mov word [rdi + 0xba], bp
mov ecx, 0x4280
cmove ax, cx
mov rcx, rdi
or ax, r14w
mov word [rdi + 0xbc], ax
call fcn.14004e53c
mov ebx, eax
mov edx, dword [rsp + 0x24]
movzx ecx, bx
cmp ecx, edx
jae 0x14003398d
mov rcx, rdi
call fcn.140046980
mov cl, byte [rsp + 0x80]
mov byte [rdi + 0xb6], cl
test r14d, r14d
jne 0x140033b87
cmp dword [rsi + 0x44], ebp
je 0x140033b8d
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call fcn.140035260
test eax, eax
je 0x140033b8d
jmp 0x140033acf
mov rax, qword [rsi]
and rax, r14
mov rcx, qword [rax + 0x20]
movzx eax, byte [rsi + 0x37]
and eax, 0x1f
mov qword [rsp + 0x28], rcx
sub eax, 4
cmp eax, 8
ja 0x1400339ec
test dword [rsi + 0x38], 0x1f000000
mov dword [rsp + 0x88], 1
jne 0x1400339f3
mov dword [rsp + 0x88], ebp
mov edx, dword [rsp + 0x24]
cmp r13d, edx
jae 0x140033a16
mov rcx, rdi
call fcn.140046980
mov al, byte [rsp + 0x80]
mov rcx, qword [rsp + 0x28]
mov byte [rdi + 0xb6], al
cmp qword [r15], 0xffffffffffffffff
jne 0x140033cb8
cmp dword [rsi + 0x44], ebp
je 0x140033a62
test rcx, rcx
je 0x140033a62
mov rdx, qword [rdi - 0x128]
call fcn.140011e6c
test rax, rax
je 0x140033a62
cmp qword [rax], 0xffffffffffffffff
je 0x140033a62
cmp bl, 0x38
mov word [rdi + 0xba], bp
mov eax, 0x4380
mov ecx, 0x4280
cmove ax, cx
mov word [rdi + 0xbc], ax
jmp 0x140033a9d
cmp bl, 0x3a
jne 0x140033aad
lea rbx, [rdi - 0x1e0]
mov edx, 0x1a
mov r8, rbx
mov rcx, rdi
call fcn.1400466a4
cmp r15, rbx
mov word [rdi + 0xba], ax
mov ecx, 0x989
mov edx, 0x889
cmove cx, dx
mov word [rdi + 0xbc], cx
mov rcx, rdi
mov word [rdi + 0xb8], r13w
call fcn.14004e53c
cmp dword [rsi + 0x44], ebp
je 0x140033c4a
mov r8d, 1
mov rdx, rsi
mov rcx, rdi
call fcn.140035260
test eax, eax
je 0x140033c4a
movabs r14, 0x7fffffffffff
mov ebx, 0x8000
mov edx, dword [rsi + 0x40]
mov r8d, 0x1f000000
and edx, r8d
cmp edx, 0x8000000
je 0x140033ba3
cmp dword [rsi + 0x3c], 0x7fff
mov rcx, r12
jne 0x140033b6b
cmp dword [r12], ebp
jne 0x140033b6b
mov eax, dword [rsi + 0x30]
and eax, r8d
cmp eax, 0xc000000
jne 0x140033b6b
mov rax, qword [rsi]
and rax, r14
cmp byte [rax + 0xa], 3
jne 0x140033b6b
cmp edx, 0xb000000
jne 0x140033b6b
mov eax, dword [rsi + 0x34]
and eax, r8d
cmp eax, 0x4000000
jne 0x140033b6b
cmp word [rsi + 0x34], bx
jae 0x140033b6b
mov rdx, qword [rsi + 8]
mov rcx, qword [rsi + 0x18]
and rdx, r14
and rcx, r14
call fcn.140011e6c
mov rdx, rax
mov rcx, rdi
call fcn.140033764
mov rcx, r12
test eax, eax
jne 0x140033882
mov r8d, 0x1f000000
sub dword [rsi + 0x44], 1
mov rax, qword [rsi + 0x18]
mov edx, dword [rsi + 0x40]
mov qword [rsi], rax
mov dword [rsi + 0x30], edx
je 0x140033f38
jmp 0x140033804
cmp r14d, 2
ja 0x140033b9c
mov ebx, r14d
shl ebx, 0x18
sub ebx, r14d
add ebx, 0x7fff
mov eax, ebx
jmp 0x140033882
cmp dword [rsi + 0x38], ebp
lea rax, [0x140003297]
lea rdx, [0x1400031a0]
mov rcx, rdi
cmovne rdx, rax
call fcn.140038048
mov rcx, qword [rdi + 0x80]
mov r10, qword [rdi + 0xa0]
mov r9d, eax
mov edx, r9d
mov r11, qword [rcx + 0x20]
mov ecx, dword [rsi + 0x40]
mov dword [r10 + r9*4], ecx
mov ecx, dword [rsi + 0x30]
mov dword [r10 + r9*4 + 8], ecx
movabs rcx, 0xfffb800000000000
mov eax, dword [rsi + 0x34]
mov dword [r10 + r9*4 + 0xc], eax
mov rax, qword [rsi + 0x18]
and rax, r14
or rax, rcx
mov rcx, rdi
mov qword [r11 + r9*8], rax
mov rax, qword [rsi]
mov qword [r11 + r9*8 + 0x10], rax
mov rax, qword [rsi + 8]
mov qword [r11 + r9*8 + 0x18], rax
mov eax, dword [rsi + 0x38]
test eax, eax
je 0x140033c42
mov dword [r10 + r9*4 + 0x10], eax
mov r8d, 3
mov rax, qword [rsi + 0x10]
mov qword [r11 + r9*8 + 0x20], rax
call fcn.140033704
xor eax, eax
jmp 0x140033882
mov r8d, 2
jmp 0x140033c36
lea rax, [rdi - 0x1e0]
cmp r15, rax
jne 0x140033dc8
mov edx, dword [rsi + 0x34]
mov eax, edx
shr eax, 0x18
and eax, 0x1f
sub eax, 0xf
cmp eax, 4
ja 0x140033c88
mov rcx, rdi
mov dword [rdi + 0xba], 0x5b0e01d3
mov word [rdi + 0xb8], dx
call fcn.14004e53c
mov edx, eax
movzx ecx, word [rsi + 0x30]
mov eax, 0x3b09
mov word [rdi + 0xb8], cx
mov rcx, rdi
mov word [rdi + 0xbc], ax
mov word [rdi + 0xba], dx
call fcn.14004e53c
mov r14d, eax
mov ebx, ebp
jmp 0x140033dd4
mov r12b, byte [rsp + 0x78]
mov ebx, ebp
cmp r12b, 0x38
mov r8d, r13d
mov rcx, rdi
setne bl
add bx, 0x42
movzx edx, bx
call fcn.14004fa28
test eax, eax
jne 0x140033dc4
cmp r12b, 0x3a
jne 0x140033d1b
lea r8, [rdi - 0x1e0]
mov rcx, rdi
lea edx, [rax + 0x1a]
call fcn.1400466a4
mov ecx, 0x989
mov word [rdi + 0xb8], r13w
mov word [rdi + 0xbc], cx
mov rcx, rdi
mov word [rdi + 0xba], ax
call fcn.14004e53c
cmp dword [rsi + 0x44], ebp
je 0x140033db6
cmp qword [rsp + 0x28], rbp
jne 0x140033d73
movzx eax, word [rsi + 0x30]
mov rcx, rdi
mov word [rdi + 0xb8], ax
mov dword [rdi + 0xba], 0x450b0005
call fcn.14004e53c
mov edx, 0xb
mov rcx, rdi
mov ebx, eax
call fcn.1400465c4
mov ecx, 0x88b
mov word [rdi + 0xb8], bx
mov word [rdi + 0xbc], cx
mov word [rdi + 0xba], ax
jmp 0x140033dae
mov rax, qword [r15]
sar rax, 0x2f
cmp eax, 0xfffffff2
jae 0x140033d86
mov eax, 0xe
jmp 0x140033d89
not ax
shl bx, 8
or bx, ax
mov word [rdi + 0xb8], r13w
mov eax, 0x80
mov word [rdi + 0xba], bp
or bx, ax
mov word [rdi + 0xbc], bx
mov rcx, rdi
call fcn.14004e53c
mov ebx, dword [rsp + 0x88]
mov r14d, dword [rsp + 0x20]
jmp 0x140033dd9
mov ebx, ebp
jmp 0x140033dbd
mov ebx, dword [rsp + 0x88]
mov r14d, dword [rsp + 0x20]
mov r12b, byte [rsp + 0x78]
mov r8d, dword [rsi + 0x38]
mov eax, r8d
shr eax, 0x18
and eax, 0x1f
sub eax, 0xf
cmp eax, 4
ja 0x140033e0e
mov rcx, rdi
mov dword [rdi + 0xba], 0x5b0e01d3
mov word [rdi + 0xb8], r8w
call fcn.14004e53c
mov r8d, eax
mov dword [rsi + 0x38], eax
movzx edx, word [rsi + 0x38]
mov ecx, 0x4b00
shr r8d, 0x18
mov eax, 0x4a00
mov r15d, 0x1f
mov word [rdi + 0xb8], r14w
and r8w, r15w
mov word [rdi + 0xba], dx
cmp r12b, 0x38
cmove cx, ax
or r8w, cx
mov rcx, rdi
mov word [rdi + 0xbc], r8w
call fcn.14004e53c
test ebx, ebx
jne 0x140033e68
movzx eax, byte [rsi + 0x3b]
and eax, r15d
sub eax, 4
cmp eax, 8
ja 0x140033e85
movzx eax, word [rsi + 0x30]
mov rcx, rdi
mov word [rdi + 0xb8], ax
mov dword [rdi + 0xba], 0x58000000
call fcn.14004e53c
mov eax, dword [rsi + 0x34]
and eax, 0x1f000000
cmp eax, 0x4000000
jne 0x140033f10
mov eax, 0x8000
cmp word [rsi + 0x34], ax
jae 0x140033ec5
mov rax, qword [rdi + 0x20]
movzx ecx, word [rsi + 0x34]
mov rdx, qword [rax + rcx*8 + 8]
lea rax, [rdi - 0x130]
cmp qword [rax], rdx
je 0x140033ec5
inc ebp
add rax, 8
cmp ebp, 5
jbe 0x140033eb3
jmp 0x140033f10
movzx eax, word [rsi + 0x30]
mov rcx, rdi
mov word [rdi + 0xb8], ax
mov dword [rdi + 0xba], 0x3e09000a
call fcn.14004e53c
xor edx, edx
mov rcx, rdi
mov ebx, eax
call fcn.140046534
mov ecx, 0x4d10
mov word [rdi + 0xb8], bx
mov word [rdi + 0xbc], cx
mov rcx, rdi
mov word [rdi + 0xba], ax
call fcn.14004e53c
mov byte [rdi + 0xb5], 1
jmp 0x140033c3b
mov edx, 0x11
mov rcx, rdi
call fcn.14001506c
int3
mov edx, 0x12
mov rcx, rdi
call fcn.14001506c
int3
mov edx, 0x13
mov rcx, rdi
call fcn.14001506c
int3