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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x180
xor ebx, ebx
mov rdi, rcx
cmp rdx, rbx
je 0x10003d6af
mov qword [rcx + 0x18], rdx
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 8]
mov rcx, qword [rdi + 0x18]
lea rdx, [rdi + 0x10]
mov rax, qword [rcx]
call qword [rax + 0x30]
cmp eax, ebx
jl 0x1000126a0
mov rcx, qword [rdi + 0x18]
lea r8, [rdi + 0x20]
lea rdx, [0x10007d2e0]
mov rax, qword [rcx]
call qword [rax + 0x2b0]
cmp eax, ebx
jl 0x1000126a0
mov rcx, qword [rdi + 0x18]
lea rdx, [rsp + 0x50]
mov rax, qword [rcx]
call qword [rax + 0x38]
mov ecx, dword [rsp + 0x90]
mov eax, dword [rsp + 0x54]
mov r11d, dword [rsp + 0x50]
mov dword [rdi + 0x74], eax
mov eax, ecx
and eax, 0x4000000
mov dword [rdi + 0x90], 1
mov dword [rdi + 0x70], r11d
bts eax, 0x1b
mov esi, 0x10
lea rdx, [rsp + 0x30]
shr eax, 0x1a
mov dword [rdi + 0x7c], eax
mov eax, ecx
and ecx, 0x20000
and eax, 0x400
bts eax, 0xb
shr eax, 0xa
neg ecx
mov rcx, qword [rdi + 0x18]
mov dword [rdi + 0x80], eax
sbb eax, eax
neg eax
inc eax
mov dword [rdi + 0x84], eax
mov eax, dword [rsp + 0xbc]
mov dword [rdi + 0x88], eax
mov eax, dword [rsp + 0x84]
and eax, esi
mov dword [rdi + 0x8c], eax
mov rax, qword [rcx]
call qword [rax + 0x48]
mov r11b, byte [rsp + 0x40]
lea rdx, [0x10007b2b0]
and r11b, 0xa0
mov ecx, 0xd0
neg r11b
sbb eax, eax
and eax, 2
mov dword [rdi + 0x78], eax
call fcn.10000291c
mov r11, rax
cmp rax, rbx
je 0x10003d6b9
and al, 0xf
sub sil, al
movzx eax, sil
add r11, rax
mov byte [r11 - 1], sil
jmp 0x100012567
mov qword [rdi + 0xa0], r11
cmp r11, rbx
je 0x10003d6c1
xorps xmm0, xmm0
mov ecx, 0x3f800000
lea rax, [r11 + 0x40]
mov qword [rdi + 0xb0], rax
movss dword [rsp + 0x20], xmm0
movss dword [rsp + 0x24], xmm0
lea rax, [r11 + 0x80]
mov qword [rdi + 0xc0], rax
mov dword [r11 + 0x3c], ecx
mov dword [r11 + 0x28], ecx
movss xmm0, dword [0x10007d31c]
movss dword [rsp + 0x28], xmm0
mov dword [r11 + 0x14], ecx
mov dword [r11], ecx
mov dword [r11 + 0x38], ebx
mov dword [r11 + 0x34], ebx
mov dword [r11 + 0x30], ebx
mov dword [r11 + 0x2c], ebx
mov dword [r11 + 0x24], ebx
mov dword [r11 + 0x20], ebx
mov dword [r11 + 0x1c], ebx
mov dword [r11 + 0x18], ebx
mov dword [r11 + 0x10], ebx
mov dword [r11 + 0xc], ebx
mov dword [r11 + 8], ebx
mov dword [r11 + 4], ebx
mov rax, qword [rdi + 0xb0]
mov dword [rax + 0x3c], ecx
mov dword [rax + 0x28], ecx
mov dword [rax + 0x14], ecx
mov dword [rax], ecx
mov dword [rax + 0x38], ebx
mov dword [rax + 0x34], ebx
mov dword [rax + 0x30], ebx
mov dword [rax + 0x2c], ebx
mov dword [rax + 0x24], ebx
mov dword [rax + 0x20], ebx
mov dword [rax + 0x1c], ebx
mov dword [rax + 0x18], ebx
mov dword [rax + 0x10], ebx
mov dword [rax + 0xc], ebx
mov dword [rax + 8], ebx
mov dword [rax + 4], ebx
mov rax, qword [rdi + 0xc0]
mov dword [rax + 0x3c], ecx
mov dword [rax + 0x28], ecx
mov dword [rax + 0x14], ecx
mov dword [rax], ecx
mov dword [rax + 0x38], ebx
mov dword [rax + 0x34], ebx
mov dword [rax + 0x30], ebx
mov dword [rax + 0x2c], ebx
mov dword [rax + 0x24], ebx
mov dword [rax + 0x20], ebx
mov dword [rax + 0x1c], ebx
mov dword [rax + 0x18], ebx
mov dword [rax + 0x10], ebx
mov dword [rax + 0xc], ebx
mov dword [rax + 8], ebx
mov dword [rax + 4], ebx
mov rdx, qword [rdi]
lea rax, [rsp + 0x20]
mov ecx, dword [rax]
mov dword [rdi + 0x94], 1
mov dword [rdi + 0x98], 1
mov dword [rdi + 0xc8], ecx
mov ecx, dword [rax + 4]
mov dword [rdi + 0xcc], ecx
mov ecx, dword [rax + 8]
mov dword [rdi + 0xd0], ecx
mov rcx, rdi
call qword [rdx + 0x68]
cmp eax, ebx
cmovl ebx, eax
mov eax, ebx
lea r11, [rsp + 0x180]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
mov eax, 0x8876086c
jmp 0x1000126a0
mov r11, rbx
jmp 0x100012567
mov eax, 0x8007000e
jmp 0x1000126a0