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

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x20
mov eax, dword [r8]
mov rbx, r9
mov rdi, r8
mov rsi, rcx
test eax, eax
jne 0x1337c0f0d4dc
mov dword [r8], 0xc8
mov eax, 0x8007007a
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
cmp eax, 0xbc
jae 0x1337c0f0d4f7
mov dword [r8], 0xbc
mov eax, 0x8007007a
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
test rbx, rbx
jne 0x1337c0f0d509
mov eax, 0x80070057
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
mov rax, qword [rcx + 0xb90]
mov ecx, dword [r9 + 8]
mov qword [r9], rax
xor ecx, dword [rsi + 0xb98]
and ecx, 1
mov qword [rsp + 0x40], rbp
xor ecx, dword [r9 + 8]
mov dword [r9 + 8], ecx
mov eax, ecx
xor eax, dword [rsi + 0xb98]
and eax, 2
mov qword [rsp + 0x48], r14
xor eax, ecx
mov dword [r9 + 8], eax
mov ecx, eax
xor ecx, dword [rsi + 0xb98]
and ecx, 4
xor ecx, eax
mov dword [r9 + 8], ecx
mov eax, ecx
xor eax, dword [rsi + 0xb98]
and eax, 8
xor eax, ecx
mov dword [r9 + 8], eax
mov eax, dword [rsi + 0x18c]
mov dword [r9 + 0xc], eax
mov eax, dword [rsi + 0x190]
mov dword [r9 + 0x10], eax
mov eax, dword [rsi + 0x194]
mov dword [r9 + 0x14], eax
mov r11, qword [rsi + 0xba0]
mov qword [r9 + 0x18], r11
mov rbp, qword [rsi + 0xba8]
mov qword [r9 + 0x20], rbp
mov r14, qword [rsi + 0xbb0]
mov qword [r9 + 0x28], r14
mov eax, dword [rsi + 0xbd0]
mov dword [r9 + 0x30], eax
mov eax, dword [rsi + 0xbd4]
mov dword [r9 + 0x34], eax
mov eax, dword [rsi + 0xbd8]
mov dword [r9 + 0x38], eax
movzx eax, word [rsi + 0x12c]
mov word [r9 + 0x3c], ax
mov rax, qword [rsi + 0xbe0]
mov qword [r9 + 0x40], rax
mov rax, qword [rsi + 0xbe8]
mov qword [r9 + 0x48], rax
mov rax, qword [rsi + 0xbf0]
mov qword [r9 + 0x50], rax
mov rax, qword [rsi + 0xbf8]
mov qword [r9 + 0x58], rax
mov rax, qword [rsi + 0xc00]
mov qword [r9 + 0x60], rax
mov rax, qword [rsi + 0xc08]
mov qword [r9 + 0x68], rax
mov eax, dword [rsi + 0xc10]
mov dword [r9 + 0x70], eax
mov eax, dword [rsi + 0xc14]
mov dword [r9 + 0x74], eax
mov rax, qword [rsi + 0xc18]
mov qword [r9 + 0x78], rax
mov rax, qword [rsi + 0xc20]
mov qword [r9 + 0x80], rax
mov rax, qword [rsi + 0xc28]
mov qword [r9 + 0x88], rax
mov rax, qword [rsi + 0xc30]
mov qword [r9 + 0x90], rax
mov rax, qword [rsi + 0xc50]
mov qword [r9 + 0x98], rax
mov rax, qword [rsi + 0xc58]
mov qword [r9 + 0xa0], rax
mov rax, qword [rsi + 0xc38]
mov qword [r9 + 0xa8], rax
mov rax, qword [rsi + 0xc48]
mov qword [r9 + 0xb0], rax
mov eax, dword [rsi + 0xc60]
mov dword [r9 + 0xb8], eax
test dl, dl
je 0x1337c0f0d78e
mov r9, qword [0x1337c128bcb8]
mov r10, r11
shr r10, 0x20
imul r10, r9
mov qword [rsp + 0x50], r15
movabs r15, 0x431bde82d7b634db
mov rax, r15
mul r10
mov eax, r11d
imul rax, r9
mov r8, rdx
xor edx, edx
shr r8, 0x12
imul rcx, r8, 0xf4240
shl r8, 0x20
sub r10, rcx
shl r10, 0x20
add rax, r10
mov r10, rbp
div r9
shr r10, 0x20
add rax, r8
mov qword [rbx + 0x18], rax
mov rax, r15
mov r9, qword [0x1337c128bcb8]
imul r10, r9
mul r10
mov eax, ebp
imul rax, r9
mov r8, rdx
xor edx, edx
shr r8, 0x12
imul rcx, r8, 0xf4240
shl r8, 0x20
sub r10, rcx
shl r10, 0x20
add rax, r10
mov r10, r14
div r9
shr r10, 0x20
add rax, r8
mov qword [rbx + 0x20], rax
mov rax, r15
mov r9, qword [0x1337c128bcb8]
mov r15, qword [rsp + 0x50]
imul r10, r9
mul r10
mov eax, r14d
mov r8, rdx
xor edx, edx
shr r8, 0x12
imul rcx, r8, 0xf4240
imul rax, r9
sub r10, rcx
shl r8, 0x20
shl r10, 0x20
add rax, r10
div r9
add rax, r8
mov qword [rbx + 0x28], rax
cmp dword [rdi], 0xc0
mov r14, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x40]
jb 0x1337c0f0d7b3
lea rcx, [rsi + 0x718]
call qword [rsi + 0x780]
mov dword [rbx + 0xbc], eax
cmp dword [rdi], 0xc4
jb 0x1337c0f0d7c7
mov eax, dword [rsi + 0xc64]
mov dword [rbx + 0xc0], eax
mov ecx, 0xc8
cmp dword [rdi], ecx
cmovb ecx, dword [rdi]
xor eax, eax
mov dword [rdi], ecx
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
mov qword [rsp + 0x20], rbx
push rdi
sub rsp, 0x20
lea eax, [rdx - 0x5000000]
mov rbx, r9
mov r11, r8
mov rdi, rcx
cmp eax, 0x17
ja case.0x1337c0f0d814.83886096
lea rcx, [0x1337c0de0000]
mov r10d, dword [rcx + rax*4 + 0x12df18]
add r10, rcx
jmp r10
cmp dword [r8], 4
jae 0x1337c0f0d834
mov dword [r8], 4
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 4
mov eax, dword [rdi + 0xb9c]
bswap eax
mov dword [r9], eax
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 0x1c
jae 0x1337c0f0d879
mov dword [r8], 0x1c
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0d814.83886096
test byte [rdi + 0xea], 8
jne 0x1337c0f0d89b
mov eax, 0x8007139f
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov dword [r8], 0x1c
movups xmm0, xmmword [rdi + 0x164]
movups xmmword [r9], xmm0
movsd xmm1, qword [rdi + 0x174]
movsd qword [r9 + 0x10], xmm1
mov eax, dword [rdi + 0x17c]
mov dword [r9 + 0x18], eax
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 0x1c
jb 0x1337c0f0d862
test rbx, rbx
je case.0x1337c0f0d814.83886096
test byte [rdi + 0xea], 0x10
je 0x1337c0f0d88b
mov dword [r8], 0x1c
movups xmm0, xmmword [rdi + 0x148]
movups xmmword [r9], xmm0
movsd xmm1, qword [rdi + 0x158]
movsd qword [r9 + 0x10], xmm1
mov eax, dword [rdi + 0x160]
mov dword [r9 + 0x18], eax
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 2
jae 0x1337c0f0d93e
mov dword [r8], 2
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 2
mov rax, qword [rdi + 0x40]
movzx ecx, word [rax + 0x3a]
xor eax, eax
mov word [r9], cx
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
lea rcx, [rdi + 0x58]
mov r8, rbx
mov rdx, r11
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
jmp fcn.1337c0f10600
lea rcx, [rdi + 0x58]
mov r8, rbx
mov rdx, r11
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
jmp fcn.1337c0f109d0
cmp dword [r8], 0xc8
jae 0x1337c0f0d9b9
mov dword [r8], 0xc8
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov rax, qword [rdi + 0xb90]
mov ecx, dword [r9 + 8]
mov qword [r9], rax
xor ecx, dword [rdi + 0xb98]
and ecx, 1
mov qword [rsp + 0x30], rbp
xor ecx, dword [r9 + 8]
mov dword [r9 + 8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb98]
and eax, 2
mov qword [rsp + 0x38], rsi
xor eax, ecx
mov qword [rsp + 0x40], r14
mov dword [r9 + 8], eax
mov ecx, eax
xor ecx, dword [rdi + 0xb98]
and ecx, 4
xor ecx, eax
mov dword [r9 + 8], ecx
mov eax, ecx
xor eax, dword [rdi + 0xb98]
and eax, 8
xor eax, ecx
mov dword [r9 + 8], eax
mov eax, dword [rdi + 0x18c]
mov dword [r9 + 0xc], eax
mov eax, dword [rdi + 0x190]
mov dword [r9 + 0x10], eax
mov eax, dword [rdi + 0x194]
mov dword [r9 + 0x14], eax
mov rsi, qword [rdi + 0xba0]
mov qword [r9 + 0x18], rsi
mov rbp, qword [rdi + 0xba8]
mov qword [r9 + 0x20], rbp
mov r14, qword [rdi + 0xbb0]
mov qword [r9 + 0x28], r14
mov eax, dword [rdi + 0xbd0]
mov dword [r9 + 0x30], eax
mov eax, dword [rdi + 0xbd4]
mov dword [r9 + 0x34], eax
mov eax, dword [rdi + 0xbd8]
mov dword [r9 + 0x38], eax
movzx eax, word [rdi + 0x12c]
mov word [r9 + 0x40], ax
mov rax, qword [rdi + 0xbe0]
mov qword [r9 + 0x48], rax
mov rax, qword [rdi + 0xbe8]
mov qword [r9 + 0x50], rax
mov rax, qword [rdi + 0xbf0]
mov qword [r9 + 0x58], rax
mov rax, qword [rdi + 0xbf8]
mov qword [r9 + 0x60], rax
mov rax, qword [rdi + 0xc00]
mov qword [r9 + 0x68], rax
mov rax, qword [rdi + 0xc08]
mov qword [r9 + 0x70], rax
mov eax, dword [rdi + 0xc10]
mov dword [r9 + 0x78], eax
mov eax, dword [rdi + 0xc14]
mov dword [r9 + 0x7c], eax
mov rax, qword [rdi + 0xc18]
mov qword [r9 + 0x80], rax
mov rax, qword [rdi + 0xc20]
mov qword [r9 + 0x88], rax
mov rax, qword [rdi + 0xc28]
mov qword [r9 + 0x90], rax
mov rax, qword [rdi + 0xc30]
mov qword [r9 + 0x98], rax
mov rax, qword [rdi + 0xc50]
mov qword [r9 + 0xa0], rax
mov rax, qword [rdi + 0xc58]
mov qword [r9 + 0xa8], rax
mov rax, qword [rdi + 0xc38]
mov qword [r9 + 0xb0], rax
mov rax, qword [rdi + 0xc48]
mov qword [r9 + 0xb8], rax
mov eax, dword [rdi + 0xc60]
mov dword [r9 + 0xc0], eax
cmp edx, 0x5000006
jne 0x1337c0f0dc48
mov r9, qword [0x1337c128bcb8]
movabs rdi, 0x431bde82d7b634db
mov r10, rsi
mov rax, rdi
shr r10, 0x20
imul r10, r9
mul r10
mov eax, esi
imul rax, r9
mov r8, rdx
xor edx, edx
shr r8, 0x12
imul rcx, r8, 0xf4240
shl r8, 0x20
sub r10, rcx
shl r10, 0x20
add rax, r10
mov r10, rbp
div r9
shr r10, 0x20
add rax, r8
mov qword [rbx + 0x18], rax
mov rax, rdi
mov r9, qword [0x1337c128bcb8]
imul r10, r9
mul r10
mov eax, ebp
imul rax, r9
mov r8, rdx
xor edx, edx
shr r8, 0x12
imul rcx, r8, 0xf4240
shl r8, 0x20
sub r10, rcx
shl r10, 0x20
add rax, r10
mov r10, r14
div r9
shr r10, 0x20
add rax, r8
mov qword [rbx + 0x20], rax
mov rax, rdi
mov r9, qword [0x1337c128bcb8]
imul r10, r9
mul r10
mov eax, r14d
mov r8, rdx
xor edx, edx
shr r8, 0x12
imul rcx, r8, 0xf4240
imul rax, r9
sub r10, rcx
shl r8, 0x20
shl r10, 0x20
add rax, r10
div r9
add rax, r8
mov qword [rbx + 0x28], rax
mov r14, qword [rsp + 0x40]
xor eax, eax
mov rsi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x30]
mov dword [r11], 0xc8
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 1
jae 0x1337c0f0dc88
mov dword [r8], 1
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 1
movzx eax, byte [rdi + 0xeb]
shr al, 1
and al, 1
mov byte [r9], al
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
xor eax, eax
cmp dword [rdi], 4
mov ecx, eax
sete cl
jmp 0x1337c0f0dccd
xor eax, eax
cmp dword [rdi], 4
mov ecx, eax
sete cl
add rcx, 2
cmp dword [r8], 2
jb 0x1337c0f0d927
test rbx, rbx
je case.0x1337c0f0d814.83886096
lea rcx, [rcx + rcx*2]
mov dword [r8], 2
mov r8, qword [rdi + rcx*8 + 0x6a8]
mov rdx, qword [rdi + rcx*8 + 0x6a0]
cmp r8, rdx
jb 0x1337c0f0dd0f
mov word [r9], ax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
sub rdx, r8
mov ecx, 0xffff
cmp rdx, rcx
cmova dx, cx
mov word [r9], dx
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 0x20
jae 0x1337c0f0dd4a
mov dword [r8], 0x20
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 0x20
mov rax, qword [rdi + 0x6a0]
shl rax, 2
mov qword [r9], rax
mov rax, qword [rdi + 0x6b8]
shl rax, 2
or rax, 1
mov qword [r9 + 8], rax
mov rax, qword [rdi + 0x6d0]
shl rax, 2
or rax, 2
mov qword [r9 + 0x10], rax
mov rax, qword [rdi + 0x6e8]
shl rax, 2
or rax, 3
mov qword [r9 + 0x18], rax
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov rcx, qword [rdi + 0x4f0]
test rcx, rcx
jne 0x1337c0f0ddca
mov eax, 0x80070490
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rcx + rax], 0
jne 0x1337c0f0ddd1
inc eax
cmp dword [r8], eax
jae 0x1337c0f0ddf4
mov dword [r8], eax
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], eax
mov rcx, rbx
mov rdx, qword [rdi + 0x4f0]
mov r8d, eax
call fcn.1337c1052260
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 4
jb 0x1337c0f0d81d
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 4
movzx eax, byte [rdi + 0xeb]
shr eax, 3
and eax, 1
mov dword [r9], eax
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 1
jb 0x1337c0f0dc71
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 1
movzx eax, byte [rdi + 0xbd]
shr al, 3
and al, 1
mov byte [r9], al
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 1
jb 0x1337c0f0dc71
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 1
movzx eax, byte [rdi + 0xb7a]
and al, 1
mov byte [r9], al
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 1
jb 0x1337c0f0dc71
test rbx, rbx
je case.0x1337c0f0d814.83886096
mov dword [r8], 1
movzx eax, byte [rdi + 0xe9]
shr al, 4
and al, 1
mov byte [r9], al
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp edx, 0x5000017
mov rcx, rdi
sete dl
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
jmp 0x1337c0f0d4b0
mov rbx, qword [rsp + 0x48]
mov eax, 0x80070057
add rsp, 0x20
pop rdi
ret