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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x108
mov eax, dword [0x1005500c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [0x100561a4]
push edi
mov dword [ebp - 0xb8], edx
mov dword [ebp - 0x100], ecx
mov eax, dword [esi + 0x1924]
mov byte [eax + 0x92], 1
mov eax, dword [esi + 0x1924]
mov dword [ebp - 0xa4], eax
cmp byte [eax + 0x95], 0
jne 0x10017d3a
mov eax, dword [ebx + 0x10]
mov ecx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
and eax, 0x100080
cmp eax, 0x100080
jne 0x100178c5
push 0x2638
push str.D:_sources_src_2depsimguiimgui.cpp
push str.___flags__ImGuiInputTextFlags_CallbackHistory____flags__ImGuiInputTextFlags_Multiline__
call ecx
mov esi, dword [0x100561a4]
add esp, 0xc
mov ecx, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [ebx + 0x10]
and eax, 0x440
mov dword [ebp - 0xa8], eax
cmp eax, 0x440
jne 0x100178f4
push 0x2639
push str.D:_sources_src_2depsimguiimgui.cpp
push str.___flags__ImGuiInputTextFlags_CallbackCompletion____flags__ImGuiInputTextFlags_AllowTabInput__
call ecx
mov esi, dword [0x100561a4]
add esp, 0xc
mov eax, dword [ebx + 0x10]
mov edi, esi
mov edx, eax
mov dword [ebp - 0xdc], edi
shr edx, 0xe
mov ecx, eax
not dl
shr ecx, 0x14
and edx, 0xffffff01
and ecx, 0xffffff01
mov dword [ebp - 0xac], edx
mov edx, eax
shr eax, 0x10
shr edx, 0xf
not al
and edx, 0xffffff01
mov dword [ebp - 0x98], ecx
and eax, 0xffffff01
mov dword [ebp - 0xec], edx
mov dword [ebp - 0xe4], eax
test cl, cl
je 0x10017953
call fcn.1001aef0
mov esi, dword [0x100561a4]
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x1d8]
test ecx, ecx
jg 0x1001798d
push 0x467
push str.D:_sources_src_2depsimguiimgui.h
push str.Size___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [ebp - 0xa4]
add esp, 0xc
mov esi, dword [0x100561a4]
mov ecx, dword [eax + 0x1d8]
mov eax, dword [eax + 0x1e0]
xor edx, edx
push dword [eax + ecx*4 - 4]
mov ecx, dword [ebp - 0x100]
call fcn.100033b0
add esp, 4
mov dword [ebp - 0x88], eax
cmp dword [esi + 0x1940], eax
jne 0x100179bc
mov byte [esi + 0x194c], 1
mov edx, dword [ebp - 0x100]
mov ecx, edx
cmp edx, 0xffffffff
jae 0x100179e5
nop dword [eax]
mov al, byte [ecx]
test al, al
je 0x100179e5
cmp al, 0x23
jne 0x100179df
cmp byte [ecx + 1], al
je 0x100179e5
inc ecx
cmp ecx, 0xffffffff
jb 0x100179d0
movss xmm0, dword [esi + 0x1854]
movss xmm1, dword [0x1004ff90]
mov eax, dword [esi + 0x1850]
mov dword [ebp - 0xc0], eax
movss dword [ebp - 0xb0], xmm0
movss dword [ebp - 0xf4], xmm1
cmp edx, ecx
jne 0x10017a22
xorps xmm2, xmm2
movss dword [ebp - 0xfc], xmm2
jmp 0x10017a8f
movss xmm3, dword [0x1004ff84]
movaps xmm2, xmm0
push ecx
push ecx
push edx
push ecx
lea ecx, [ebp - 0xd4]
mov dword [esp], 0xbf800000
push ecx
mov ecx, eax
call fcn.10029450
movss xmm1, dword [ebp - 0xd4]
xorps xmm2, xmm2
comiss xmm1, xmm2
jbe 0x10017a6c
mov eax, dword [ebp - 0xc0]
movss xmm0, dword [ebp - 0xb0]
divss xmm0, dword [eax]
subss xmm1, xmm0
addss xmm1, dword [0x1004fea0]
cvttss2si eax, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xfc], xmm0
movss xmm0, dword [ebp - 0xd0]
cmp byte [ebp - 0x98], 0
mov eax, dword [ebx + 0xc]
movss xmm1, dword [eax]
movss xmm6, dword [eax + 4]
movss dword [ebp - 0xcc], xmm1
movss dword [ebp - 0xe0], xmm6
je 0x10017ac4
movss xmm0, dword [esi + 0x1854]
mulss xmm0, dword [0x1004ff0c]
movss xmm1, dword [edi + 0x1520]
mov eax, dword [esi + 0x1924]
addss xmm1, xmm1
addss xmm1, xmm0
movss dword [ebp - 0xc8], xmm1
movss xmm1, dword [eax + 0x178]
comiss xmm2, xmm1
movss dword [ebp - 0x90], xmm1
jbe 0x10017b59
movss xmm0, dword [eax + 0xdc]
lea ecx, [ebp - 0x38]
movss dword [ebp - 0xb0], xmm0
movss xmm0, dword [eax + 0x14]
movss dword [ebp - 0xc0], xmm0
call fcn.10012af0
movss xmm1, dword [ebp - 0xb0]
xorps xmm2, xmm2
subss xmm1, dword [ebp - 0xc0]
mov esi, dword [0x100561a4]
movss xmm0, dword [eax]
movss xmm6, dword [ebp - 0xe0]
subss xmm0, xmm1
movss xmm1, dword [0x1004feb0]
addss xmm0, dword [ebp - 0x90]
maxss xmm1, xmm0
cvttss2si eax, xmm1
movss xmm1, dword [ebp - 0xcc]
xorps xmm0, xmm0
comiss xmm2, xmm1
movss dword [ebp - 0xb0], xmm1
xorps xmm3, xmm3
movd xmm5, eax
cvtdq2ps xmm5, xmm5
movss dword [ebp - 0xc0], xmm5
ja 0x10017b8c
comiss xmm2, xmm6
jbe 0x10017bcb
lea ecx, [ebp - 0xd4]
call fcn.10012af0
mov ecx, dword [esi + 0x1924]
xorps xmm2, xmm2
movss xmm1, dword [ebp - 0xb0]
movss xmm5, dword [ebp - 0xc0]
movss xmm0, dword [eax + 4]
movss xmm3, dword [ecx + 0x14]
addss xmm3, dword [eax]
addss xmm0, dword [ecx + 0x18]
movss xmm6, dword [ebp - 0xe0]
comiss xmm2, xmm1
movss xmm4, dword [0x1004ff00]
jb 0x10017c0e
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jp 0x10017bee
movaps xmm3, xmm5
movss dword [ebp - 0xcc], xmm3
jmp 0x10017c16
mov eax, dword [esi + 0x1924]
subss xmm3, dword [eax + 0xdc]
maxss xmm3, xmm4
addss xmm3, xmm1
movss dword [ebp - 0xcc], xmm3
jmp 0x10017c16
movss xmm3, dword [ebp - 0xcc]
comiss xmm2, xmm6
jb 0x10017c57
ucomiss xmm6, xmm2
lahf
test ah, 0x44
jp 0x10017c36
movss xmm6, dword [ebp - 0xc8]
movss dword [ebp - 0xe0], xmm6
jmp 0x10017c57
mov eax, dword [esi + 0x1924]
subss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm4
addss xmm0, xmm6
movaps xmm6, xmm0
movss dword [ebp - 0xe0], xmm0
mov esi, dword [ebp - 0xa4]
movss xmm4, dword [esi + 0xdc]
movss xmm5, dword [esi + 0xe0]
movaps xmm0, xmm4
movaps xmm1, xmm5
movss dword [ebp - 0x50], xmm4
addss xmm0, xmm3
movss dword [ebp - 0x4c], xmm5
movss xmm3, dword [ebp - 0xfc]
addss xmm1, xmm6
comiss xmm3, xmm2
movss dword [ebp - 0x48], xmm0
movss dword [ebp - 0x44], xmm1
jbe 0x10017ca6
addss xmm3, dword [edi + 0x1534]
jmp 0x10017ca9
xorps xmm3, xmm3
cmp byte [ebp - 0x98], 0
addss xmm0, xmm3
addss xmm1, xmm2
movss dword [ebp - 0x40], xmm4
movss dword [ebp - 0x3c], xmm5
mov dword [ebp - 0xbc], esi
movss dword [ebp - 0x38], xmm0
movss dword [ebp - 0x34], xmm1
je 0x10017d88
mov edx, dword [ebp - 0x88]
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x40]
call fcn.10004e20
movss xmm0, dword [ebp - 0x48]
lea edx, [ebp - 0xd4]
subss xmm0, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x88]
movss dword [ebp - 0xd4], xmm0
movss xmm0, dword [ebp - 0x44]
subss xmm0, dword [ebp - 0x4c]
movss dword [ebp - 0xd0], xmm0
call fcn.1000c6e0
add esp, 4
test al, al
jne 0x10017d4f
call fcn.1000c510
call fcn.10012870
call fcn.100127e0
call fcn.1001b030
xor al, al
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100401be
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov ecx, dword [0x100561a4]
movss xmm0, dword [ebp - 0xcc]
mov eax, dword [ecx + 0x1924]
mov byte [eax + 0x92], 1
mov eax, dword [ecx + 0x1924]
mov dword [ebp - 0xbc], eax
subss xmm0, dword [eax + 0x88]
movss dword [ebp - 0xcc], xmm0
jmp 0x10017dd0
subss xmm1, xmm5
subss xmm0, xmm4
lea ecx, [ebp - 0xd4]
movss dword [ebp - 0xd0], xmm1
movss xmm1, dword [edi + 0x1520]
movss dword [ebp - 0xd4], xmm0
call fcn.10004870
mov edx, dword [ebp - 0x88]
lea eax, [ebp - 0x50]
push eax
lea ecx, [ebp - 0x40]
call fcn.10004e20
add esp, 4
test al, al
je 0x10017d3a
mov edx, dword [ebp - 0x88]
lea ecx, [ebp - 0x50]
call fcn.100051f0
mov byte [ebp - 0x8a], al
test al, al
je 0x10017df2
mov dword [edi + 0x1b7c], 1
cmp byte [ebp - 0xec], 0
je 0x10017ebf
mov edx, dword [edi + 0x1850]
cmp dword [edx + 0x28], 0x2a
jle 0x10017e27
mov eax, dword [edx + 0x30]
mov ecx, 0xffff
movzx eax, word [eax + 0x54]
cmp ax, cx
je 0x10017e27
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x18]
lea eax, [eax + ecx*8]
jmp 0x10017e2a
mov eax, dword [edx + 0x34]
cmp dword [edi + 0x28cc], 0
lea esi, [edi + 0x28bc]
mov dword [ebp - 0x90], eax
mov eax, dword [edx]
mov dword [esi], eax
mov eax, dword [edx + 4]
mov dword [esi + 4], eax
mov eax, dword [edi + 0x1850]
mov ecx, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov dword [esi + 0xc], eax
mov dword [esi + 8], ecx
mov eax, dword [edi + 0x1850]
mov eax, dword [eax + 0x48]
mov dword [esi + 0x48], eax
mov eax, dword [edi + 0x1850]
mov eax, dword [eax + 0x4c]
mov dword [esi + 0x4c], eax
mov eax, dword [edi + 0x1850]
mov eax, dword [eax + 0x44]
mov dword [esi + 0x44], eax
mov eax, dword [ebp - 0x90]
mov dword [esi + 0x34], eax
mov eax, dword [eax + 4]
mov dword [esi + 0x38], eax
jne 0x10017e9a
cmp dword [esi + 0x1c], 0
jne 0x10017e9a
cmp dword [esi + 0x28], 0
je 0x10017eb2
push 0x2670
push str.D:_sources_src_2depsimguiimgui.cpp
push str.password_font__Glyphs.empty____password_font__IndexAdvanceX.empty____password_font__IndexLookup.empty__
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov ecx, esi
call fcn.10012600
mov esi, dword [ebp - 0xa4]
cmp dword [ebp - 0xa8], 0
mov ecx, esi
mov edx, dword [ebp - 0x88]
sete al
movzx eax, al
push eax
call fcn.10005380
add esp, 4
mov byte [ebp - 0x89], al
test al, al
je 0x10017fac
mov ecx, dword [esi + 0x2ac]
cmp ecx, dword [esi + 0x2b4]
jne 0x10017fac
mov byte [ebp - 0x8c], 1
mov byte [ebp - 0x91], 0
cmp byte [ebp - 0x8a], 0
je 0x10017f24
cmp byte [edi + 0x3c8], 0
mov byte [ebp - 0x8b], 1
jne 0x10017f2b
mov byte [ebp - 0x8b], 0
cmp byte [ebp - 0x98], 0
je 0x10017fce
cmp dword [edi + 0x1940], 0
jne 0x10017fce
mov eax, dword [ebp - 0x88]
cmp dword [edi + 0x1be8], eax
jne 0x10017fce
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax + 0x1d8]
test ecx, ecx
jg 0x10017f87
push 0x467
push str.D:_sources_src_2depsimguiimgui.h
push str.Size___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [ebp - 0xbc]
add esp, 0xc
mov ecx, dword [eax + 0x1d8]
mov eax, dword [eax + 0x1e0]
xor edx, edx
push dword [eax + ecx*4 - 4]
mov ecx, str.SCROLLY
call fcn.100033b0
add esp, 4
cmp dword [edi + 0x1944], eax
jne 0x10017fce
mov al, 1
jmp 0x10017fd0
mov byte [ebp - 0x8c], 0
test al, al
je 0x10017f04
mov byte [ebp - 0x91], 1
mov byte [ebp - 0x8c], 0
jmp 0x10017f0b
xor al, al
mov ecx, dword [edi + 0x1940]
mov edx, dword [ebp - 0x88]
mov byte [ebp - 0x93], 0
cmp ecx, edx
je 0x10018005
test byte [ebx + 0x10], 0x10
jne 0x10017ff5
cmp dword [edi + 0x1a1c], edx
jne 0x10018005
cmp byte [ebp - 0x98], 0
mov byte [ebp - 0x9c], 1
je 0x1001800c
mov byte [ebp - 0x9c], 0
cmp byte [ebp - 0x89], 0
jne 0x10018049
cmp byte [ebp - 0x8b], 0
jne 0x10018049
test al, al
mov eax, dword [ebp - 0x88]
jne 0x1001804f
cmp dword [edi + 0x1a1c], eax
je 0x1001804f
cmp byte [edi + 0x3c8], 0
je 0x100182b1
mov byte [ebp - 0x93], 1
jmp 0x100182b1
mov eax, dword [ebp - 0x88]
cmp ecx, eax
je 0x10018274
mov ecx, dword [ebx + 8]
mov eax, dword [edi + 0x1c14]
mov dword [ebp - 0xc0], eax
mov eax, dword [edi + 0x1bf0]
lea esi, [ecx + 1]
cmp esi, eax
jle 0x100180a6
test eax, eax
je 0x10018089
cdq
sub eax, edx
lea edx, [edi + 0x1bec]
mov ecx, eax
sar ecx, 1
add ecx, dword [edx + 4]
jmp 0x10018094
mov ecx, 8
lea edx, [edi + 0x1bec]
cmp ecx, esi
mov eax, esi
cmovg eax, ecx
mov ecx, edx
push eax
call fcn.1001d550
mov ecx, dword [ebx + 8]
lea eax, [ecx + 1]
mov dword [edi + 0x1bec], esi
push eax
lea ecx, [edi + 0x1bf8]
call fcn.1001d440
mov esi, dword [edi + 0x1bf8]
mov eax, dword [edi + 0x1c00]
mov dword [ebp - 0xb0], eax
cmp esi, 1
jb 0x100180ee
push esi
push dword [ebp - 0xb8]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, dword [ebp - 0xb0]
add esp, 0xc
mov byte [eax + esi - 1], 0
mov esi, dword [ebp - 0xb8]
lea eax, [ebp - 0x90]
mov edx, dword [edi + 0x1bec]
push eax
push ecx
mov ecx, dword [edi + 0x1bf4]
push esi
mov dword [ebp - 0x90], 0
call fcn.10003670
mov ecx, dword [ebp - 0x90]
add esp, 0xc
sub ecx, esi
mov dword [edi + 0x28b4], 0xbe99999a
mov dword [edi + 0x1c10], ecx
mov edx, eax
mov ecx, dword [ebp - 0x88]
mov dword [edi + 0x1c14], edx
cmp dword [edi + 0x1be8], ecx
jne 0x10018199
cmp dword [ebp - 0xc0], edx
jne 0x10018199
mov eax, dword [edi + 0x1c20]
mov ecx, edx
cmp eax, edx
cmovl ecx, eax
mov eax, dword [edi + 0x1c24]
cmp eax, edx
mov dword [edi + 0x1c20], ecx
mov ecx, edx
cmovl ecx, eax
mov eax, dword [edi + 0x1c28]
cmp eax, edx
mov dword [edi + 0x1c24], ecx
mov ecx, dword [ebp - 0x88]
cmovl edx, eax
mov dword [edi + 0x1c28], edx
mov edx, dword [ebp - 0x98]
jmp 0x10018220
mov edx, dword [ebp - 0x98]
mov al, dl
mov dword [edi + 0x1be8], ecx
xor al, 1
mov dword [edi + 0x1c1c], 0
mov dword [edi + 0x28aa], 0x630000
mov dword [edi + 0x28ae], 0x3e70000
mov dword [edi + 0x1c24], 0
mov dword [edi + 0x1c28], 0
mov dword [edi + 0x1c20], 0
mov dword [edi + 0x1c2c], 0x10000
mov dword [edi + 0x1c34], 0
mov byte [edi + 0x1c30], al
test dl, dl
jne 0x10018220
mov eax, dword [ebp - 0x9c]
mov esi, 1
cmp byte [ebp - 0x8c], dl
movzx eax, al
cmovne eax, esi
mov dword [ebp - 0x9c], eax
test dword [ebx + 0x10], 0x2000
je 0x10018230
mov byte [edi + 0x1c2c], 1
test dl, dl
jne 0x1001826e
cmp byte [ebp - 0x91], dl
jne 0x1001824c
cmp byte [ebp - 0x8b], dl
je 0x1001826e
cmp byte [edi + 0xe9], dl
je 0x1001826e
mov esi, dword [ebp - 0xa4]
mov edx, esi
mov byte [ebp - 0x9c], 1
call fcn.10004710
call fcn.10004790
mov ecx, esi
call fcn.100121a0
jmp 0x10018296
mov esi, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0x88]
mov edx, esi
call fcn.10004710
call fcn.10004790
mov ecx, esi
call fcn.100121a0
cmp byte [ebp - 0x98], 0
jne 0x100182ab
test byte [ebx + 0x10], 0x80
mov eax, dword [ebp - 0x88]
jne 0x100182b1
or dword [edi + 0x1950], 0xc
jmp 0x100182b1
mov eax, dword [ebp - 0x88]
mov byte [ebp - 0xb1], 0
mov byte [ebp - 0x91], 0
cmp dword [edi + 0x1940], eax
jne 0x10018690
cmp byte [ebp - 0xac], 0
jne 0x100183b2
cmp byte [edi + 0x194d], 0
jne 0x100183b2
mov ecx, dword [ebx + 8]
lea eax, [edi + 0x1bec]
mov esi, dword [eax + 4]
lea edx, [ecx + 1]
mov dword [ebp - 0x90], edx
cmp edx, esi
jle 0x10018339
test esi, esi
je 0x10018315
mov eax, esi
cdq
sub eax, edx
mov edx, dword [ebp - 0x90]
mov ecx, eax
sar ecx, 1
add ecx, esi
jmp 0x1001831a
mov ecx, 8
cmp ecx, edx
mov eax, edx
cmovg eax, ecx
lea ecx, [edi + 0x1bec]
push eax
call fcn.1001d550
mov edx, dword [ebp - 0x90]
lea eax, [edi + 0x1bec]
mov dword [eax], edx
lea eax, [ebp - 0x90]
push eax
push ecx
push dword [ebp - 0xb8]
mov ecx, dword [edi + 0x1bf4]
mov dword [ebp - 0x90], 0
call fcn.10003670
mov ecx, dword [ebp - 0x90]
mov esi, eax
sub ecx, dword [ebp - 0xb8]
add esp, 0xc
mov eax, dword [edi + 0x1c24]
mov edx, esi
mov dword [edi + 0x1c10], ecx
mov ecx, dword [edi + 0x1c20]
cmp ecx, esi
mov dword [edi + 0x1c14], esi
cmovl edx, ecx
cmp eax, esi
mov ecx, esi
mov dword [edi + 0x1c20], edx
cmovl ecx, eax
mov eax, dword [edi + 0x1c28]
cmp eax, esi
mov dword [edi + 0x1c24], ecx
cmovl esi, eax
mov dword [edi + 0x1c28], esi
mov eax, dword [ebx + 8]
mov dword [edi + 0x1c18], eax
cmp byte [edi + 0xd8], 0
mov dword [edi + 0x2b88], 1
sete al
cmp byte [ebp - 0x98], 0
mov byte [edi + 0x194e], al
movss xmm3, dword [edi + 0xd0]
subss xmm3, dword [ebp - 0x50]
subss xmm3, dword [edi + 0x151c]
addss xmm3, dword [edi + 0x1c1c]
je 0x1001841b
mov eax, dword [ebp - 0xbc]
movss xmm2, dword [edi + 0xd4]
subss xmm2, dword [eax + 0xe0]
subss xmm2, dword [edi + 0x1520]
jmp 0x1001842b
movss xmm2, dword [edi + 0x1854]
mulss xmm2, dword [0x1004fe78]
cmp byte [ebp - 0x9c], 0
mov cl, byte [edi + 0xb4]
jne 0x10018593
mov dl, byte [ebp - 0x8a]
test dl, dl
je 0x1001845a
mov al, byte [edi + 0x3cd]
test cl, cl
jne 0x100184b3
test al, al
jne 0x10018593
cmp byte [edi + 0x3c8], 0
mov al, byte [edi + 0x28b9]
je 0x10018512
test al, al
jne 0x10018512
test dl, dl
je 0x100185bd
movaps xmm1, xmm3
lea ecx, [edi + 0x1be8]
call fcn.10015f20
mov dword [edi + 0x1c20], eax
mov dword [edi + 0x1c24], eax
mov dword [edi + 0x1c28], eax
mov byte [edi + 0x1c2f], 0
mov dword [edi + 0x28b4], 0xbe99999a
jmp 0x100185bd
test al, al
je 0x1001845a
push 0x1000c
lea edx, [edi + 0x1c20]
lea ecx, [edi + 0x1be8]
call fcn.10016400
add esp, 4
mov byte [edi + 0x28b8], 1
lea eax, [edi + 0x1be8]
mov dword [edi + 0x28b4], 0xbe99999a
lea edx, [edi + 0x1c20]
mov ecx, eax
push 0x3000d
call fcn.10016400
add esp, 4
mov byte [edi + 0x28b8], 1
mov dword [edi + 0x28b4], 0xbe99999a
jmp 0x100185bd
cmp byte [edi + 0xd8], 0
je 0x100185bd
test al, al
jne 0x100185bd
movss xmm0, dword [edi + 0x37c]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x1001854c
movss xmm0, dword [edi + 0x380]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100185bd
movaps xmm1, xmm3
lea ecx, [edi + 0x1be8]
call fcn.10015f20
mov ecx, dword [edi + 0x1c24]
cmp ecx, dword [edi + 0x1c28]
jne 0x10018574
mov ecx, dword [edi + 0x1c20]
mov dword [edi + 0x1c24], ecx
mov dword [edi + 0x1c28], eax
mov dword [edi + 0x1c20], eax
mov dword [edi + 0x28b4], 0xbe99999a
mov byte [edi + 0x28b8], 1
jmp 0x100185bd
mov eax, dword [edi + 0x1c14]
mov dword [edi + 0x1c24], 0
mov dword [edi + 0x1c28], eax
mov dword [edi + 0x1c20], eax
mov byte [edi + 0x1c2f], 0
mov byte [edi + 0x28b9], 1
cmp byte [edi + 0x28b9], 0
je 0x100185d6
cmp byte [edi + 0xd8], 0
jne 0x100185d6
mov byte [edi + 0x28b9], 0
cmp word [edi + 0x2ee], 0
lea esi, [edi + 0x2ee]
je 0x10018690
cmp byte [edi + 0xe9], 0
je 0x100185fc
cmp byte [edi + 0xeb], 0
je 0x10018676
cmp byte [ebp - 0xac], 0
je 0x10018676
mov dword [ebp - 0xc8], 0
nop
movzx eax, word [esi]
test ax, ax
je 0x10018676
mov edx, dword [ebx + 0x10]
lea ecx, [ebp - 0x90]
sub esp, 8
mov dword [ebp - 0x90], eax
call fcn.100176b0
add esp, 8
test al, al
je 0x10018661
push dword [ebp - 0x90]
lea edx, [edi + 0x1c20]
lea ecx, [edi + 0x1be8]
call fcn.10016400
add esp, 4
mov byte [edi + 0x28b8], 1
mov dword [edi + 0x28b4], 0xbe99999a
mov eax, dword [ebp - 0xc8]
add esi, 2
inc eax
mov dword [ebp - 0xc8], eax
cmp eax, 0x11
jl 0x10018610
xorps xmm0, xmm0
movups xmmword [edi + 0x2ee], xmm0
movups xmmword [edi + 0x2fe], xmm0
mov word [edi + 0x30e], 0
mov ecx, dword [ebp - 0x88]
xor al, al
mov byte [ebp - 0x81], al
cmp dword [edi + 0x1940], ecx
jne 0x10019142
cmp byte [edi + 0x194d], al
jne 0x10019142
cmp byte [ebp - 0x93], al
jne 0x10019142
mov dl, byte [edi + 0xea]
xor esi, esi
mov eax, 0x20000
test dl, dl
cmovne esi, eax
mov ah, byte [edi + 0xb4]
mov al, byte [edi + 0xe9]
test ah, ah
je 0x100187fd
cmp byte [edi + 0xec], 0
je 0x100186fc
test al, al
jne 0x100186fc
mov ecx, 1
jmp 0x100186fe
xor ecx, ecx
test ecx, ecx
jne 0x10018812
xor ch, ch
mov cl, dl
mov byte [ebp - 0x8b], ch
test ah, ah
je 0x10018830
cmp byte [edi + 0xec], 0
mov ah, byte [edi + 0xeb]
mov byte [ebp - 0x9d], ah
je 0x10018836
test al, al
jne 0x10018836
test ah, ah
jne 0x10018836
mov byte [ebp - 0x92], 1
mov byte [ebp - 0x89], 0
test cl, cl
je 0x1001876e
test al, al
jne 0x1001876e
cmp byte [edi + 0xeb], al
jne 0x1001876e
mov byte [ebp - 0x8a], 1
cmp byte [edi + 0xec], al
je 0x10018775
mov byte [ebp - 0x8a], 0
test ch, ch
je 0x10018790
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x74]
test ecx, ecx
js 0x10018790
mov dl, 1
call fcn.1000b7f0
test al, al
jne 0x100187bc
cmp byte [ebp - 0x8a], 0
je 0x10018873
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x10018873
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018873
cmp byte [ebp - 0xac], 0
je 0x10018873
cmp byte [ebp - 0xec], 0
jne 0x10018873
cmp byte [ebp - 0x98], 0
je 0x100187f1
mov eax, dword [edi + 0x1c24]
cmp eax, dword [edi + 0x1c28]
je 0x10018873
mov byte [ebp - 0x8c], 1
jmp 0x1001887a
test al, al
je 0x10018706
cmp byte [edi + 0xec], 0
jne 0x10018706
cmp byte [edi + 0xeb], 0
jne 0x10018706
test dl, dl
jne 0x10018706
mov ch, 1
xor cl, cl
jmp 0x1001870a
mov byte [ebp - 0x9d], al
mov byte [ebp - 0x92], 0
test al, al
je 0x10018748
mov cl, dl
test dl, dl
jne 0x10018748
cmp byte [edi + 0xeb], dl
jne 0x10018748
cmp byte [edi + 0xec], dl
jne 0x10018748
mov byte [ebp - 0x89], 1
jmp 0x1001876e
mov byte [ebp - 0x8c], 0
cmp byte [ebp - 0x8b], 0
je 0x1001889a
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x6c]
test ecx, ecx
js 0x1001889a
mov dl, 1
call fcn.1000b7f0
test al, al
jne 0x100188ba
cmp byte [ebp - 0x89], 0
je 0x100188e3
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x100188e3
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x100188e3
cmp byte [ebp - 0xec], 0
jne 0x100188e3
cmp byte [ebp - 0x98], 0
je 0x100188da
mov eax, dword [edi + 0x1c24]
cmp eax, dword [edi + 0x1c28]
je 0x100188e3
mov byte [ebp - 0x89], 1
jmp 0x100188ea
mov byte [ebp - 0x89], 0
cmp byte [ebp - 0x8b], 0
je 0x1001890a
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x70]
test ecx, ecx
js 0x1001890a
mov dl, 1
call fcn.1000b7f0
test al, al
jne 0x1001892a
cmp byte [ebp - 0x8a], 0
je 0x1001893a
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x1001893a
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x1001893a
cmp byte [ebp - 0xac], 0
mov byte [ebp - 0x8a], 1
jne 0x10018941
mov byte [ebp - 0x8a], 0
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x30]
test ecx, ecx
js 0x100189a9
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x100189a9
cmp byte [ebp - 0x92], 0
je 0x10018968
mov eax, 0x10004
jmp 0x1001897c
mov eax, 0x10000
mov ecx, 0x1000c
cmp byte [ebp - 0x9d], 0
cmovne eax, ecx
or eax, esi
push eax
lea edx, [edi + 0x1c20]
lea ecx, [edi + 0x1be8]
call fcn.10016400
add esp, 4
mov byte [edi + 0x28b8], 1
mov dword [edi + 0x28b4], 0xbe99999a
jmp 0x10019136
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x100189da
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x100189da
cmp byte [ebp - 0x92], 0
je 0x100189d0
mov eax, 0x10005
jmp 0x1001897c
mov eax, 0x10001
lea ecx, [eax + 0xc]
jmp 0x10018972
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x10018a51
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018a51
cmp byte [ebp - 0x98], 0
je 0x10018a51
cmp byte [edi + 0xe9], 0
je 0x10018a3e
mov edx, dword [ebp - 0xbc]
xorps xmm4, xmm4
movss xmm1, dword [edx + 0x70]
movaps xmm0, xmm1
subss xmm0, dword [edi + 0x1854]
addss xmm1, dword [edx + 0xf8]
maxss xmm0, xmm4
subss xmm1, xmm0
movss dword [edx + 0x70], xmm0
movss dword [edx + 0xf8], xmm1
jmp 0x10019136
movzx eax, byte [ebp - 0x92]
lea eax, [eax*4 + 0x10002]
jmp 0x1001897c
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x10018af9
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018af9
cmp byte [ebp - 0x98], 0
je 0x10018af9
cmp byte [edi + 0xe9], 0
je 0x10018ae6
mov eax, dword [0x100561a4]
mov ecx, dword [ebp - 0xbc]
mov eax, dword [eax + 0x1924]
movss xmm3, dword [ecx + 0x70]
movaps xmm2, xmm3
addss xmm2, dword [edi + 0x1854]
movss xmm0, dword [eax + 0x28]
subss xmm0, dword [eax + 0x8c]
movss xmm1, dword [eax + 0x38]
addss xmm3, dword [ecx + 0xf8]
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
minss xmm2, xmm0
subss xmm3, xmm2
movss dword [ecx + 0x70], xmm2
movss dword [ecx + 0xf8], xmm3
jmp 0x10019136
movzx eax, byte [ebp - 0x92]
lea eax, [eax*4 + 0x10003]
jmp 0x1001897c
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x48]
test ecx, ecx
js 0x10018b2d
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018b2d
mov eax, esi
or esi, 0x10004
or eax, 0x10006
cmp byte [edi + 0xe9], 0
cmovne esi, eax
push esi
jmp 0x1001897f
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x4c]
test ecx, ecx
js 0x10018b61
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018b61
mov eax, esi
or esi, 0x10005
or eax, 0x10007
cmp byte [edi + 0xe9], 0
cmovne esi, eax
push esi
jmp 0x1001897f
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x10018b8d
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018b8d
cmp byte [ebp - 0xac], 0
je 0x10018b8d
or esi, 0x10008
push esi
jmp 0x1001897f
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x10018c2d
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018c2d
cmp byte [ebp - 0xac], 0
je 0x10018c2d
mov eax, dword [edi + 0x1c24]
cmp eax, dword [edi + 0x1c28]
jne 0x10018c21
cmp byte [ebp - 0x9d], 0
je 0x10018bd3
push 0x3000c
jmp 0x10018bfc
cmp byte [edi + 0xb4], 0
je 0x10018c21
cmp byte [edi + 0xec], 0
je 0x10018c21
cmp byte [edi + 0xeb], 0
jne 0x10018c21
cmp byte [edi + 0xe9], 0
jne 0x10018c21
push 0x30004
lea edx, [edi + 0x1c20]
lea ecx, [edi + 0x1be8]
call fcn.10016400
mov dword [edi + 0x28b4], 0xbe99999a
add esp, 4
mov byte [edi + 0x28b8], 1
or esi, 0x10009
push esi
jmp 0x1001897f
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x60]
test ecx, ecx
js 0x10018cc3
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018cc3
mov edx, dword [ebx + 0x10]
mov eax, edx
shr eax, 0xb
and al, 1
cmp byte [ebp - 0x98], 0
je 0x10018c69
mov cl, byte [edi + 0xe9]
test al, al
je 0x10018c88
test cl, cl
jne 0x10018c8c
mov byte [ebp - 0x93], 1
mov byte [ebp - 0x91], 1
mov al, byte [ebp - 0x81]
mov ecx, dword [ebp - 0x88]
jmp 0x10019145
test cl, cl
jne 0x10018c69
cmp byte [ebp - 0xac], 0
je 0x10018c77
mov dword [ebp - 0x90], 0xa
sub esp, 8
lea ecx, [ebp - 0x90]
call fcn.100176b0
add esp, 8
test al, al
je 0x10019136
push dword [ebp - 0x90]
jmp 0x1001897f
test dword [ebx + 0x10], 0x400
je 0x10018d16
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x2c]
test ecx, ecx
js 0x10018d16
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018d16
cmp byte [edi + 0xe9], 0
jne 0x10018d16
cmp byte [edi + 0xea], 0
jne 0x10018d16
cmp byte [edi + 0xeb], 0
jne 0x10018d16
cmp byte [ebp - 0xac], 0
je 0x10018d16
mov edx, dword [ebx + 0x10]
mov dword [ebp - 0x90], 9
jmp 0x10018c9f
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x64]
test ecx, ecx
js 0x10018d3a
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018d3a
mov al, 1
mov byte [ebp - 0x93], al
jmp 0x1001913c
cmp byte [ebp - 0x8b], 0
je 0x10018e5a
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x7c]
test ecx, ecx
js 0x10018db1
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018db1
cmp byte [ebp - 0xac], 0
je 0x10018db1
cmp byte [ebp - 0xe4], 0
je 0x10018db1
push 0x1000a
lea edx, [edi + 0x1c20]
lea ecx, [edi + 0x1be8]
call fcn.10016400
mov eax, dword [edi + 0x1c20]
add esp, 4
mov byte [edi + 0x28b8], 1
mov dword [edi + 0x28b4], 0xbe99999a
mov dword [edi + 0x1c28], eax
mov dword [edi + 0x1c24], eax
jmp 0x10019136
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x78]
test ecx, ecx
js 0x10018e1b
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018e1b
cmp byte [ebp - 0xac], 0
je 0x10018e1b
cmp byte [ebp - 0xe4], 0
je 0x10018e1b
push 0x1000b
lea edx, [edi + 0x1c20]
lea ecx, [edi + 0x1be8]
call fcn.10016400
mov eax, dword [edi + 0x1c20]
add esp, 4
mov byte [edi + 0x28b8], 1
mov dword [edi + 0x28b4], 0xbe99999a
mov dword [edi + 0x1c28], eax
mov dword [edi + 0x1c24], eax
jmp 0x10019136
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x68]
test ecx, ecx
js 0x10018e5a
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10018e5a
mov eax, dword [edi + 0x1c14]
mov dword [edi + 0x1c24], 0
mov dword [edi + 0x1c28], eax
mov dword [edi + 0x1c20], eax
mov byte [edi + 0x28b8], 1
jmp 0x1001912f
mov al, byte [ebp - 0x8c]
test al, al
jne 0x10019030
cmp byte [ebp - 0x89], al
jne 0x10019030
cmp byte [ebp - 0x8a], al
je 0x10019136
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0xbc]
test ecx, ecx
je 0x10018ea6
push dword [eax + 0xc4]
call ecx
mov esi, eax
add esp, 4
test esi, esi
je 0x10019136
jmp 0x10018eab
mov esi, 0x100467a2
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10018eb0
push dword [0x100561a0]
inc dword [0x10056360]
sub ecx, edx
lea eax, [ecx*2 + 2]
push eax
call fcn.10002df0
mov ecx, eax
add esp, 8
xor eax, eax
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0x9c], eax
cmp byte [esi], al
je 0x10018f5c
xor edi, edi
nop dword [eax + eax]
push 0
mov edx, esi
lea ecx, [ebp - 0xa8]
call fcn.100034d0
add esi, eax
add esp, 4
mov eax, dword [ebp - 0xa8]
test eax, eax
je 0x10018f44
cmp eax, 0x10000
jae 0x10018f3f
mov edx, dword [ebx + 0x10]
lea ecx, [ebp - 0xa8]
sub esp, 8
call fcn.100176b0
add esp, 8
test al, al
je 0x10018f3f
mov ecx, dword [ebp - 0xc4]
mov ax, word [ebp - 0xa8]
mov word [ecx + edi*2], ax
inc edi
cmp byte [esi], 0
jne 0x10018ef0
mov ecx, dword [ebp - 0xc4]
mov dword [ebp - 0x9c], edi
mov edi, dword [ebp - 0xdc]
mov eax, dword [ebp - 0x9c]
xor edx, edx
mov word [ecx + eax*2], dx
test eax, eax
jle 0x10019012
mov edx, dword [edi + 0x1c28]
lea esi, [edi + 0x1c20]
mov ecx, dword [esi + 4]
mov eax, dword [edi + 0x1c14]
cmp ecx, edx
je 0x10018f9b
cmp ecx, eax
jle 0x10018f8c
mov dword [esi + 4], eax
mov ecx, eax
cmp edx, eax
jle 0x10018f95
mov dword [esi + 8], eax
mov edx, eax
cmp ecx, edx
jne 0x10018f9b
mov dword [esi], ecx
cmp dword [esi], eax
jle 0x10018fa1
mov dword [esi], eax
mov edx, esi
lea ecx, [edi + 0x1be8]
call fcn.10016370
push dword [ebp - 0x9c]
mov edx, dword [esi]
lea ecx, [edi + 0x1be8]
push dword [ebp - 0xc4]
call fcn.10015e40
add esp, 8
test al, al
je 0x10018ff1
push dword [ebp - 0x9c]
mov edx, dword [esi]
lea ecx, [esi + 0x18]
push 0
call fcn.10017140
mov eax, dword [ebp - 0x9c]
add esp, 8
add dword [esi], eax
mov byte [esi + 0xf], 0
jmp 0x10019005
movzx eax, word [esi + 0xc8a]
test ax, ax
je 0x10019005
dec eax
mov word [esi + 0xc8a], ax
mov ecx, dword [ebp - 0xc4]
mov byte [edi + 0x28b8], 1
test ecx, ecx
je 0x1001901c
dec dword [0x10056360]
push dword [0x100561a0]
push ecx
call fcn.10002e10
add esp, 8
jmp 0x10019136
cmp dword [edi + 0xc0], 0
je 0x100190d4
mov ecx, dword [edi + 0x1c28]
mov eax, dword [edi + 0x1c24]
cmp eax, ecx
je 0x10019057
mov edx, ecx
cmovl ecx, eax
cmovge edx, eax
jmp 0x1001905f
mov edx, dword [edi + 0x1c14]
xor ecx, ecx
mov dword [ebp - 0x90], edx
sub edx, ecx
mov dword [ebp - 0xc8], ecx
lea ecx, [edi + 0x1c04]
lea eax, [edx*4 + 1]
push eax
call fcn.1001d440
mov ecx, dword [edi + 0x1bf4]
mov eax, dword [ebp - 0x90]
mov edx, dword [edi + 0x1c04]
lea eax, [ecx + eax*2]
push eax
mov eax, dword [ebp - 0xc8]
lea eax, [ecx + eax*2]
mov ecx, dword [edi + 0x1c0c]
push eax
call fcn.10003730
mov eax, dword [0x100561a4]
add esp, 8
mov ecx, dword [eax + 0xc0]
test ecx, ecx
je 0x100190ce
push dword [edi + 0x1c0c]
push dword [eax + 0xc4]
call ecx
add esp, 8
mov al, byte [ebp - 0x8c]
test al, al
je 0x10019136
mov eax, dword [edi + 0x1c24]
cmp eax, dword [edi + 0x1c28]
jne 0x10019109
mov eax, dword [edi + 0x1c14]
mov dword [edi + 0x1c24], 0
mov dword [edi + 0x1c28], eax
mov dword [edi + 0x1c20], eax
mov byte [edi + 0x1c2f], 0
mov byte [edi + 0x28b8], 1
mov eax, dword [edi + 0x1c24]
cmp eax, dword [edi + 0x1c28]
je 0x10019136
lea edx, [edi + 0x1c20]
lea ecx, [edi + 0x1be8]
call fcn.10016370
mov byte [edi + 0x1c2f], 0
mov al, byte [ebp - 0x81]
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebx + 0x10]
cmp dword [edi + 0x1940], ecx
jne 0x100194c3
test al, al
je 0x100191a7
cmp byte [ebp - 0xac], 0
je 0x1001918e
mov esi, dword [ebx + 8]
cmp esi, 1
jb 0x10019187
push esi
push dword [edi + 0x1c00]
push dword [ebp - 0xb8]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, dword [ebp - 0xb8]
add esp, 0xc
mov byte [eax + esi - 1], 0
mov byte [ebp - 0xb1], 1
cmp byte [ebp - 0x91], 0
je 0x100194c3
mov edx, dword [ebx + 0x10]
test dl, 0x20
je 0x100194c3
cmp byte [ebp - 0xac], 0
je 0x100191e4
mov eax, dword [edi + 0x1bec]
lea ecx, [edi + 0x1c04]
shl eax, 2
push eax
call fcn.1001d440
mov edx, dword [edi + 0x1c04]
mov ecx, dword [edi + 0x1c0c]
push 0
push dword [edi + 0x1bf4]
call fcn.10003730
mov edx, dword [ebx + 0x10]
add esp, 8
test edx, 0x1c0
je 0x1001945a
push 0x2786
push str.D:_sources_src_2depsimguiimgui.cpp
push str.callback___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [ebx + 0x10]
add esp, 0xc
mov esi, 0x15
test dl, 0x40
je 0x10019236
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x2c]
test ecx, ecx
js 0x10019236
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x10019233
lea eax, [esi + 0x2b]
xor esi, esi
jmp 0x1001928e
mov edx, dword [ebx + 0x10]
test dl, dl
jns 0x1001927c
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x1001925b
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x1001925b
mov eax, 0x80
lea esi, [eax - 0x7d]
jmp 0x1001928e
mov eax, dword [0x100561a4]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x1001927c
mov dl, 1
call fcn.1000b7f0
test al, al
je 0x1001927c
mov eax, 0x80
lea esi, [eax - 0x7c]
jmp 0x1001928e
test dword [ebx + 0x10], 0x100
je 0x1001945a
mov eax, 0x100
mov dword [ebp - 0x80], eax
xor ecx, ecx
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0x7c], eax
mov al, byte [ebp - 0xac]
xor al, 1
mov dword [ebp - 0x70], esi
mov esi, dword [edi + 0x1bf4]
mov byte [ebp - 0x74], al
mov eax, dword [edi + 0x1c0c]
mov dword [ebp - 0x6c], eax
mov eax, dword [edi + 0x1c10]
mov dword [ebp - 0x68], eax
mov eax, dword [edi + 0x1c18]
mov dword [ebp - 0x64], eax
mov eax, dword [edi + 0x1c20]
mov word [ebp - 0x73], cx
mov byte [ebp - 0x71], cl
mov word [ebp - 0x5f], cx
mov byte [ebp - 0x5d], cl
lea edx, [esi + eax*2]
mov dword [ebp - 0x78], ecx
mov byte [ebp - 0x60], cl
mov ecx, esi
call fcn.10003860
mov ecx, dword [edi + 0x1c24]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0x5c], eax
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.10003860
mov ecx, dword [edi + 0x1c28]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x58], eax
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.10003860
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x80]
push eax
xor eax, eax
call eax
mov esi, dword [ebp - 0x6c]
add esp, 4
cmp esi, dword [edi + 0x1c0c]
je 0x10019358
push 0x27b6
push str.D:_sources_src_2depsimguiimgui.cpp
push str.callback_data.Buf__edit_state.TempTextBuffer.Data
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov esi, dword [ebp - 0x6c]
add esp, 0xc
mov eax, dword [ebp - 0x64]
cmp eax, dword [edi + 0x1c18]
je 0x1001937e
push 0x27b7
push str.D:_sources_src_2depsimguiimgui.cpp
push str.callback_data.BufSize__edit_state.BufSizeA
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov esi, dword [ebp - 0x6c]
add esp, 0xc
mov eax, dword [ebx + 0x10]
cmp dword [ebp - 0x7c], eax
je 0x100193a1
push 0x27b8
push str.D:_sources_src_2depsimguiimgui.cpp
push str.callback_data.Flags__flags
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov esi, dword [ebp - 0x6c]
add esp, 0xc
mov eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0xb0]
je 0x100193bc
lea edx, [eax + esi]
mov ecx, esi
call fcn.100036e0
mov dword [edi + 0x1c20], eax
mov eax, dword [ebp - 0x58]
cmp eax, dword [ebp - 0xc0]
je 0x100193d7
lea edx, [eax + esi]
mov ecx, esi
call fcn.100036e0
mov dword [edi + 0x1c24], eax
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x90]
je 0x100193f2
lea edx, [eax + esi]
mov ecx, esi
call fcn.100036e0
mov dword [edi + 0x1c28], eax
cmp byte [ebp - 0x60], 0
je 0x1001945a
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10019400
sub ecx, edx
cmp dword [ebp - 0x68], ecx
je 0x10019429
push 0x27be
push str.D:_sources_src_2depsimguiimgui.cpp
push str.callback_data.BufTextLen___int_strlen_callback_data.Buf_
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov esi, dword [ebp - 0x6c]
add esp, 0xc
mov edx, dword [edi + 0x1bec]
push 0
push ecx
mov ecx, dword [edi + 0x1bf4]
push esi
call fcn.10003670
mov dword [edi + 0x1c14], eax
add esp, 0xc
mov eax, dword [ebp - 0x68]
mov dword [edi + 0x1c10], eax
mov dword [edi + 0x28b4], 0xbe99999a
cmp byte [ebp - 0xac], 0
je 0x100194c3
mov esi, dword [edi + 0x1c0c]
mov eax, esi
mov ecx, dword [ebp - 0xb8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10019491
test dl, dl
je 0x1001948d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10019491
add eax, 2
add ecx, 2
test dl, dl
jne 0x10019471
xor eax, eax
jmp 0x10019496
sbb eax, eax
or eax, 1
test eax, eax
je 0x100194c3
mov eax, dword [ebx + 8]
cmp eax, 1
jb 0x100194bc
push eax
push esi
mov esi, dword [ebp - 0xb8]
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy]
mov eax, dword [ebx + 8]
add esp, 0xc
mov byte [esi + eax - 1], 0
mov byte [ebp - 0xb1], 1
cmp byte [ebp - 0x93], 0
mov eax, dword [ebp - 0x88]
je 0x1001952a
cmp dword [edi + 0x1940], eax
jne 0x10019547
mov edx, dword [0x100561a4]
mov ecx, dword [edx + 0x1940]
test ecx, ecx
setne al
mov byte [edx + 0x194d], al
test ecx, ecx
je 0x100194ff
mov dword [edx + 0x1948], 0
mov eax, dword [ebp - 0x88]
mov dword [edx + 0x1940], 0
mov dword [edx + 0x1950], 0
mov byte [edx + 0x194e], 0
mov dword [edx + 0x195c], 0
cmp dword [edi + 0x1940], eax
jne 0x10019547
cmp byte [ebp - 0xac], 0
je 0x10019547
mov ecx, dword [edi + 0x1c0c]
mov dword [ebp - 0xb8], ecx
push 1
mov edx, eax
lea ecx, [ebp - 0x50]
call fcn.1000b2e0
movss xmm4, dword [0x1004ff50]
add esp, 4
cmp byte [ebp - 0x98], 0
jne 0x100196a3
mov eax, dword [0x100561a4]
xorps xmm1, xmm1
movss xmm6, dword [0x1004feb0]
movups xmm3, xmmword [eax + 0x15f0]
comiss xmm1, xmm3
movaps xmm2, xmm3
movaps xmmword [ebp - 0x30], xmm3
shufps xmm2, xmm3, 0xff
mulss xmm2, dword [eax + 0x14e8]
jbe 0x1001959f
xorps xmm0, xmm0
jmp 0x100195a6
movaps xmm0, xmm6
minss xmm0, xmm3
movss xmm5, dword [0x1004fe78]
movss xmm3, dword [ebp - 0x2c]
comiss xmm1, xmm3
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si edx, xmm0
jbe 0x100195c9
xorps xmm0, xmm0
jmp 0x100195d0
movaps xmm0, xmm6
minss xmm0, xmm3
movss xmm3, dword [ebp - 0x28]
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm1, xmm3
jbe 0x100195f0
xorps xmm0, xmm0
jmp 0x100195f7
movaps xmm0, xmm6
minss xmm0, xmm3
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm1, xmm2
jbe 0x10019612
xorps xmm0, xmm0
jmp 0x10019619
movaps xmm0, xmm6
minss xmm0, xmm2
push dword [ebp - 0x44]
movss xmm2, dword [edi + 0x1524]
push dword [ebp - 0x48]
mulss xmm0, xmm4
push dword [ebp - 0x4c]
push dword [ebp - 0x50]
addss xmm0, xmm5
cvttss2si ecx, xmm0
shl ecx, 0x18
or ecx, edx
mov dl, 1
call fcn.1000aa80
movss xmm1, dword [ebp - 0x50]
add esp, 0x10
movss xmm0, dword [ebp - 0xcc]
movss xmm2, dword [ebp - 0x4c]
addss xmm0, xmm1
mov edx, dword [ebp - 0xbc]
movss dword [ebp - 0x14], xmm1
movss dword [ebp - 0x10], xmm2
movss dword [ebp - 0xc], xmm0
movss xmm0, dword [ebp - 0xe0]
addss xmm0, xmm2
movss dword [ebp - 8], xmm0
movaps xmm0, xmm2
addss xmm1, dword [edi + 0x151c]
addss xmm0, dword [edi + 0x1520]
movss dword [ebp - 0x38], xmm1
movss dword [ebp - 0x34], xmm0
jmp 0x100196f0
movss xmm1, dword [ebp - 0x50]
movss xmm0, dword [ebp - 0xcc]
movss xmm2, dword [ebp - 0x4c]
addss xmm0, xmm1
mov edx, dword [ebp - 0xbc]
movss dword [ebp - 0x14], xmm1
movss dword [ebp - 0x10], xmm2
movss dword [ebp - 0xc], xmm0
movaps xmm0, xmm2
addss xmm0, dword [ebp - 0xe0]
movss dword [ebp - 8], xmm0
mov eax, dword [edx + 0xdc]
mov ecx, dword [edx + 0xe0]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
mov esi, dword [ebp - 0x88]
lea eax, [ebp - 0x38]
xorps xmm4, xmm4
movss xmm0, dword [eax]
movss dword [ebp - 0xd4], xmm0
movss xmm0, dword [eax + 4]
mov dword [ebp - 0xd8], eax
lea eax, [edi + 0x1be8]
movss dword [ebp - 0xa4], xmm0
movss dword [ebp - 0xd0], xmm0
xorps xmm0, xmm0
movss dword [ebp - 0xc8], xmm0
movss dword [ebp - 0x90], xmm4
cmp dword [eax], esi
jne 0x100197a1
cmp byte [ebp - 0x98], 0
je 0x100197a1
mov ecx, dword [edx + 0x1d8]
test ecx, ecx
jg 0x1001977a
push 0x467
push str.D:_sources_src_2depsimguiimgui.h
push str.Size___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [ebp - 0xbc]
add esp, 0xc
xorps xmm4, xmm4
mov ecx, dword [edx + 0x1d8]
mov eax, dword [edx + 0x1e0]
xor edx, edx
push dword [eax + ecx*4 - 4]
mov ecx, str.SCROLLY
call fcn.100033b0
mov ecx, dword [edi + 0x1940]
add esp, 4
cmp ecx, eax
jne 0x100197a1
mov al, 1
jmp 0x100197a9
mov ecx, dword [edi + 0x1940]
xor al, al
cmp ecx, esi
je 0x1001994c
test al, al
jne 0x1001994c
mov esi, dword [ebp - 0xb8]
xor edx, edx
cmp byte [ebp - 0x98], dl
je 0x10019836
mov al, byte [esi]
lea edx, [esi + 1]
xor ecx, ecx
mov byte [ebp - 0x89], al
test al, al
je 0x100197fc
nop word [eax + eax]
cmp byte [ebp - 0x89], 0xa
lea eax, [ecx + 1]
cmovne eax, ecx
mov ecx, eax
mov al, byte [edx]
inc edx
mov byte [ebp - 0x89], al
test al, al
jne 0x100197e0
mov al, byte [edx - 1]
dec edx
cmp al, 0xa
je 0x10019809
cmp al, 0xd
je 0x10019809
inc ecx
movss xmm3, dword [edi + 0x1854]
movss xmm0, dword [ebp - 0xcc]
movd xmm5, ecx
cvtdq2ps xmm5, xmm5
movss dword [ebp - 0xc8], xmm0
mulss xmm5, xmm3
movss dword [ebp - 0x90], xmm5
jmp 0x1001983e
movss xmm3, dword [edi + 0x1854]
mov eax, dword [0x100561a4]
movss xmm7, dword [0x1004feb0]
movups xmm2, xmmword [eax + 0x1580]
comiss xmm4, xmm2
movaps xmm1, xmm2
movaps xmmword [ebp - 0x30], xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [eax + 0x14e8]
jbe 0x1001986f
movaps xmm0, xmm4
jmp 0x10019876
movaps xmm0, xmm7
minss xmm0, xmm2
movss xmm5, dword [0x1004ff50]
movss xmm6, dword [0x1004fe78]
movss xmm2, dword [ebp - 0x2c]
comiss xmm4, xmm2
mulss xmm0, xmm5
addss xmm0, xmm6
cvttss2si ecx, xmm0
jbe 0x100198a1
movaps xmm0, xmm4
jmp 0x100198a8
movaps xmm0, xmm7
minss xmm0, xmm2
movss xmm2, dword [ebp - 0x28]
mulss xmm0, xmm5
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm4, xmm2
jbe 0x100198c8
movaps xmm0, xmm4
jmp 0x100198cf
movaps xmm0, xmm7
minss xmm0, xmm2
mulss xmm0, xmm5
addss xmm0, xmm6
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm4, xmm1
jbe 0x100198ea
movaps xmm7, xmm4
jmp 0x100198ee
minss xmm7, xmm1
cmp byte [ebp - 0x98], 0
lea eax, [ebp - 0x14]
mulss xmm7, xmm5
movaps xmm2, xmm3
mov dword [ebp - 0xb0], 0
cmovne eax, dword [ebp - 0xb0]
push eax
addss xmm7, xmm6
push ecx
mov dword [esp], 0
push edx
push esi
cvttss2si eax, xmm7
shl eax, 0x18
or eax, ecx
push eax
lea eax, [ebp - 0xd4]
push eax
mov eax, dword [ebp - 0xbc]
push dword [edi + 0x1850]
mov ecx, dword [eax + 0x268]
call fcn.10026bc0
jmp 0x1001a406
mov ecx, dword [edi + 0x1bf4]
xorps xmm7, xmm7
mov eax, dword [edi + 0x1c20]
xorps xmm3, xmm3
movss xmm0, dword [edi + 0xc]
addss xmm0, dword [edi + 0x28b4]
mov edx, dword [edi + 0x1c24]
lea eax, [ecx + eax*2]
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0xe4], eax
mov ecx, 1
mov eax, dword [edi + 0x1c28]
movss dword [edi + 0x28b4], xmm0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0x88], 0xfffffc19
cmp edx, eax
je 0x100199cc
mov ecx, dword [ebp - 0x9c]
cmovl eax, edx
mov dword [ebp - 0x88], 0xffffffff
lea eax, [ecx + eax*2]
mov ecx, 2
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x98]
mov esi, dword [ebp - 0x9c]
mov edx, esi
movzx eax, al
add ecx, eax
xor eax, eax
mov dword [ebp - 0xa8], eax
movzx esi, word [esi]
test si, si
lea esi, [eax - 1]
je 0x10019a63
mov edi, edx
movzx esi, word [edi]
or edi, 0xffffffff
nop word [eax + eax]
cmp si, 0xa
jne 0x10019a3d
inc eax
mov dword [ebp - 0xa8], eax
cmp edi, 0xffffffff
jne 0x10019a21
cmp edx, dword [ebp - 0xe4]
jb 0x10019a21
dec ecx
mov edi, eax
test ecx, ecx
jle 0x10019a51
cmp dword [ebp - 0x88], 0xffffffff
jne 0x10019a3d
cmp edx, dword [ebp - 0xc4]
jb 0x10019a3d
dec ecx
mov dword [ebp - 0x88], eax
test ecx, ecx
jle 0x10019a51
movzx eax, word [edx + 2]
add edx, 2
mov esi, eax
test ax, ax
mov eax, dword [ebp - 0xa8]
jne 0x10019a00
mov dword [ebp - 0xa8], edi
mov edi, dword [ebp - 0xdc]
mov esi, dword [ebp - 0xa8]
mov edx, dword [ebp - 0x9c]
inc eax
cmp esi, 0xffffffff
mov dword [ebp - 0xa8], eax
mov ecx, eax
cmovne ecx, esi
mov esi, dword [ebp - 0xe4]
mov dword [ebp - 0xb0], ecx
mov ecx, dword [ebp - 0x88]
cmp ecx, 0xffffffff
cmove ecx, eax
mov dword [ebp - 0x88], ecx
mov ecx, esi
cmp esi, edx
jbe 0x10019aae
nop dword [eax]
cmp word [ecx - 2], 0xa
je 0x10019aae
add ecx, 0xfffffffe
cmp ecx, edx
ja 0x10019aa0
mov eax, dword [0x100561a4]
movaps xmm1, xmm4
movaps xmm6, xmm4
mov edx, dword [eax + 0x1850]
movss xmm5, dword [eax + 0x1854]
divss xmm5, dword [edx]
cmp ecx, esi
jae 0x10019b1b
mov edi, dword [ebp - 0xe4]
movzx eax, word [ecx]
add ecx, 2
mov esi, eax
cmp eax, 0xa
jne 0x10019aeb
maxss xmm1, xmm6
movaps xmm6, xmm4
jmp 0x10019b11
cmp esi, 0xd
je 0x10019b11
mov esi, eax
cmp esi, dword [edx + 0x1c]
jge 0x10019b01
mov eax, dword [edx + 0x24]
movss xmm2, dword [eax + esi*4]
jmp 0x10019b06
movss xmm2, dword [edx + 0x38]
movaps xmm0, xmm5
mulss xmm0, xmm2
addss xmm6, xmm0
cmp ecx, edi
jb 0x10019ad5
mov edi, dword [ebp - 0xdc]
cmp dword [ebp - 0x88], 0
maxss xmm6, xmm1
movd xmm0, dword [ebp - 0xb0]
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0xc0], xmm6
movss xmm6, dword [edi + 0x1854]
mulss xmm0, xmm6
movss dword [ebp - 0xb0], xmm0
jl 0x10019be9
mov eax, dword [ebp - 0xc4]
mov ecx, eax
mov esi, dword [ebp - 0x9c]
cmp eax, esi
jbe 0x10019b79
cmp word [ecx - 2], 0xa
je 0x10019b73
add ecx, 0xfffffffe
cmp ecx, esi
ja 0x10019b65
mov eax, dword [ebp - 0xc4]
movaps xmm1, xmm4
movaps xmm3, xmm4
cmp ecx, eax
jae 0x10019bd6
mov edi, dword [ebp - 0xc4]
nop dword [eax]
movzx eax, word [ecx]
add ecx, 2
mov esi, eax
cmp eax, 0xa
jne 0x10019ba6
maxss xmm1, xmm3
movaps xmm3, xmm4
jmp 0x10019bcc
cmp esi, 0xd
je 0x10019bcc
mov esi, eax
cmp esi, dword [edx + 0x1c]
jge 0x10019bbc
mov eax, dword [edx + 0x24]
movss xmm2, dword [eax + esi*4]
jmp 0x10019bc1
movss xmm2, dword [edx + 0x38]
movaps xmm0, xmm5
mulss xmm0, xmm2
addss xmm3, xmm0
cmp ecx, edi
jb 0x10019b90
mov edi, dword [ebp - 0xdc]
movd xmm7, dword [ebp - 0x88]
maxss xmm3, xmm1
cvtdq2ps xmm7, xmm7
mulss xmm7, xmm6
mov ecx, dword [ebp - 0x98]
movss xmm5, dword [ebp - 0xcc]
test cl, cl
je 0x10019c1d
movd xmm0, dword [ebp - 0xa8]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm6
movss dword [ebp - 0x90], xmm0
movaps xmm0, xmm5
movss dword [ebp - 0xc8], xmm0
cmp byte [edi + 0x28b8], 0
je 0x10019cf1
test dword [ebx + 0x10], 0x1000
jne 0x10019c82
movss xmm2, dword [edi + 0x1c1c]
movaps xmm0, xmm5
movss xmm1, dword [ebp - 0xc0]
comiss xmm2, xmm1
mulss xmm0, dword [0x1004fe64]
jbe 0x10019c60
subss xmm1, xmm0
movaps xmm0, xmm4
maxss xmm0, xmm1
jmp 0x10019c6d
subss xmm1, xmm5
comiss xmm1, xmm2
jb 0x10019c8c
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x1c1c], xmm0
jmp 0x10019c8c
mov dword [edi + 0x1c1c], 0
test cl, cl
je 0x10019cf1
movss xmm0, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xbc]
movaps xmm1, xmm0
subss xmm1, dword [edi + 0x1854]
movss xmm2, dword [eax + 0x70]
comiss xmm2, xmm1
jbe 0x10019cbc
movaps xmm0, xmm4
maxss xmm0, xmm1
jmp 0x10019cc8
subss xmm0, dword [ebp - 0xe0]
maxss xmm0, xmm2
subss xmm2, xmm0
movss dword [eax + 0x70], xmm0
addss xmm2, dword [eax + 0xe0]
movss dword [ebp - 0xa4], xmm2
movss dword [eax + 0xe0], xmm2
movss dword [ebp - 0xd0], xmm2
movss xmm6, dword [edi + 0x1c1c]
mov ecx, dword [edi + 0x1c28]
mov edx, dword [edi + 0x1c24]
mov byte [edi + 0x28b8], 0
movss dword [ebp - 0xa8], xmm6
cmp edx, ecx
je 0x1001a060
mov esi, dword [ebp - 0x9c]
mov eax, ecx
cmovl eax, edx
cmovge ecx, edx
cmp byte [ebp - 0x98], 0
lea esi, [esi + eax*2]
mov eax, dword [ebp - 0x9c]
lea ecx, [eax + ecx*2]
mov dword [ebp - 0xe4], ecx
je 0x10019d57
movss dword [ebp - 0xf4], xmm4
movss dword [ebp - 0xdc], xmm4
jmp 0x10019d67
movss xmm0, dword [0x1004fee4]
movss dword [ebp - 0xdc], xmm0
mov eax, dword [0x100561a4]
movups xmm2, xmmword [eax + 0x1800]
comiss xmm4, xmm2
movaps xmm1, xmm2
movaps xmmword [ebp - 0x30], xmm2
shufps xmm1, xmm2, 0xff
mulss xmm1, dword [eax + 0x14e8]
jbe 0x10019d90
movaps xmm0, xmm4
jmp 0x10019d9c
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm2
movss xmm5, dword [0x1004ff50]
movss xmm2, dword [ebp - 0x2c]
comiss xmm4, xmm2
mulss xmm0, xmm5
addss xmm0, dword [0x1004fe78]
cvttss2si edx, xmm0
jbe 0x10019dc3
movaps xmm0, xmm4
jmp 0x10019dcf
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm2
movss xmm2, dword [ebp - 0x28]
mulss xmm0, xmm5
addss xmm0, dword [0x1004fe78]
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm4, xmm2
jbe 0x10019df3
movaps xmm0, xmm4
jmp 0x10019dff
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm2
movss xmm2, dword [0x1004fe78]
mulss xmm0, xmm5
addss xmm0, xmm2
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm4, xmm1
jbe 0x10019e22
movaps xmm0, xmm4
jmp 0x10019e2e
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm1
mulss xmm0, xmm5
addss xmm0, xmm2
cvttss2si eax, xmm0
shl eax, 0x18
or eax, edx
mov edx, dword [ebp - 0xd8]
mov dword [ebp - 0x9c], eax
movss xmm5, dword [edx]
addss xmm5, xmm3
movss xmm3, dword [ebp - 0xa4]
subss xmm5, xmm6
movaps xmm6, xmm3
addss xmm6, xmm7
subss xmm6, xmm4
movss dword [ebp - 0xc4], xmm6
cmp esi, ecx
jae 0x1001a09d
movss xmm1, dword [edi + 0x1854]
movss xmm3, dword [ebp - 8]
movss xmm2, dword [ebp - 0x10]
nop dword [eax]
movaps xmm0, xmm3
addss xmm0, xmm1
comiss xmm6, xmm0
ja 0x1001a058
comiss xmm2, xmm6
jbe 0x10019ec8
cmp esi, ecx
jae 0x1001a030
nop dword [eax]
movzx eax, word [esi]
add esi, 2
cmp eax, 0xa
je 0x1001a030
cmp esi, ecx
jb 0x10019eb0
jmp 0x1001a030
mov eax, dword [0x100561a4]
movaps xmm7, xmm4
movaps xmm1, xmm4
mov edx, dword [eax + 0x1850]
movss xmm3, dword [eax + 0x1854]
divss xmm3, dword [edx]
cmp esi, ecx
jae 0x10019f3d
nop dword [eax]
movzx eax, word [esi]
add esi, 2
mov ecx, eax
cmp eax, 0xa
je 0x10019f2d
cmp ecx, 0xd
je 0x10019f21
cmp ecx, dword [edx + 0x1c]
jge 0x10019f11
mov eax, dword [edx + 0x24]
movss xmm2, dword [eax + ecx*4]
jmp 0x10019f16
movss xmm2, dword [edx + 0x38]
movaps xmm0, xmm3
mulss xmm0, xmm2
addss xmm1, xmm0
mov ecx, dword [ebp - 0xe4]
cmp esi, ecx
jb 0x10019ef0
jmp 0x10019f3d
mov ecx, dword [ebp - 0xe4]
movaps xmm7, xmm4
maxss xmm7, xmm1
movaps xmm1, xmm4
maxss xmm1, xmm7
comiss xmm4, xmm1
jb 0x10019f77
mov eax, dword [edi + 0x1850]
cmp dword [eax + 0x1c], 0x20
jle 0x10019f5f
mov eax, dword [eax + 0x24]
movss xmm0, dword [eax + 0x80]
jmp 0x10019f64
movss xmm0, dword [eax + 0x38]
mulss xmm0, dword [0x1004fe78]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss xmm2, dword [ebp - 0xf4]
addss xmm1, xmm5
subss xmm2, dword [edi + 0x1854]
movss xmm0, dword [ebp - 0xdc]
addss xmm5, xmm4
movss xmm3, dword [ebp - 8]
addss xmm0, xmm6
minss xmm1, dword [ebp - 0xc]
addss xmm2, xmm6
maxss xmm5, dword [ebp - 0x14]
minss xmm0, xmm3
movss dword [ebp - 0x28], xmm1
maxss xmm2, dword [ebp - 0x10]
movss dword [ebp - 0x30], xmm5
comiss xmm0, dword [ebp - 0x10]
movss dword [ebp - 0x2c], xmm2
movss dword [ebp - 0x24], xmm0
jbe 0x1001a025
comiss xmm3, xmm2
jbe 0x1001a025
comiss xmm1, dword [ebp - 0x14]
jbe 0x1001a025
movss xmm0, dword [ebp - 0xc]
comiss xmm0, xmm5
jbe 0x1001a025
push 0xf
push ecx
mov dword [esp], 0
lea eax, [ebp - 0x28]
push dword [ebp - 0x9c]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax + 0x268]
call fcn.10026930
movss xmm6, dword [ebp - 0xc4]
xorps xmm4, xmm4
movss xmm3, dword [ebp - 8]
mov ecx, dword [ebp - 0xe4]
movss xmm2, dword [ebp - 0x10]
mov edx, dword [ebp - 0xd8]
movss xmm1, dword [edi + 0x1854]
movss xmm5, dword [edx]
addss xmm6, xmm1
subss xmm5, dword [ebp - 0xa8]
movss dword [ebp - 0xc4], xmm6
cmp esi, ecx
jb 0x10019e90
movss xmm6, dword [ebp - 0xa8]
movss xmm3, dword [ebp - 0xa4]
mov eax, dword [0x100561a4]
mov edx, dword [edi + 0x1c10]
add edx, dword [ebp - 0xb8]
movups xmm1, xmmword [eax + 0x1580]
comiss xmm4, xmm1
movaps xmm2, xmm1
movaps xmmword [ebp - 0x30], xmm1
shufps xmm2, xmm1, 0xff
mulss xmm2, dword [eax + 0x14e8]
jbe 0x1001a0a7
movaps xmm0, xmm4
jmp 0x1001a0b3
movss xmm6, dword [ebp - 0xa8]
jmp 0x1001a068
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm1
movss xmm5, dword [0x1004ff50]
movss xmm7, dword [0x1004fe78]
movss xmm1, dword [ebp - 0x2c]
comiss xmm4, xmm1
mulss xmm0, xmm5
addss xmm0, xmm7
cvttss2si ecx, xmm0
jbe 0x1001a0de
movaps xmm0, xmm4
jmp 0x1001a0ea
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm1
movss xmm1, dword [ebp - 0x28]
mulss xmm0, xmm5
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm4, xmm1
jbe 0x1001a10a
movaps xmm0, xmm4
jmp 0x1001a116
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm1
mulss xmm0, xmm5
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm4, xmm2
jbe 0x1001a131
movaps xmm1, xmm4
jmp 0x1001a13d
movss xmm1, dword [0x1004feb0]
minss xmm1, xmm2
cmp byte [ebp - 0x98], 0
lea eax, [ebp - 0x14]
mov esi, dword [ebp - 0xd8]
subss xmm3, xmm4
mulss xmm1, xmm5
mov dword [ebp - 0xf4], 0
cmovne eax, dword [ebp - 0xf4]
movss xmm0, dword [esi]
push eax
movss xmm2, dword [edi + 0x1854]
addss xmm1, xmm7
push ecx
mov dword [esp], 0
subss xmm0, xmm6
push edx
push dword [ebp - 0xb8]
cvttss2si eax, xmm1
movss dword [ebp - 0xe8], xmm0
shl eax, 0x18
or eax, ecx
movss dword [ebp - 0xe4], xmm3
push eax
lea eax, [ebp - 0xe8]
push eax
mov eax, dword [ebp - 0xbc]
push dword [edi + 0x1850]
mov ecx, dword [eax + 0x268]
call fcn.10026bc0
cmp byte [edi + 0xb5], 0
je 0x1001a21a
movss xmm0, dword [edi + 0x28b4]
xorps xmm4, xmm4
comiss xmm4, xmm0
jae 0x1001a21a
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0xf8], xmm0
fld qword [ebp - 0xf8]
fld qword [0x1004fed8]
call sub.api_ms_win_crt_math_l1_1_0.dll__CIfmod
movss xmm0, dword [0x1004fe94]
fstp qword [ebp - 0xf8]
movsd xmm1, qword [ebp - 0xf8]
cvtpd2ps xmm1, xmm1
comiss xmm0, xmm1
jae 0x1001a21a
xor al, al
jmp 0x1001a21c
mov al, 1
movss xmm0, dword [ebp - 0xa4]
xorps xmm1, xmm1
movss xmm6, dword [esi]
movss xmm7, dword [0x1004fe78]
movss xmm5, dword [0x1004feb0]
addss xmm0, dword [ebp - 0xb0]
addss xmm6, dword [ebp - 0xc0]
subss xmm0, xmm1
subss xmm6, dword [ebp - 0xa8]
movss dword [ebp - 0xa4], xmm0
movaps xmm2, xmm0
movss dword [ebp - 0xc0], xmm6
movaps xmm3, xmm6
movss dword [ebp - 0x30], xmm6
movaps xmm4, xmm0
addss xmm3, xmm5
subss xmm2, dword [edi + 0x1854]
subss xmm4, dword [0x1004fec0]
movss dword [ebp - 0x28], xmm3
addss xmm2, xmm7
movss dword [ebp - 0x24], xmm4
movss dword [ebp - 0x2c], xmm2
test al, al
je 0x1001a3db
comiss xmm4, dword [ebp - 0x10]
jbe 0x1001a3db
movss xmm0, dword [ebp - 8]
comiss xmm0, xmm2
jbe 0x1001a3d3
comiss xmm3, dword [ebp - 0x14]
jbe 0x1001a3d3
movss xmm0, dword [ebp - 0xc]
comiss xmm0, xmm6
jbe 0x1001a3d3
mov eax, dword [0x100561a4]
movups xmm3, xmmword [eax + 0x1580]
comiss xmm1, xmm3
movaps xmm2, xmm3
movaps xmmword [ebp - 0x40], xmm3
shufps xmm2, xmm3, 0xff
mulss xmm2, dword [eax + 0x14e8]
jbe 0x1001a2fd
xorps xmm0, xmm0
jmp 0x1001a304
movaps xmm0, xmm5
minss xmm0, xmm3
movss xmm5, dword [0x1004ff50]
movss xmm3, dword [ebp - 0x3c]
comiss xmm1, xmm3
mulss xmm0, xmm5
addss xmm0, xmm7
cvttss2si ecx, xmm0
jbe 0x1001a327
xorps xmm0, xmm0
jmp 0x1001a333
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm3
movss xmm3, dword [ebp - 0x38]
mulss xmm0, xmm5
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm1, xmm3
jbe 0x1001a353
xorps xmm0, xmm0
jmp 0x1001a35f
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm3
mulss xmm0, xmm5
addss xmm0, xmm7
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm1, xmm2
jbe 0x1001a37a
xorps xmm0, xmm0
jmp 0x1001a386
movss xmm0, dword [0x1004feb0]
minss xmm0, xmm2
mulss xmm0, xmm5
push ecx
mov dword [esp], 0x3f800000
movss dword [ebp - 0x38], xmm6
addss xmm0, xmm7
movss dword [ebp - 0x34], xmm4
cvttss2si eax, xmm0
shl eax, 0x18
or eax, ecx
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x30]
push eax
mov eax, dword [ebp - 0xbc]
mov ecx, dword [eax + 0x268]
call fcn.100267f0
movss xmm6, dword [ebp - 0xc0]
movss xmm5, dword [0x1004feb0]
movss xmm0, dword [ebp - 0xa4]
cmp byte [ebp - 0xac], 0
mov esi, dword [ebp - 0xb8]
je 0x1001a406
subss xmm0, dword [edi + 0x1854]
subss xmm6, xmm5
movss dword [edi + 0x295c], xmm0
movss dword [edi + 0x2958], xmm6
cmp byte [ebp - 0x98], 0
je 0x1001a4c0
mov ecx, dword [0x100561a4]
movss xmm2, dword [edi + 0x1854]
mov eax, dword [ecx + 0x1924]
mov byte [eax + 0x92], 1
mov eax, dword [ecx + 0x1924]
cmp byte [eax + 0x95], 0
jne 0x1001a4ac
movss xmm4, dword [ebp - 0xc8]
lea ecx, [ebp - 0x38]
addss xmm2, dword [ebp - 0x90]
movss xmm1, dword [eax + 0xdc]
xorps xmm3, xmm3
movss xmm0, dword [eax + 0xe0]
addss xmm4, xmm3
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
addss xmm2, xmm0
addss xmm4, xmm1
movss dword [ebp - 0x24], xmm2
subss xmm2, xmm0
movss dword [ebp - 0x28], xmm4
subss xmm4, xmm1
xorps xmm1, xmm1
movss dword [ebp - 0x34], xmm2
movss dword [ebp - 0x38], xmm4
call fcn.10004870
push 0
xor edx, edx
lea ecx, [ebp - 0x30]
call fcn.10004e20
add esp, 4
call fcn.1000c510
call fcn.10012870
call fcn.100127e0
call fcn.1001b030
mov eax, dword [ebp - 0xec]
test al, al
je 0x1001a4d5
call fcn.100126e0
mov eax, dword [ebp - 0xec]
cmp byte [edi + 0x2984], 0
je 0x1001a4f4
test al, al
jne 0x1001a4f4
push 0
mov edx, esi
lea ecx, [ebp - 0xd4]
call fcn.10009fc0
add esp, 4
movss xmm0, dword [ebp - 0xfc]
xorps xmm4, xmm4
comiss xmm0, xmm4
jbe 0x1001a54c
movss xmm0, dword [ebp - 0x48]
xor edx, edx
addss xmm0, dword [edi + 0x1534]
mov ecx, dword [ebp - 0x100]
movss dword [ebp - 0xd4], xmm0
movss xmm0, dword [ebp - 0x4c]
addss xmm0, dword [edi + 0x1520]
movss dword [ebp - 0xd0], xmm0
push dword [ebp - 0xd0]
push dword [ebp - 0xd4]
push 1
call fcn.1000a0d0
add esp, 0xc
test byte [ebx + 0x10], 0x20
movzx ecx, byte [ebp - 0x91]
movzx eax, byte [ebp - 0xb1]
cmovne eax, ecx
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.100401be
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret