Function at 0x140045e90
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x58
movaps xmmword [rsp + 0x40], xmm7
movaps xmmword [rsp + 0x30], xmm6
mov rax, qword [0x140279c48]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov rbx, qword [0x1402808a8]
cmp byte [rbx + 0xcb], 0
je 0x140045ecf
test byte [rbx + 0xc], 2
jne 0x140045ecf
mov byte [rbx + 0xcb], 0
cmp dword [0x14027acd4], 0xa
jl 0x140045ef2
mov eax, dword [0x14027acd0]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x140045ef2
nop dword [rax]
jmp 0x140045ef0
cmp byte [rbx + 0x3031], 0
jne 0x140045f10
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x140045f09
call fcn.14005b520
mov byte [rbx + 0x3031], 1
movss xmm0, dword [rbx + 0x3034]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jbe 0x140045fdd
subss xmm0, dword [rbx + 0x18]
movss dword [rbx + 0x3034], xmm0
ucomiss xmm1, xmm0
jb 0x140045fdd
mov eax, dword [0x14027acd0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
sete cl
cmp dword [0x14027acd4], 0xa
setl al
or al, cl
nop dword [rax + rax]
test al, al
je 0x140045f60
mov rdi, qword [rbx + 0x20]
test rdi, rdi
je 0x140045fcc
mov rax, qword [0x1402808a8]
mov dword [rax + 0x3034], 0
mov qword [rsp + 0x20], 0
lea rcx, [rsp + 0x20]
call fcn.14005bce0
mov rsi, rax
lea rdx, [0x1401d75a4]
mov rcx, rdi
call fcn.14003d1c0
test rax, rax
je 0x140045fd3
mov rdi, rax
mov r8, qword [rsp + 0x20]
mov edx, 1
mov rcx, rsi
mov r9, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x140045fd3
mov byte [rbx + 0x3a4], 1
mov dword [rbx + 0x3034], 0
movss xmm0, dword [rbx + 0x18]
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
addsd xmm1, qword [rbx + 0x1a10]
movsd qword [rbx + 0x1a10], xmm1
mov byte [rbx + 0x1a24], 1
add dword [rbx + 0x1a18], 1
mov dword [rbx + 0x2ff8], 0
mov dword [rbx + 0x1a88], 0
mov eax, dword [rbx + 0x3014]
test eax, eax
jns 0x1400460f6
mov ecx, eax
neg ecx
shr ecx, 1
xor edx, edx
mov edi, eax
sub edi, ecx
cmovs edi, edx
cmp eax, edi
jge 0x1400460f6
mov ecx, edi
shl rcx, 2
mov rax, qword [0x1402808a8]
test rax, rax
je 0x140046059
add dword [rax + 0x3bc], 1
mov rdx, qword [0x1402808b8]
call qword [0x140275378]
mov rsi, rax
mov rdx, qword [rbx + 0x3018]
test rdx, rdx
je 0x1400460e4
movsxd r8, dword [rbx + 0x3010]
shl r8, 2
mov rcx, rsi
call fcn.140115f70
mov rcx, qword [rbx + 0x3018]
test rcx, rcx
je 0x1400460d7
mov eax, dword [0x14027a788]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp dword [0x14027a78c], 0xa
setl al
or al, dl
nop word cs:[rax + rax]
nop dword [rax]
test al, al
je 0x1400460c0
mov rax, qword [0x1402808a8]
test rax, rax
je 0x1400460d7
add dword [rax + 0x3bc], 0xffffffff
mov rdx, qword [0x1402808b8]
call qword [0x140275380]
mov qword [rbx + 0x3018], rsi
mov dword [rbx + 0x3014], edi
movss xmm0, dword [rbx + 0x18]
mov dword [rbx + 0x3010], 0
movsxd rax, dword [rbx + 0x3284]
movaps xmm1, xmm0
subss xmm1, dword [rbx + rax*4 + 0x30a4]
addss xmm1, dword [rbx + 0x3288]
movss dword [rbx + 0x3288], xmm1
movss dword [rbx + rax*4 + 0x30a4], xmm0
mov eax, dword [rbx + 0x3284]
mov ecx, eax
add ecx, 1
movsxd rcx, ecx
imul rcx, rcx, 0xffffffff88888889
shr rcx, 0x20
add ecx, eax
add ecx, 1
mov edx, ecx
shr edx, 0x1f
sar ecx, 6
add ecx, edx
imul ecx, ecx, 0x78
neg ecx
add eax, ecx
add eax, 1
mov dword [rbx + 0x3284], eax
movss xmm0, dword [rbx + 0x3288]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jbe 0x14004618a
divss xmm0, dword [0x1401cb174]
movss xmm1, dword [0x140117160]
divss xmm1, xmm0
jmp 0x140046192
movss xmm1, dword [0x1401186b0]
movss dword [rbx + 0x3a8], xmm1
mov rax, qword [rbx + 0xa8]
mov byte [rax], 1
mov rax, qword [0x1402808a8]
mov rcx, qword [rax + 0xb8]
test rcx, rcx
jne 0x1400461c5
mov rcx, qword [rax + 0xa8]
mov rcx, qword [rcx + 0x48]
mov rcx, qword [rcx]
mov qword [rax + 0x1928], rcx
movss xmm1, dword [rax + 0xb0]
mulss xmm1, dword [rcx + 0x14]
mulss xmm1, dword [rcx + 0x58]
movss xmm6, dword [0x140117160]
movaps xmm0, xmm6
maxss xmm0, xmm1
movss dword [rax + 0x1934], xmm0
mov rdx, qword [rax + 0x1a90]
test rdx, rdx
je 0x14004621f
mulss xmm0, dword [rdx + 0x2c8]
mov rdx, qword [rdx + 0x3b8]
test rdx, rdx
je 0x140046222
mulss xmm0, dword [rdx + 0x2c8]
jmp 0x140046222
xorps xmm0, xmm0
movss dword [rax + 0x1930], xmm0
mov rdx, qword [rcx + 0x40]
mov rdi, qword [rdx + 0x38]
mov qword [rax + 0x1938], rdi
add rdx, 0x70
mov qword [rax + 0x1a08], rdx
mov qword [rax + 0x1940], rcx
movss dword [rax + 0x1948], xmm0
mov rax, qword [rbx + 0x10]
lea rcx, [rbx + 0x1938]
mov qword [rbx + 0x1954], 0
mov qword [rbx + 0x195c], rax
movss xmm0, dword [rbx + 0x161c]
movss dword [rbx + 0x194c], xmm0
movss xmm1, dword [rbx + 0x1620]
call fcn.14005ed10
movzx eax, byte [rbx + 0x1618]
mov dword [rbx + 0x1964], eax
cmp byte [rbx + 0x1619], 0
je 0x1400462bd
mov rcx, qword [rbx + 0x1928]
mov rcx, qword [rcx + 0x40]
test byte [rcx + 4], 4
jne 0x1400462bd
or eax, 2
mov dword [rbx + 0x1964], eax
cmp byte [rbx + 0x161a], 0
je 0x1400462cf
or eax, 4
mov dword [rbx + 0x1964], eax
test byte [rbx + 0xc], 8
je 0x1400462de
or eax, 8
mov dword [rbx + 0x1964], eax
cmp dword [0x14027accc], 0xa
jl 0x1400462f8
mov eax, dword [0x14027acc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140046343
lea rsi, [rbx + 0x1df0]
mov rcx, rsi
call fcn.14005ee80
mov rax, qword [rbx + 0xa8]
mov rdx, qword [rax + 8]
mov rcx, rsi
call fcn.14005fef0
mov rcx, rsi
call fcn.14005fce0
lea rsi, [rbx + 0x1ed0]
cmp dword [0x14027accc], 0xa
jl 0x14004636f
mov eax, dword [0x14027acc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
je 0x14004636f
lea rsi, [rbx + 0x1df0]
mov rcx, rsi
call fcn.14005ee80
mov rax, qword [rbx + 0xa8]
mov rdx, qword [rax + 8]
mov rcx, rsi
call fcn.14005fef0
mov rcx, rsi
call fcn.14005fce0
jmp 0x1400462f8
mov rcx, rsi
call fcn.14005ee80
mov rax, qword [rbx + 0xa8]
mov rdx, qword [rax + 8]
mov rcx, rsi
call fcn.14005fef0
mov rcx, rsi
call fcn.14005fce0
mov byte [rbx + 0x1d90], 0
xorps xmm0, xmm0
movups xmmword [rbx + 0x1d98], xmm0
mov dword [rbx + 0x1da8], 0
lea rax, [rbx + 0x1dac]
cmp dword [0x14027acf4], 0xa
jl 0x1400463ed
mov ecx, dword [0x14027acf0]
lea edx, [rcx - 1]
imul edx, ecx
and edx, 1
je 0x1400463ed
xorps xmm0, xmm0
nop word cs:[rax + rax]
nop dword [rax + rax]
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
jmp 0x1400463e0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
cmp byte [rbx + 0x1fb4], 0
je 0x140046433
mov eax, dword [rbx + 0x1fd4]
cmp eax, dword [rbx + 0x1ae0]
jne 0x140046433
mov rcx, qword [0x1402808a8]
cmp dword [rcx + 0x1ae0], eax
jne 0x140046424
mov dword [rcx + 0x1ae4], eax
cmp dword [rcx + 0x1b20], eax
jne 0x140046433
mov byte [rcx + 0x1b24], 1
cmp dword [rbx + 0x1ad0], 0
je 0x14004645e
mov eax, dword [rbx + 0x1acc]
test eax, eax
je 0x1400464d7
cmp dword [rbx + 0x1ae0], eax
jne 0x140046473
mov dword [rbx + 0x1adc], 0
jmp 0x140046473
mov qword [rbx + 0x1ad8], 0
mov eax, dword [rbx + 0x1acc]
test eax, eax
je 0x1400464d7
mov ecx, dword [0x14027acc8]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp dword [0x14027accc], 0xa
setl cl
or cl, dl
nop word cs:[rax + rax]
nop dword [rax + rax]
test cl, cl
je 0x1400464a0
movss xmm0, dword [rbx + 0x18]
movss xmm1, dword [rbx + 0x1ad8]
addss xmm1, xmm0
movss dword [rbx + 0x1ad8], xmm1
cmp dword [rbx + 0x1ae0], eax
je 0x1400464d9
addss xmm0, dword [rbx + 0x1adc]
movss dword [rbx + 0x1adc], xmm0
jmp 0x1400464d9
xor eax, eax
mov dword [rbx + 0x1ad0], eax
mov dword [rbx + 0x1acc], 0
mov word [rbx + 0x1ad4], 0
mov ecx, dword [rbx + 0x1ae0]
mov eax, dword [rbx + 0x1ae4]
cmp eax, ecx
je 0x14004657f
test ecx, ecx
je 0x1400465d1
mov eax, ecx
cmp dword [rbx + 0x1b20], ecx
jne 0x14004657f
mov rax, qword [0x1402808a8]
cmp dword [rax + 0x1ae0], 0
setne byte [rax + 0x1aec]
je 0x14004653e
mov dword [rax + 0x1ae8], 0
mov word [rax + 0x1aef], 0
mov dword [rax + 0x1ae0], 0
mov word [rax + 0x1aed], 0
mov qword [rax + 0x1b10], 0
mov byte [rax + 0x1af1], 0
mov qword [rax + 0x1af4], 0
mov qword [rax + 0x1b00], 0
mov eax, dword [rbx + 0x1ae0]
test eax, eax
je 0x140046598
movss xmm0, dword [rbx + 0x1ae8]
addss xmm0, dword [rbx + 0x18]
movss dword [rbx + 0x1ae8], xmm0
mov ecx, dword [0x14027acc8]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp dword [0x14027accc], 0xa
setl cl
or cl, dl
movss xmm7, dword [rbx + 0x18]
movss xmm0, dword [rbx + 0x1b34]
mov rdx, qword [rbx + 0x1b10]
cmp cl, 1
jne 0x1400465f6
jmp 0x1400465d9
mov eax, ecx
test eax, eax
jne 0x140046583
jmp 0x140046598
addss xmm0, xmm7
movss dword [rbx + 0x1b34], xmm0
mov dword [rbx + 0x1b20], eax
mov qword [rbx + 0x1b28], rdx
test cl, cl
jne 0x140046611
addss xmm0, xmm7
movss dword [rbx + 0x1b34], xmm0
mov dword [rbx + 0x1b20], eax
mov qword [rbx + 0x1b28], rdx
jmp 0x1400465d9
mov cl, byte [rbx + 0x1af0]
mov byte [rbx + 0x1b25], cl
mov dword [rbx + 0x1ae4], 0
mov byte [rbx + 0x1af1], 0
mov byte [rbx + 0x1b24], 0
mov byte [rbx + 0x1aec], 0
mov ecx, dword [rbx + 0x2fb8]
test ecx, ecx
je 0x140046654
cmp eax, ecx
je 0x140046654
mov dword [rbx + 0x2fb8], 0
test eax, eax
jne 0x14004666e
mov qword [rbx + 0x1af4], 0
mov qword [rbx + 0x1b00], 0
mov eax, dword [rbx + 0x2024]
mov dword [rbx + 0x2028], eax
mov dword [rbx + 0x2024], 0
mov dword [rbx + 0x2020], 0x7f7fffff
mov word [rbx + 0x1fb5], 0
mov dword [rbx + 0x2030], 0
mov rcx, qword [0x1402808a8]
movzx eax, byte [rcx + 0x148]
mov edx, eax
or edx, 2
cmp byte [rcx + 0x149], 0
cmove edx, eax
mov eax, edx
or eax, 4
cmp byte [rcx + 0x14a], 0
cmove eax, edx
cmp byte [rcx + 0x14b], 0
je 0x140046707
mov ecx, dword [0x14027acc0]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp dword [0x14027acc4], 0xa
setl cl
or cl, dl
nop word cs:[rax + rax]
nop
test cl, cl
je 0x140046700
or eax, 8
mov dword [rbx + 0x3c8], eax
lea rcx, [rbx + 0xca8]
lea rdx, [rbx + 0x4a8]
mov r8d, 0x800
call fcn.140115f70
xor eax, eax
movss xmm0, dword [0x1401186bc]
jmp 0x140046755
movss dword [rbx + rax*4 + 0x4ac], xmm1
add rax, 2
cmp rax, 0x200
je 0x1400467aa
cmp byte [rbx + rax + 0x14c], 0
movaps xmm1, xmm0
je 0x14004677a
movss xmm2, dword [rbx + rax*4 + 0x4a8]
xorps xmm1, xmm1
ucomiss xmm1, xmm2
ja 0x14004677a
addss xmm2, xmm7
movaps xmm1, xmm2
movss dword [rbx + rax*4 + 0x4a8], xmm1
cmp byte [rbx + rax + 0x14d], 0
movaps xmm1, xmm0
je 0x140046740
movss xmm2, dword [rbx + rax*4 + 0x4ac]
xorps xmm1, xmm1
ucomiss xmm1, xmm2
ja 0x140046740
addss xmm2, xmm7
movaps xmm1, xmm2
jmp 0x140046740
cmp dword [0x14027accc], 0xa
jl 0x1400467c8
mov eax, dword [0x14027acc8]
lea ecx, [rax - 1]
imul ecx, eax
and ecx, 1
jne 0x140046846
call fcn.140047590
call fcn.14004a760
call fcn.140045840
call fcn.140044e30
mov rcx, qword [0x1402808a8]
mov edx, dword [rcx + 0x1bf0]
add edx, 0xffffffff
js 0x14004682a
mov rdi, qword [rcx + 0x1bf8]
jmp 0x140046805
add edx, 0xffffffff
js 0x14004682a
mov eax, edx
lea rax, [rax + rax*2]
shl rax, 4
mov rax, qword [rdi + rax + 8]
test rax, rax
je 0x140046800
test byte [rax + 0xf], 8
je 0x140046800
cmp dword [0x14027accc], 0xa
jge 0x140046835
jmp 0x14004685f
xor eax, eax
cmp dword [0x14027accc], 0xa
jl 0x14004685f
mov edx, dword [0x14027acc8]
lea edi, [rdx - 1]
imul edi, edx
and edi, 1
je 0x14004685f
call fcn.140047590
call fcn.14004a760
call fcn.140045840
call fcn.140044e30
jmp 0x1400467c8
test rax, rax
je 0x14004688b
movss xmm0, dword [rbx + 0x18]
mulss xmm0, dword [0x1401ca5e0]
addss xmm0, dword [rbx + 0x1de8]
minss xmm0, dword [0x140117160]
movss dword [rbx + 0x1de8], xmm0
jmp 0x1400468cd
cmp qword [rbx + 0x1d40], 0
je 0x1400468a5
movss xmm0, dword [rbx + 0x1d5c]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
ja 0x140046864
movss xmm0, dword [rbx + 0x18]
mulss xmm0, dword [0x1401cb178]
addss xmm0, dword [rbx + 0x1de8]
xorps xmm1, xmm1
cmpless xmm1, xmm0
andps xmm1, xmm0
movss dword [rbx + 0x1de8], xmm1
mov dword [rbx + 0x1fb0], 0
mov dword [rbx + 0x3294], 0xffffffff
mov qword [rbx + 0x328c], 0xffffffffffffffff
movabs rax, 0x3f8000003f800000
mov qword [rbx + 0x3020], rax
mov rdx, qword [rcx + 0x1ab8]
test rdx, rdx
je 0x1400469b8
movss xmm0, dword [rcx + 0x1ac8]
subss xmm0, dword [rcx + 0x18]
movss dword [rcx + 0x1ac8], xmm0
movsd xmm1, qword [rcx + 0x130]
ucomiss xmm1, dword [0x1401cb170]
jb 0x14004699b
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
ucomiss xmm2, dword [0x1401cb170]
jb 0x14004699b
mov eax, dword [0x14027a10c]
lea edi, [rax - 1]
imul edi, eax
test dil, 1
sete r8b
cmp dword [0x14027a108], 0xa
setl al
or al, r8b
nop word cs:[rax + rax]
nop
test al, al
je 0x140046970
movsd xmm2, qword [rcx + 0x1ac0]
subps xmm1, xmm2
mulps xmm1, xmm1
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
addss xmm2, xmm1
movss xmm1, dword [rcx + 0x38]
mulss xmm1, xmm1
ucomiss xmm2, xmm1
ja 0x1400469a3
xorps xmm1, xmm1
ucomiss xmm1, xmm0
jb 0x1400469ba
mov qword [rcx + 0x1ab8], 0
mov dword [rcx + 0x1ac8], 0
xor edx, edx
movss xmm0, dword [rcx + 0x140]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x1400469db
jp 0x1400469db
movss xmm2, dword [rcx + 0x144]
ucomiss xmm2, xmm1
jne 0x1400469db
jnp 0x140046a23
cmp dword [0x14027a108], 0xa
jl 0x140046a02
mov eax, dword [0x14027a10c]
lea edi, [rax - 1]
imul edi, eax
and edi, 1
je 0x140046a02
nop word cs:[rax + rax]
nop
jmp 0x140046a00
mov rax, rdx
test rdx, rdx
jne 0x140046a16
mov rax, qword [rcx + 0x1a98]
test rax, rax
je 0x140046a23
cmp byte [rax + 0x89], 0
je 0x140046fba
mov eax, dword [0x14027ad08]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp dword [0x14027ad0c], 0xa
setl al
or al, dl
nop word cs:[rax + rax]
nop dword [rax + rax]
test al, al
je 0x140046a50
mov rdi, qword [rcx + 0x1c10]
test rdi, rdi
je 0x140046a7c
cmp byte [rdi + 0x86], 0
je 0x140046a7c
test byte [rdi + 0xe], 4
jne 0x140046a7c
cmp byte [rcx + 0x148], 0
je 0x140047082
xor eax, eax
mov byte [rcx + 0x1d88], al
cmp dword [rcx + 0x1ae0], 0
jne 0x140046ac5
test al, al
je 0x140046ac5
mov qword [rcx + 0x1d70], rdi
mov dword [rcx + 0x1d80], 0x7fffffff
cmp dword [rcx + 0x1c18], 0
je 0x140046ab8
mov eax, dword [rcx + 0x1c60]
cmp eax, 0x7fffffff
jne 0x140046ace
xor eax, eax
sub al, byte [rcx + 0x149]
movsx eax, al
jmp 0x140046add
mov rdi, qword [rcx + 0x1d70]
jmp 0x140046ae3
xor edx, edx
cmp byte [rcx + 0x149], 0
sete dl
lea eax, [rax + rdx*2]
mov dword [rcx + 0x1d84], eax
mov qword [rcx + 0x1d68], 0
movabs r8, 0x7fffffff7fffffff
mov qword [rcx + 0x1d78], r8
test rdi, rdi
je 0x140046b73
mov qword [rcx + 0x1d68], rdi
mov eax, dword [rcx + 0x1d80]
cmp eax, 0x7fffffff
je 0x140046b36
mov edx, dword [rdi + 0x1b8]
cmp edx, 0xffffffff
je 0x140046b36
mov esi, edx
add esi, 1
add eax, edx
add eax, 1
cdq
idiv esi
mov dword [rcx + 0x1d78], edx
mov eax, dword [rcx + 0x1d84]
cmp eax, 0x7fffffff
je 0x140046b61
mov edx, dword [rdi + 0x1bc]
cmp edx, 0xffffffff
je 0x140046b61
mov edi, edx
add edi, 1
add eax, edx
add eax, 1
cdq
idiv edi
mov dword [rcx + 0x1d7c], edx
mov qword [rcx + 0x1d70], 0
mov qword [rcx + 0x1d80], r8
mov dword [rcx + 0x1c60], 0x7fffffff
movss xmm0, dword [rbx + 0xd0]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jae 0x140046ba0
movss xmm6, dword [0x1401186b0]
cmp dword [rbx + 0x1a38], 0
jne 0x140046bbc
jmp 0x140046c1a
movsd xmm1, qword [rbx + 0x1a10]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm1
subss xmm6, xmm0
cmp dword [rbx + 0x1a38], 0
je 0x140046c1a
xor esi, esi
jmp 0x140046bcb
add esi, 1
cmp esi, dword [rbx + 0x1a38]
je 0x140046c1a
mov rax, qword [rbx + 0x1a40]
movsxd rcx, esi
mov rcx, qword [rax + rcx*8]
movzx eax, byte [rcx + 0x86]
mov byte [rcx + 0x87], al
mov word [rcx + 0x92], 0
mov byte [rcx + 0x86], 0
mov byte [rcx + 0x88], 0
test al, al
jne 0x140046bc0
cmp byte [rcx + 0x408], 0
jne 0x140046bc0
ucomiss xmm6, dword [rcx + 0x29c]
jbe 0x140046bc0
call fcn.1400420b0
jmp 0x140046bc0
mov rax, qword [rbx + 0x1c10]
test rax, rax
je 0x140046c38
cmp byte [rax + 0x87], 0
jne 0x140046c38
xor ecx, ecx
xor edx, edx
call fcn.14004aca0
mov eax, dword [rbx + 0x1a6c]
test eax, eax
jns 0x140046d31
mov ecx, eax
neg ecx
shr ecx, 1
mov edx, dword [0x14027b878]
lea edi, [rdx - 1]
imul edi, edx
test dil, 1
sete r8b
cmp dword [0x14027b87c], 0xa
setl dl
or dl, r8b
nop dword [rax]
test dl, dl
je 0x140046c70
xor edx, edx
mov edi, eax
sub edi, ecx
cmovs edi, edx
cmp eax, edi
jge 0x140046d31
mov ecx, edi
shl rcx, 3
mov rax, qword [0x1402808a8]
test rax, rax
je 0x140046c9e
add dword [rax + 0x3bc], 1
mov rdx, qword [0x1402808b8]
call qword [0x140275378]
mov rsi, rax
mov rdx, qword [rbx + 0x1a70]
test rdx, rdx
je 0x140046d24
movsxd r8, dword [rbx + 0x1a68]
shl r8, 3
mov rcx, rsi
call fcn.140115f70
mov rcx, qword [rbx + 0x1a70]
test rcx, rcx
je 0x140046d17
mov eax, dword [0x14027a788]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp dword [0x14027a78c], 0xa
setl al
or al, dl
nop word [rax + rax]
test al, al
je 0x140046d00
mov rax, qword [0x1402808a8]
test rax, rax
je 0x140046d17
add dword [rax + 0x3bc], 0xffffffff
mov rdx, qword [0x1402808b8]
call qword [0x140275380]
mov qword [rbx + 0x1a70], rsi
mov dword [rbx + 0x1a6c], edi
mov dword [rbx + 0x1a68], 0
mov eax, dword [rbx + 0x1c04]
test eax, eax
jns 0x140046e11
mov ecx, eax
neg ecx
shr ecx, 1
xor edx, edx
mov edi, eax
sub edi, ecx
cmovs edi, edx
cmp eax, edi
jge 0x140046e11
mov eax, edi
shl rax, 4
lea rcx, [rax + rax*2]
mov rax, qword [0x1402808a8]
test rax, rax
je 0x140046d7d
add dword [rax + 0x3bc], 1
mov rdx, qword [0x1402808b8]
call qword [0x140275378]
mov rsi, rax
mov rdx, qword [rbx + 0x1c08]
test rdx, rdx
je 0x140046e04
movsxd rax, dword [rbx + 0x1c00]
shl rax, 4
lea r8, [rax + rax*2]
mov rcx, rsi
call fcn.140115f70
mov rcx, qword [rbx + 0x1c08]
test rcx, rcx
je 0x140046df7
mov eax, dword [0x14027a788]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp dword [0x14027a78c], 0xa
setl al
or al, dl
nop word [rax + rax]
test al, al
je 0x140046de0
mov rax, qword [0x1402808a8]
test rax, rax
je 0x140046df7
add dword [rax + 0x3bc], 0xffffffff
mov rdx, qword [0x1402808b8]
call qword [0x140275380]
mov qword [rbx + 0x1c08], rsi
mov dword [rbx + 0x1c04], edi
mov dword [rbx + 0x1c00], 0
mov rax, qword [0x1402808a8]
mov r9d, dword [rax + 0x1bf0]
test r9, r9
je 0x140046ec7
mov r10, qword [rbx + 0x1c10]
xor ecx, ecx
test r10, r10
je 0x140046eb4
test r9d, r9d
jle 0x140046eb4
mov r8, qword [rax + 0x1bf8]
lea r11, [r8 + 0x38]
lea r14, [r9 - 1]
xor ecx, ecx
jmp 0x140046e69
add rcx, 1
add r11, 0x30
add r14, 0xffffffffffffffff
cmp rcx, r9
je 0x140046ec7
lea rdx, [rcx + rcx*2]
shl rdx, 4
mov rdi, qword [r8 + rdx + 8]
test rdi, rdi
je 0x140046e58
test byte [rdi + 0xf], 1
jne 0x140046e58
mov rdx, r14
mov rsi, r11
test rdi, rdi
je 0x140046ea0
nop dword [rax]
mov rdi, qword [rdi + 0x3c0]
cmp rdi, qword [r10 + 0x3c0]
je 0x140046e58
sub rdx, 1
jb 0x140046eb4
mov rdi, qword [rsi]
add rsi, 0x30
test rdi, rdi
jne 0x140046e90
jmp 0x140046ea0
cmp ecx, r9d
jge 0x140046ec7
xor edx, edx
call fcn.140058b40
mov rax, qword [0x1402808a8]
mov dword [rax + 0x30a0], 0
cmp byte [rax + 0x309c], 0
je 0x1400473fd
mov esi, dword [rax + 0x1ad0]
mov dword [rax + 0x1fb0], 7
mov ecx, dword [rax + 0x74]
test ecx, ecx
js 0x140047370
movss xmm0, dword [rax + rcx*4 + 0x4a8]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x140046f18
jp 0x140046f18
mov byte [rax + 0x309c], 0
jmp 0x140047370
mov ecx, dword [0x14027a160]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp dword [0x14027a164], 0xa
setl cl
or cl, dl
nop word cs:[rax + rax]
test cl, cl
je 0x140046f40
movss xmm1, dword [rax + 0x94]
ucomiss xmm0, xmm1
jbe 0x140047370
movaps xmm3, xmm0
subss xmm3, dword [rax + 0x18]
ucomiss xmm3, xmm0
jae 0x140047370
movss xmm2, dword [rax + 0x98]
xorps xmm4, xmm4
ucomiss xmm4, xmm2
jae 0x140047357
mov ecx, 0xaf15d0cb
ucomiss xmm1, xmm3
ja 0x140046f97
subss xmm3, xmm1
divss xmm3, xmm2
cvttss2si edx, xmm3
mov ecx, 0xaf15d0ca
sub ecx, edx
mov edx, 0x50ea2f35
ucomiss xmm1, xmm0
ja 0x140046fb3
subss xmm0, xmm1
divss xmm0, xmm2
cvttss2si edx, xmm0
add edx, 0x50ea2f36
add edx, ecx
jmp 0x140047368
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x140046fc8
jnp 0x140047222
cmp byte [rcx + 0x148], 0
je 0x14004713f
cmp byte [rcx + 0xb4], 0
je 0x140047222
cmp rdx, rax
je 0x140047006
mov qword [rcx + 0x1ab8], rax
mov rdx, qword [rcx + 0x130]
mov qword [rcx + 0x1ac0], rdx
mov dword [rcx + 0x1ac8], 0x40000000
mulss xmm0, dword [0x1401cb17c]
movss xmm3, dword [rax + 0x2c8]
addss xmm0, xmm3
movss xmm1, dword [0x1401cb180]
minss xmm1, xmm0
movss xmm2, dword [0x1401186b4]
cmpltss xmm0, xmm2
movaps xmm4, xmm0
andnps xmm4, xmm1
andps xmm0, xmm2
orps xmm0, xmm4
movss dword [rax + 0x2c8], xmm0
test byte [rax + 0xf], 1
jne 0x140046a23
movsd xmm4, qword [rcx + 0x130]
movsd xmm2, qword [rax + 0x10]
cmp dword [0x14027a6b4], 0xa
jl 0x140047440
mov edx, dword [0x14027a6b0]
lea edi, [rdx - 1]
imul edi, edx
and edi, 1
je 0x140047440
jmp 0x140047080
mov eax, dword [rcx + 0x3c]
test eax, eax
js 0x140046a7c
movss xmm0, dword [rcx + rax*4 + 0x4a8]
mov al, 1
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x1400470a6
jnp 0x140046a7e
mov eax, dword [0x14027a160]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
sete dl
cmp dword [0x14027a164], 0xa
setl al
or al, dl
test al, al
je 0x1400470c4
movss xmm1, dword [rcx + 0x94]
xor eax, eax
ucomiss xmm0, xmm1
jbe 0x140046a7e
movaps xmm3, xmm0
subss xmm3, dword [rcx + 0x18]
ucomiss xmm3, xmm0
jae 0x14004751a
movss xmm2, dword [rcx + 0x98]
xorps xmm4, xmm4
ucomiss xmm4, xmm2
jae 0x140047509
mov edx, 0xaf15d0cb
ucomiss xmm1, xmm3
ja 0x14004711d
subss xmm3, xmm1
divss xmm3, xmm2
cvttss2si eax, xmm3
mov edx, 0xaf15d0ca
sub edx, eax
mov eax, 0x50ea2f35
ucomiss xmm1, xmm0
ja 0x140047138
subss xmm0, xmm1
divss xmm0, xmm2
cvttss2si eax, xmm0
add eax, 0x50ea2f36
add eax, edx
jmp 0x14004751a
cmp byte [rcx + 0x149], 0
jne 0x140047222
cmp rdx, rax
je 0x140047170
mov qword [rcx + 0x1ab8], rax
mov rdx, qword [rcx + 0x130]
mov qword [rcx + 0x1ac0], rdx
mov dword [rcx + 0x1ac8], 0x40000000
mov edi, dword [rax + 0xc]
test edi, 0x1000000
je 0x1400471ab
xorps xmm2, xmm2
jmp 0x140047192
mov rax, qword [rax + 0x3b8]
mov edi, dword [rax + 0xc]
test edi, 0x1000000
je 0x1400471ab
movss xmm3, dword [rax + 0x60]
ucomiss xmm3, xmm2
jne 0x14004719e
jnp 0x140047180
mov edx, edi
and edx, 0x210
cmp edx, 0x10
je 0x140047180
test edi, 0x210
jne 0x140047222
movss xmm2, dword [rax + 0x23c]
subss xmm2, dword [rax + 0x234]
mulss xmm2, dword [0x1401cb184]
movss xmm3, dword [rcx + 0x1934]
mulss xmm3, dword [rax + 0x2c8]
mov rdx, qword [rax + 0x3b8]
test rdx, rdx
je 0x1400471ef
mulss xmm3, dword [rdx + 0x2c8]
mulss xmm3, dword [0x1401186f4]
minss xmm3, xmm2
cvttps2dq xmm2, xmm3
cvtdq2ps xmm2, xmm2
movss xmm3, dword [rax + 0x58]
mulss xmm0, xmm2
subss xmm3, xmm0
movss dword [rax + 0x68], xmm3
mov dword [rax + 0x70], 0
mov dword [rax + 0x78], 0
movss xmm0, dword [rcx + 0x144]
ucomiss xmm0, xmm1
jne 0x140047231
jnp 0x14004723a
cmp byte [rcx + 0x149], 0
je 0x14004725d
movss xmm0, dword [rcx + 0x140]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x140047250
jnp 0x140046a23
cmp byte [rcx + 0x149], 0
je 0x140046a23
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x14004726b
jnp 0x140046a23
cmp byte [rcx + 0x148], 0
jne 0x140046a23
cmp qword [rcx + 0x1ab8], rax
je 0x1400472a0
mov qword [rcx + 0x1ab8], rax
mov rdx, qword [rcx + 0x130]
mov qword [rcx + 0x1ac0], rdx
mov dword [rcx + 0x1ac8], 0x40000000
mov edi, dword [rax + 0xc]
test edi, 0x1000000
je 0x1400472db
xorps xmm1, xmm1
jmp 0x1400472c2
mov rax, qword [rax + 0x3b8]
mov edi, dword [rax + 0xc]
test edi, 0x1000000
je 0x1400472db
movss xmm2, dword [rax + 0x5c]
ucomiss xmm2, xmm1
jne 0x1400472ce
jnp 0x1400472b0
mov edx, edi
and edx, 0x210
cmp edx, 0x10
je 0x1400472b0
test edi, 0x210
jne 0x140046a23
movss xmm1, dword [rax + 0x238]
subss xmm1, dword [rax + 0x230]
mulss xmm1, dword [0x1401cb184]
movss xmm2, dword [rcx + 0x1934]
mulss xmm2, dword [rax + 0x2c8]
mov rdx, qword [rax + 0x3b8]
test rdx, rdx
je 0x140047323
mulss xmm2, dword [rdx + 0x2c8]
addss xmm2, xmm2
minss xmm2, xmm1
cvttps2dq xmm1, xmm2
cvtdq2ps xmm1, xmm1
movss xmm2, dword [rax + 0x54]
mulss xmm0, xmm1
subss xmm2, xmm0
movss dword [rax + 0x64], xmm2
mov dword [rax + 0x6c], 0
mov dword [rax + 0x74], 0
jmp 0x140046a23
ucomiss xmm1, xmm3
seta cl
ucomiss xmm0, xmm1
setae dl
and dl, cl
movzx edx, dl
test edx, edx
jg 0x140046f0c
movss xmm0, dword [rax + 0x444]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jne 0x140047393
jp 0x140047393
test esi, esi
je 0x140047393
mov dword [rax + 0x30a0], esi
mov byte [rax + 0x309c], 0
xor edi, edi
test esi, esi
sete dil
or byte [rax + 0x1b38], 0x40
mov dword [rax + 0x1b98], 0x3f19999a
xor ecx, ecx
xor edx, edx
call fcn.1400580c0
lea rcx, str.HoveredId:_0x_08X
mov edx, esi
call fcn.140078310
lea rcx, str.Press_ESC_to_abort_picking.
call fcn.140078310
mov rax, qword [0x1402808a8]
shl rdi, 4
lea rcx, [rax + rdi]
add rcx, 0x1624
lea rdx, str.Click_to_break_in_debugger_
call fcn.140078420
call fcn.1400528c0
mov rax, qword [0x1402808a8]
mov byte [rbx + 0x1a25], 1
mov ecx, dword [0x14027ad30]
lea edx, [rcx - 1]
imul edx, ecx
test dl, 1
sete dl
cmp dword [0x14027ad34], 0xa
setl cl
or cl, dl
mov edx, dword [rax + 0x1b38]
movabs rbx, 0x43c8000043c80000
cmp cl, 1
jne 0x140047538
jmp 0x140047524
movsd xmm1, qword [rax + 0x18]
cmp dword [0x14027b05c], 0xa
jl 0x140047462
mov edx, dword [0x14027b058]
lea edi, [rdx - 1]
imul edi, edx
and edi, 1
je 0x140047462
nop
jmp 0x140047460
divss xmm0, xmm3
subps xmm4, xmm2
subss xmm6, xmm0
shufps xmm6, xmm6, 0
mulps xmm6, xmm1
mulps xmm6, xmm4
and byte [rax + 0xac], 0xf1
divps xmm6, xmm1
addps xmm6, xmm2
movabs rdx, 0x7f7fffff7f7fffff
mov qword [rax + 0xb8], rdx
cvttps2dq xmm3, xmm6
cvtdq2ps xmm3, xmm3
movss dword [rax + 0x10], xmm3
movaps xmm4, xmm3
shufps xmm4, xmm3, 0x55
movss dword [rax + 0x14], xmm4
subps xmm3, xmm2
movaps xmm2, xmm3
movaps xmm4, xmm3
addss xmm3, dword [rax + 0xd8]
shufps xmm4, xmm4, 0x55
movss dword [rax + 0xd8], xmm3
addss xmm4, dword [rax + 0xdc]
movlhps xmm2, xmm2
movss dword [rax + 0xdc], xmm4
movups xmm3, xmmword [rax + 0xe8]
addps xmm3, xmm2
movups xmmword [rax + 0xe8], xmm3
shufps xmm0, xmm0, 0
movhps xmm1, qword [rax + 0x20]
mulps xmm1, xmm0
cvttps2dq xmm0, xmm1
cvtdq2ps xmm0, xmm0
movups xmmword [rax + 0x18], xmm0
jmp 0x140046a23
ucomiss xmm1, xmm3
seta al
ucomiss xmm0, xmm1
setae dl
and dl, al
movzx eax, dl
test eax, eax
setg al
jmp 0x140046a7e
or edx, 2
mov dword [rax + 0x1b38], edx
mov qword [rax + 0x1b58], rbx
test cl, cl
jne 0x14004754a
or edx, 2
mov dword [rax + 0x1b38], edx
mov qword [rax + 0x1b58], rbx
jmp 0x140047524
mov dword [rax + 0x1b40], 4
lea rcx, str.DebugDefault
xor edx, edx
xor r8d, r8d
call fcn.14004ae50
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.1400c4bd0
movaps xmm6, xmmword [rsp + 0x30]
movaps xmm7, xmmword [rsp + 0x40]
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r14
ret