Function at 0x1337c0ebb9c0
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 0x1337c0ebb6bc
mov dword [r8], 0xc8
mov eax, 0x8007007a
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
cmp eax, 0xbc
jae 0x1337c0ebb6d7
mov dword [r8], 0xbc
mov eax, 0x8007007a
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret
test rbx, rbx
jne 0x1337c0ebb6e9
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 0x1337c0ebb96e
mov r9, qword [0x1337c1213b28]
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 [0x1337c1213b28]
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 [0x1337c1213b28]
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 0x1337c0ebb993
lea rcx, [rsi + 0x718]
call qword [rsi + 0x780]
mov dword [rbx + 0xbc], eax
cmp dword [rdi], 0xc4
jb 0x1337c0ebb9a7
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.0x1337c0ebb9f4.83886096
lea rcx, [0x1337c0de0000]
mov r10d, dword [rcx + rax*4 + 0xdc0f8]
add r10, rcx
jmp r10
cmp dword [r8], 4
jae 0x1337c0ebba14
mov dword [r8], 4
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebba59
mov dword [r8], 0x1c
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0ebb9f4.83886096
test byte [rdi + 0xea], 8
jne 0x1337c0ebba7b
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 0x1337c0ebba42
test rbx, rbx
je case.0x1337c0ebb9f4.83886096
test byte [rdi + 0xea], 0x10
je 0x1337c0ebba6b
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 0x1337c0ebbb1e
mov dword [r8], 2
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0ebb9f4.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.1337c0ebe7e0
lea rcx, [rdi + 0x58]
mov r8, rbx
mov rdx, r11
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
jmp fcn.1337c0ebebb0
cmp dword [r8], 0xc8
jae 0x1337c0ebbb99
mov dword [r8], 0xc8
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebbe28
mov r9, qword [0x1337c1213b28]
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 [0x1337c1213b28]
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 [0x1337c1213b28]
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 0x1337c0ebbe68
mov dword [r8], 1
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebbead
xor eax, eax
cmp dword [rdi], 4
mov ecx, eax
sete cl
add rcx, 2
cmp dword [r8], 2
jb 0x1337c0ebbb07
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebbeef
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 0x1337c0ebbf2a
mov dword [r8], 0x20
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebbfaa
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 0x1337c0ebbfb1
inc eax
cmp dword [r8], eax
jae 0x1337c0ebbfd4
mov dword [r8], eax
mov eax, 0x8007007a
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
test rbx, rbx
je case.0x1337c0ebb9f4.83886096
mov dword [r8], eax
mov rcx, rbx
mov rdx, qword [rdi + 0x4f0]
mov r8d, eax
call fcn.1337c1000630
xor eax, eax
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
cmp dword [r8], 4
jb 0x1337c0ebb9fd
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebbe51
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebbe51
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebbe51
test rbx, rbx
je case.0x1337c0ebb9f4.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 0x1337c0ebb690
mov rbx, qword [rsp + 0x48]
mov eax, 0x80070057
add rsp, 0x20
pop rdi
ret