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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rsi
sub rsp, 0xa0
mov r10d, dword [rsp + 0xd0]
mov r8d, r10d
mov qword [rax - 0x10], rbx
or r8d, 1
mov rbx, qword [0x1801a7f28]
test r10b, 7
mov qword [rax - 0x18], rbp
mov qword [rax - 0x20], rdi
cmovne r8d, r10d
mov qword [rax - 0x28], r12
mov edi, edx
mov qword [rax - 0x30], r13
mov r13d, r8d
or r13d, 0x20
mov qword [rax - 0x38], r14
test r8d, 0x3f0
movaps xmmword [rax - 0x58], xmm6
mov rax, qword [rbx + 0x3ef0]
cmovne r13d, r8d
mov qword [rsp + 0x40], rbx
mov byte [rax + 0xb8], 1
mov r12, qword [rbx + 0x3ef0]
mov rbp, qword [rbx + 0x3ef8]
mov qword [rsp + 0x38], r12
bt r13d, 0xb
jae 0x1800522bf
test rbp, rbp
je 0x1800522bf
cmp qword [rbp + 0x378], r12
jne 0x1800522bf
mov sil, 1
mov qword [rbx + 0x3ef8], r12
jmp 0x1800522c2
xor sil, sil
mov byte [rsp + 0x24], 0
call fcn.180025830
xor r10d, r10d
movzx r14d, al
mov dword [rsp + 0x20], r14d
test al, al
je 0x18005230c
cmp byte [rbx + 0x4a74], r10b
je 0x18005230c
cmp dword [rbx + 0x4a94], edi
jne 0x18005230c
test byte [rbx + 0x4a78], 2
jne 0x18005230c
xor r14b, r14b
lea rax, [rbx + 0x4a74]
mov dword [rsp + 0x20], r14d
mov qword [rsp + 0x30], rax
jmp 0x180052321
lea rax, [rbx + 0x4a74]
mov qword [rsp + 0x30], rax
cmp byte [rax], r10b
je 0x180052496
bt r13d, 9
jae 0x180052496
test byte [rbx + 0x4a78], 4
jne 0x180052496
mov rcx, qword [0x1801a7f28]
mov r9, qword [rcx + 0x3ef0]
cmp byte [rcx + 0x490f], r10b
je 0x180052385
cmp byte [rcx + 0x490e], r10b
jne 0x180052385
test byte [rcx + 0x4790], 4
jne 0x180052496
mov eax, dword [rcx + 0x48d8]
cmp eax, dword [rcx + 0x478c]
jne 0x180052496
test eax, eax
je 0x180052496
jmp 0x18005242f
mov eax, dword [rcx + 0x4794]
test al, 1
je 0x180052496
cmp qword [rcx + 0x3ef8], r9
je 0x1800523a4
test al, al
jns 0x180052496
mov rdx, qword [rcx + 0x48d0]
test rdx, rdx
je 0x180052411
mov rdx, qword [rdx + 0x378]
test rdx, rdx
je 0x180052411
cmp byte [rdx + 0xb7], r10b
je 0x180052411
mov rax, qword [r9 + 0x378]
cmp rdx, rax
je 0x180052411
mov r8d, dword [rdx + 0x14]
bt r8d, 0x1b
jb 0x1800523e3
bt r8d, 0x1a
jae 0x180052411
cmp qword [rax + 0x378], rdx
je 0x180052411
nop dword [rax]
cmp rax, rdx
je 0x180052411
mov rax, qword [rax + 0x370]
test rax, rax
jne 0x1800523f0
test dword [rcx + 0x4790], 0x100
je 0x180052496
test byte [rcx + 0x4790], 4
jne 0x180052496
mov eax, dword [r9 + 0x7c]
cmp dword [rcx + 0x478c], eax
jne 0x18005242f
cmp byte [r9 + 0xb8], r10b
jne 0x180052496
mov rax, qword [0x1801a7f28]
mov r14b, 1
mov dword [rsp + 0x20], r14d
mov dword [rax + 0x3f3c], edi
mov byte [rax + 0x3f44], r10b
test edi, edi
je 0x18005245e
cmp dword [rax + 0x3f40], edi
je 0x18005245e
mov qword [rax + 0x3f48], r10
movss xmm1, dword [rbx + 0x3f48]
movss xmm2, dword [0x1801445b8]
movaps xmm0, xmm1
subss xmm0, dword [rbx + 0x18]
comiss xmm2, xmm0
jb 0x180052496
comiss xmm1, xmm2
jb 0x180052496
mov rcx, r12
mov byte [rsp + 0x24], 1
mov dword [rbx + 0x4af0], edi
call fcn.18002e370
xor r10d, r10d
test sil, sil
je 0x1800524a2
mov qword [rbx + 0x3ef8], rbp
mov qword [rsp + 0x68], r15
mov edx, 1
xorps xmm6, xmm6
test r14b, r14b
je 0x1800524dc
bt r13d, 0xc
jae 0x1800524dc
mov eax, dword [rbx + 0x3f40]
cmp eax, edi
je 0x1800524dc
test eax, eax
je 0x1800524dc
xor r14b, r14b
mov ebp, edi
bt r13d, 0x15
cmovb ebp, r10d
jmp 0x180052754
bt r13d, 0x15
mov ebp, edi
cmovb ebp, r10d
test r14b, r14b
je 0x180052754
mov r12, qword [0x1801a7f28]
mov r15d, 0xffffffff
mov edi, dword [rsp + 0x20]
add r12, 0x3766
mov rax, qword [rsp + 0x30]
mov r9d, r10d
mov dword [rsp + 0x28], r15d
mov r11d, edx
mov ebx, ebp
nop word [rax + rax]
mov rsi, rax
movzx r14d, dil
test r11d, r13d
je 0x180052582
xor r8d, r8d
mov edx, ebx
mov ecx, r9d
call fcn.18002f760
test al, al
je 0x180052545
cmp r15d, 0xffffffff
cmove r15d, r9d
cmp byte [r12], 0
je 0x18005257d
lea ecx, [r9 + 0x281]
mov edx, ebx
call fcn.1800312f0
test al, al
je 0x18005257d
cmp dword [rsp + 0x28], 0xffffffff
mov rax, rsi
mov qword [rsp + 0x30], rax
jne 0x180052582
mov dword [rsp + 0x28], r9d
movzx edi, r14b
mov qword [rsp + 0x30], rax
jmp 0x180052582
mov rax, qword [rsp + 0x30]
inc r9d
rol r11d, 1
inc r12
cmp r9d, 3
jl 0x180052520
mov dword [rsp + 0x20], edi
mov edi, dword [rsp + 0xb8]
mov dword [rsp + 0xd0], ebx
mov rbx, qword [rsp + 0x40]
bt r13d, 0x10
jae 0x1800525d6
cmp byte [rbx + 0xe20], 0
jne 0x18005272d
cmp byte [rbx + 0xe21], 0
jne 0x18005272d
cmp byte [rbx + 0xe22], 0
jne 0x18005272d
cmp r15d, 0xffffffff
je 0x1800526a5
cmp dword [rbx + 0x3f50], edi
je 0x1800526a5
bt r13d, 0x14
jb 0x18005260a
lea ecx, [r15 + 0x281]
call fcn.1800217f0
mov dword [rax + 4], edi
mov dword [rax], edi
mov word [rax + 8], 0
mov rbp, qword [rsp + 0x38]
test r13b, 0x60
je 0x180052645
mov rdx, rbp
mov ecx, edi
call fcn.180025420
mov esi, r13d
mov dword [rbx + 0x3f7c], r15d
and esi, 0x40000
jne 0x18005263b
mov rdx, rbp
mov ecx, edi
call fcn.180033740
mov rcx, rbp
call fcn.18002e370
jmp 0x18005264e
mov esi, r13d
and esi, 0x40000
test r13b, 0x10
jne 0x180052669
bt r13d, 8
jae 0x1800526aa
movsxd rax, r15d
cmp word [rbx + rax*2 + 0x3752], 2
jne 0x1800526aa
mov byte [rsp + 0x24], 1
bt r13d, 0x11
jae 0x18005267c
call fcn.180025560
jmp 0x180052686
mov rdx, rbp
mov ecx, edi
call fcn.180025420
test esi, esi
jne 0x180052694
mov rdx, rbp
mov ecx, edi
call fcn.180033740
mov rcx, rbp
mov dword [rbx + 0x3f7c], r15d
call fcn.18002e370
jmp 0x1800526aa
mov rbp, qword [rsp + 0x38]
test r13b, r13b
jns 0x1800526ea
movsxd rax, dword [rsp + 0x28]
cmp eax, 0xffffffff
je 0x1800526ea
bt r13d, 0xa
jae 0x1800526cf
movss xmm0, dword [rbx + rax*4 + 0x378c]
comiss xmm0, dword [rbx + 0x3c]
jae 0x1800526d4
mov byte [rsp + 0x24], 1
bt r13d, 0x12
jb 0x1800526e5
mov rdx, rbp
mov ecx, edi
call fcn.180033740
call fcn.180025560
cmp dword [rbx + 0x3f50], edi
jne 0x18005272d
bt r13d, 0xa
jae 0x18005272d
movsxd rcx, dword [rbx + 0x3f7c]
mov ebp, dword [rsp + 0xd0]
movss xmm0, dword [rbx + rcx*4 + 0x3778]
comiss xmm0, xmm6
jbe 0x180052734
mov r8d, 1
mov edx, ebp
call fcn.18002f760
test al, al
je 0x180052734
mov byte [rsp + 0x24], 1
jmp 0x18005273b
mov ebp, dword [rsp + 0xd0]
cmp byte [rsp + 0x24], 0
je 0x180052742
mov byte [rbx + 0x490e], 1
mov r12, qword [rsp + 0x38]
mov edx, 1
mov r14d, dword [rsp + 0x20]
xor r10d, r10d
cmp dword [rbx + 0x48d8], edi
jne 0x180052790
cmp byte [rbx + 0x490e], 0
jne 0x180052790
cmp byte [rbx + 0x490f], 0
je 0x180052790
mov eax, dword [rbx + 0x3f50]
test eax, eax
je 0x180052783
cmp eax, edi
je 0x180052783
cmp eax, dword [r12 + 0x7c]
jne 0x180052790
bt r13d, 0x13
movzx r14d, r14b
cmovae r14d, edx
cmp dword [rbx + 0x48e4], edi
jne 0x180052880
cmp dword [rbx + 0x48e8], edi
sete cl
je 0x18005284a
bt r13d, 0xa
jae 0x18005284a
mov rax, qword [0x1801a7f28]
movss xmm3, dword [rbx + 0x40]
movss xmm2, dword [rbx + 0x3c]
movss xmm0, dword [rax + 0x2eec]
maxss xmm0, dword [rax + 0x2efc]
maxss xmm0, dword [rax + 0x350c]
ucomiss xmm0, xmm6
movaps xmm1, xmm0
subss xmm1, dword [rbx + 0x18]
jp 0x1800527f2
jne 0x1800527f2
mov ecx, edx
jmp 0x180052845
comiss xmm1, xmm0
jb 0x1800527fb
xor ecx, ecx
jmp 0x180052845
comiss xmm6, xmm3
jb 0x180052813
comiss xmm2, xmm1
jbe 0x18005280e
comiss xmm0, xmm2
jb 0x18005280e
mov ecx, edx
jmp 0x180052845
mov ecx, r10d
jmp 0x180052845
comiss xmm2, xmm1
jbe 0x18005281f
mov eax, 0xffffffff
jmp 0x18005282b
subss xmm1, xmm2
divss xmm1, xmm3
cvttss2si eax, xmm1
comiss xmm2, xmm0
jbe 0x180052837
mov ecx, 0xffffffff
jmp 0x180052843
subss xmm0, xmm2
divss xmm0, xmm3
cvttss2si ecx, xmm0
sub ecx, eax
test ecx, ecx
setg cl
cmp dword [rbx + 0x48e0], edi
je 0x180052856
test cl, cl
je 0x180052880
mov rdx, r12
mov ecx, edi
mov r15b, 1
call fcn.180025420
mov dword [rbx + 0x3f78], 5
bt r13d, 0x12
jb 0x180052885
mov rdx, r12
mov ecx, edi
call fcn.180033740
jmp 0x180052885
mov r15d, dword [rsp + 0x24]
movaps xmm6, xmmword [rsp + 0x50]
xor sil, sil
mov r12, qword [rsp + 0x80]
cmp dword [rbx + 0x3f50], edi
jne 0x1800529d9
mov eax, dword [rbx + 0x3f78]
cmp eax, 1
jne 0x1800529bb
cmp byte [rbx + 0x3f5c], sil
je 0x1800528ea
movss xmm1, dword [rbx + 0xe08]
movss xmm0, dword [rbx + 0xe0c]
mov rax, qword [rsp + 0xb0]
subss xmm1, dword [rax]
subss xmm0, dword [rax + 4]
movss dword [rbx + 0x3f64], xmm1
movss dword [rbx + 0x3f68], xmm0
movsxd r11, dword [rbx + 0x3f7c]
mov rax, qword [0x1801a7f28]
cmp byte [r11 + rax + 0xe10], sil
je 0x18005291c
lea ecx, [r11 + 0x281]
mov edx, ebp
call fcn.1800312f0
test al, al
je 0x18005291c
mov sil, 1
jmp 0x1800529ab
test r14b, r14b
je 0x180052927
test r13b, 0x20
jne 0x180052931
mov eax, r13d
shr eax, 6
test al, 1
je 0x1800529a6
mov rax, qword [rsp + 0x30]
cmp byte [rax], sil
jne 0x1800529a6
bt r13d, 8
jae 0x18005295d
cmp byte [r11 + rbx + 0x3766], sil
je 0x18005295d
cmp word [rbx + r11*2 + 0x375c], 2
jne 0x18005295d
mov r10b, 1
jmp 0x180052960
xor r10b, r10b
bt r13d, 0xa
jae 0x18005297c
movss xmm0, dword [rbx + r11*4 + 0x378c]
comiss xmm0, dword [rbx + 0x3c]
jb 0x18005297c
mov r9b, 1
jmp 0x18005297f
xor r9b, r9b
lea ecx, [r11 + 0x281]
mov edx, ebp
call fcn.1800312f0
test r10b, r10b
jne 0x1800529a6
test r9b, r9b
jne 0x1800529a6
test al, al
movzx r15d, r15b
mov eax, 1
cmovne r15d, eax
call fcn.180025560
bt r13d, 0x12
jb 0x1800529cd
mov byte [rbx + 0x490e], 1
jmp 0x1800529cd
cmp eax, 5
jne 0x1800529cd
cmp dword [rbx + 0x48e4], edi
je 0x1800529cd
call fcn.180025560
test r15b, r15b
je 0x1800529d9
mov byte [rbx + 0x3f5f], 1
mov rax, qword [rsp + 0xc0]
mov r13, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
test rax, rax
je 0x180052a06
mov byte [rax], r14b
mov rax, qword [rsp + 0xc8]
mov r14, qword [rsp + 0x70]
test rax, rax
je 0x180052a1b
mov byte [rax], sil
movzx eax, r15b
mov r15, qword [rsp + 0x68]
add rsp, 0xa0
pop rsi
ret