Function at 0x1337c0f0e930
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 rsi, r8
mov rdi, rcx
test eax, eax
jne 0x1337c0f0e95c
mov dword [r8], 0xc8
mov eax, 0x8007007a
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
cmp eax, 0xbc
jae 0x1337c0f0e977
mov dword [r8], 0xbc
mov eax, 0x8007007a
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
test rbx, rbx
jne 0x1337c0f0e989
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 [rdi + 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 [rdi + 0xb98]
and eax, 2
mov qword [rsp + 0x48], r14
xor eax, ecx
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 r11, qword [rdi + 0xba0]
mov qword [r9 + 0x18], r11
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 + 0x3c], ax
mov rax, qword [rdi + 0xbe0]
mov qword [r9 + 0x40], rax
mov rax, qword [rdi + 0xbe8]
mov qword [r9 + 0x48], rax
mov rax, qword [rdi + 0xbf0]
mov qword [r9 + 0x50], rax
mov rax, qword [rdi + 0xbf8]
mov qword [r9 + 0x58], rax
mov rax, qword [rdi + 0xc00]
mov qword [r9 + 0x60], rax
mov rax, qword [rdi + 0xc08]
mov qword [r9 + 0x68], rax
mov eax, dword [rdi + 0xc10]
mov dword [r9 + 0x70], eax
mov eax, dword [rdi + 0xc14]
mov dword [r9 + 0x74], eax
mov rax, qword [rdi + 0xc18]
mov qword [r9 + 0x78], rax
mov rax, qword [rdi + 0xc20]
mov qword [r9 + 0x80], rax
mov rax, qword [rdi + 0xc28]
mov qword [r9 + 0x88], rax
mov rax, qword [rdi + 0xc30]
mov qword [r9 + 0x90], rax
mov rax, qword [rdi + 0xc50]
mov qword [r9 + 0x98], rax
mov rax, qword [rdi + 0xc58]
mov qword [r9 + 0xa0], rax
mov rax, qword [rdi + 0xc38]
mov qword [r9 + 0xa8], rax
mov rax, qword [rdi + 0xc48]
mov qword [r9 + 0xb0], rax
mov eax, dword [rdi + 0xc60]
mov dword [r9 + 0xb8], eax
test dl, dl
je 0x1337c0f0ec0e
mov r9, qword [0x1337c130ecf8]
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 [0x1337c130ecf8]
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 [0x1337c130ecf8]
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 [rsi], 0xc0
mov r14, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x40]
jb 0x1337c0f0ec33
lea rcx, [rdi + 0x718]
call qword [rdi + 0x780]
mov dword [rbx + 0xbc], eax
cmp dword [rsi], 0xc4
jb 0x1337c0f0ec47
mov eax, dword [rdi + 0xc64]
mov dword [rbx + 0xc0], eax
mov ecx, 0xc8
cmp dword [rsi], ecx
cmovb ecx, dword [rsi]
xor eax, eax
mov dword [rsi], 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.0x1337c0f0ec94.83886096
lea rcx, [0x1337c0de0000]
mov r10d, dword [rcx + rax*4 + 0x12f398]
add r10, rcx
jmp r10
cmp dword [r8], 4
jae 0x1337c0f0ecb4
mov dword [r8], 4
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0ecf9
mov dword [r8], 0x1c
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0ec94.83886096
test byte [rdi + 0xea], 8
jne 0x1337c0f0ed1b
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 0x1337c0f0ece2
test rbx, rbx
je case.0x1337c0f0ec94.83886096
test byte [rdi + 0xea], 0x10
je 0x1337c0f0ed0b
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 0x1337c0f0edbe
mov dword [r8], 2
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0ec94.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.1337c0f11af0
lea rcx, [rdi + 0x58]
mov r8, rbx
mov rdx, r11
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
jmp fcn.1337c0f11f10
cmp dword [r8], 0xc8
jae 0x1337c0f0ee39
mov dword [r8], 0xc8
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0f0c8
mov r9, qword [0x1337c130ecf8]
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 [0x1337c130ecf8]
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 [0x1337c130ecf8]
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 0x1337c0f0f108
mov dword [r8], 1
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0f14d
xor eax, eax
cmp dword [rdi], 4
mov ecx, eax
sete cl
add rcx, 2
cmp dword [r8], 2
jb 0x1337c0f0eda7
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0f18f
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 0x1337c0f0f1ca
mov dword [r8], 0x20
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0f24a
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 0x1337c0f0f251
inc eax
cmp dword [r8], eax
jae 0x1337c0f0f274
mov dword [r8], eax
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0f0ec94.83886096
mov dword [r8], eax
mov rcx, rbx
mov rdx, qword [rdi + 0x4f0]
mov r8d, eax
call fcn.1337c1055260
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 4
jb 0x1337c0f0ec9d
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0f0f1
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0f0f1
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0f0f1
test rbx, rbx
je case.0x1337c0f0ec94.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 0x1337c0f0e930
mov rbx, qword [rsp + 0x48]
mov eax, 0x80070057
add rsp, 0x20
pop rdi
ret