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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rdi, r9
mov rsi, rcx
mov dword [rcx], 0
movabs r15, 0xffffffff00000000
mov qword [rcx + 0x18], r15
mov dword [rcx + 0x20], 0
xorps xmm0, xmm0
movups xmmword [rcx + 0x28], xmm0
mov qword [rcx + 0x58], r15
mov dword [rcx + 0x60], 0
movups xmmword [rcx + 0x68], xmm0
mov dword [rcx + 0x88], edx
mov qword [rcx + 0x90], r8
mov r13, qword [r8 + 0x20]
mov qword [rcx + 0x98], r13
mov qword [rcx + 0xa0], r9
mov qword [rcx + 0xa8], 0
mov rax, qword [r13 + 0x108]
lea r12, [0x1405d7500]
test rax, rax
je 0x140488b64
mov rbp, rax
mov rax, qword [rbp]
test rax, rax
cmove rax, r12
cmp dword [rax + 0x18], 4
jb 0x1404887a0
mov r12, qword [rax + 0x10]
mov qword [rsi + 0xb0], r12
mov r13, qword [rsi + 0x98]
mov rax, qword [r13 + 0x108]
test rax, rax
je 0x140488be5
mov r12, rax
mov qword [rsi + 0xb8], r12
mov rbx, qword [rsi + 0xb0]
movzx edx, byte [rbx]
mov r8d, edx
shl r8d, 8
movzx ecx, byte [rbx + 1]
or r8d, ecx
lea rax, [0x1405d7500]
cmp r8d, 1
jne 0x140488820
shl edx, 0x18
shl ecx, 0x10
or ecx, edx
movzx edx, byte [rbx + 2]
shl edx, 8
movzx r8d, byte [rbx + 3]
or r8d, ecx
or r8d, edx
cmp r8d, 0x10003
jb 0x140488820
mov eax, dword [rbx + 0xe]
bswap eax
test eax, eax
je 0x140488c7e
add rax, rbx
mov qword [rsi + 0xc0], rax
mov ebp, dword [rsi + 0x88]
cmp ebp, 1
jne 0x140488883
mov rcx, qword [rsi + 0x90]
cmp dword [rcx + 0x78], 0
je 0x140488883
mov ecx, dword [rax + 2]
bswap ecx
test ecx, ecx
je 0x140488c72
add rax, rcx
movzx eax, word [rax + 2]
rol ax, 8
movzx r14d, ax
lea rcx, [r14*4]
call fcn.14056f598
test rax, rax
je 0x140488885
test r14d, r14d
je 0x140488885
cmp r14d, 8
jae 0x140488b1e
xor ecx, ecx
jmp 0x140488b50
xor eax, eax
mov qword [rsi + 0xc8], rax
mov qword [rsi + 0xd0], 0
mov dword [rsi + 0xd8], 0
mov ecx, dword [rdi + 0x58]
test ecx, ecx
je 0x140488a4b
mov rax, qword [rdi + 0x68]
cmp ecx, 4
jae 0x1404888bc
xor edx, edx
mov r8, rax
jmp 0x140488909
mov r9d, ecx
and r9d, 0xfffffffc
xor edx, edx
mov r8, rax
nop dword [rax + rax]
mov r10d, dword [r8]
mov r11d, dword [r8 + 0x14]
shr r10d, 4
bts edx, r10d
shr r11d, 4
bts edx, r11d
mov r10d, dword [r8 + 0x28]
shr r10d, 4
bts edx, r10d
mov r10d, dword [r8 + 0x3c]
shr r10d, 4
bts edx, r10d
add r8, 0x50
add r9d, 0xfffffffc
jne 0x1404888d0
test cl, 3
je 0x140488935
mov r9d, ecx
and r9d, 3
shl r9, 2
lea r9, [r9 + r9*4]
xor r10d, r10d
mov r11d, dword [r8 + r10]
shr r11d, 4
bts edx, r11d
add r10, 0x14
cmp r9d, r10d
jne 0x140488920
mov dword [rsi + 0xd0], edx
cmp ecx, 4
jae 0x140488947
xor edx, edx
mov r8, rax
jmp 0x14048898d
mov r9d, ecx
and r9d, 0xfffffffc
xor edx, edx
mov r8, rax
nop word cs:[rax + rax]
movzx r10d, byte [r8]
movzx r11d, byte [r8 + 0x14]
bts edx, r10d
bts edx, r11d
movzx r10d, byte [r8 + 0x28]
bts edx, r10d
movzx r10d, byte [r8 + 0x3c]
bts edx, r10d
add r8, 0x50
add r9d, 0xfffffffc
jne 0x140488960
test cl, 3
je 0x1404889c2
mov r9d, ecx
and r9d, 3
shl r9, 2
lea r9, [r9 + r9*4]
xor r10d, r10d
nop word cs:[rax + rax]
movzx r11d, byte [r8 + r10]
bts edx, r11d
add r10, 0x14
cmp r9d, r10d
jne 0x1404889b0
mov dword [rsi + 0xd4], edx
cmp ecx, 4
jae 0x1404889d1
xor edx, edx
jmp 0x140488a19
mov r8d, ecx
and r8d, 0xfffffffc
xor edx, edx
nop word [rax + rax]
mov r9d, dword [rax]
mov r10d, dword [rax + 0x14]
shr r9d, 9
bts edx, r9d
shr r10d, 9
bts edx, r10d
mov r9d, dword [rax + 0x28]
shr r9d, 9
bts edx, r9d
mov r9d, dword [rax + 0x3c]
shr r9d, 9
bts edx, r9d
add rax, 0x50
add r8d, 0xfffffffc
jne 0x1404889e0
test cl, 3
je 0x140488a45
and ecx, 3
shl rcx, 2
lea rcx, [rcx + rcx*4]
xor r8d, r8d
nop dword [rax]
mov r9d, dword [rax + r8]
shr r9d, 9
bts edx, r9d
add r8, 0x14
cmp ecx, r8d
jne 0x140488a30
mov dword [rsi + 0xd8], edx
lea rcx, [rsi + 0x28]
lea rax, [rsi + 0x68]
mov edx, dword [rdi + 0x30]
mov dword [rsi + 0xdc], edx
movaps xmm0, xmmword [0x140619350]
movups xmmword [rsi + 0xe0], xmm0
movzx edx, word [rbx]
rol dx, 8
cmp dx, 1
jne 0x140488a87
movzx edx, word [rbx + 4]
rol dx, 8
test dx, dx
setne dl
jmp 0x140488a89
xor edx, edx
cmp ebp, 1
mov byte [rsi + 0xf0], dl
mov dword [rsi + 0xf1], 0x101
movaps xmm0, xmmword [0x140619360]
movups xmmword [rsi + 0xf8], xmm0
mov qword [rsi + 0x10], rsi
mov rdx, qword [rsi + 0xa0]
mov r8d, dword [rdx + 0x58]
mov dword [rsi + 0x44], r8d
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], 0
movabs rcx, 0x100000000
mov qword [rsi + 0x18], rcx
sete byte [rsi + 0x20]
mov byte [rsi + 0x21], 1
mov word [rsi + 0x22], 0
mov qword [rsi + 0x50], rsi
mov ecx, dword [rdx + 0x58]
mov dword [rsi + 0x84], ecx
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov qword [rsi + 0x58], r15
mov dword [rsi + 0x60], 0x101
mov rax, rsi
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov ecx, r14d
and ecx, 0xfffffff8
xor edx, edx
movaps xmm0, xmmword [0x14059bfb0]
nop dword [rax]
movups xmmword [rax + rdx*4], xmm0
movups xmmword [rax + rdx*4 + 0x10], xmm0
add rdx, 8
cmp rcx, rdx
jne 0x140488b30
cmp rcx, r14
je 0x140488885
nop dword [rax + rax]
mov dword [rax + rcx*4], 0x40000000
inc rcx
cmp r14, rcx
jne 0x140488b50
jmp 0x140488885
lea rbp, [0x1405d7500]
mov r14, qword [r13 + 0x48]
test r14, r14
je 0x14048878b
mov ecx, 1
mov edx, 0x208
call fcn.14056f5a0
test rax, rax
je 0x140488bd2
mov rbx, rax
mov rcx, rax
mov rdx, r14
call fcn.140488f60
xor eax, eax
lock cmpxchg qword [r13 + 0x108], rbx
je 0x140488c62
cmp rbx, rbp
je 0x140488bc0
mov rcx, qword [rbx]
call fcn.14034c9e0
mov rcx, rbx
call fcn.140568364
mov rax, qword [r13 + 0x108]
test rax, rax
jne 0x140488788
jmp 0x140488b6b
xor eax, eax
lock cmpxchg qword [r13 + 0x108], rbp
je 0x14048878b
jmp 0x140488bc0
lea r12, [0x1405d7500]
mov r14, qword [r13 + 0x48]
test r14, r14
je 0x1404887c1
mov ecx, 1
mov edx, 0x208
call fcn.14056f5a0
test rax, rax
je 0x140488c4f
mov rbx, rax
mov rcx, rax
mov rdx, r14
call fcn.140488f60
xor eax, eax
lock cmpxchg qword [r13 + 0x108], rbx
je 0x140488c6a
cmp rbx, r12
je 0x140488c3d
mov rcx, qword [rbx]
call fcn.14034c9e0
mov rcx, rbx
call fcn.140568364
mov rax, qword [r13 + 0x108]
test rax, rax
jne 0x1404887be
jmp 0x140488bec
xor eax, eax
lock cmpxchg qword [r13 + 0x108], r12
je 0x1404887c1
jmp 0x140488c3d
mov rbp, rbx
jmp 0x14048878b
mov r12, rbx
jmp 0x1404887c1
lea rax, [0x1405d7500]
jmp 0x14048884f
lea rax, [0x1405d7500]
jmp 0x140488820