Function at 0x10022e90
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, 0x118
mov eax, dword [0x1006b00c]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, ecx
mov ecx, dword [0x100716bc]
push edi
mov edi, edx
mov dword [ebp - 0xcc], esi
mov dword [ebp - 0xa4], edi
mov edx, dword [ecx + 0x3ea0]
mov eax, dword [esi + 0x88]
mov dword [ebp - 0x98], edx
inc eax
mov dl, byte [esi + 0xa0]
mov dword [ebp - 0xa8], ecx
mov dword [ebp - 0xb4], eax
test dl, 0x40
je 0x10022f07
mov byte [ebp - 0x91], 1
cmp eax, dword [ebp - 0x98]
je 0x10022f0e
mov byte [ebp - 0x91], 0
cmp dword [esi + 0x98], 0
je 0x10022f29
mov dword [ebp - 0xc0], 1
cmp eax, dword [ebp - 0x98]
je 0x10022f33
mov dword [ebp - 0xc0], 0
and dl, 0xbf
mov dword [esi + 0x98], 0
mov byte [esi + 0xa0], dl
mov eax, dword [esi + 0x18]
mov byte [ebp - 0x9c], 0
mov dword [ebp - 0xb8], esi
test eax, eax
je 0x10022f75
nop word [eax + eax]
mov edi, eax
mov dword [ebp - 0xb8], edi
mov eax, dword [edi + 0x18]
test eax, eax
jne 0x10022f60
mov edi, dword [ebp - 0xa4]
mov eax, dword [ecx + 0x4270]
mov dword [ebp - 0xc4], 1
test eax, eax
je 0x10022f98
cmp dword [eax + 0x388], esi
sete byte [ebp - 0x9c]
jmp 0x10022fe2
mov eax, dword [ecx + 0x4120]
test eax, eax
je 0x10022fe2
mov eax, dword [eax + 0x330]
cmp eax, dword [edi + 0x32c]
jne 0x10022fe2
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0x9c]
movzx ecx, cl
mov dword [ebp - 0x9c], ecx
mov eax, dword [eax + 0x90]
cmp eax, dword [esi]
mov eax, ecx
mov ecx, dword [ebp - 0xa8]
cmove eax, dword [ebp - 0xc4]
mov dword [ebp - 0x9c], eax
mov eax, dword [esi + 0x10]
test eax, 0x3000
jne 0x10023fbc
mov dl, byte [edi + 0xc8]
shr eax, 0xa
mov byte [ebp - 0xad], dl
test al, 1
jne 0x10023014
mov byte [edi + 0xc8], 0
mov dword [edi + 0x160], 1
mov eax, dword [esi]
mov edi, dword [ecx + 0x3f04]
mov dword [ebp - 0x70], eax
cmp dword [ecx + 0x3f28], eax
jne 0x10023039
push ecx
push 0
mov edx, 0xd
mov ecx, eax
call fcn.10029a10
add esp, 8
lea eax, [ebp - 0x70]
push eax
lea ecx, [edi + 0xfc]
call fcn.10029d00
mov eax, dword [esi + 0x30]
mov edi, eax
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0x70], eax
test edi, edi
jne 0x10023067
mov ecx, esi
call fcn.10024040
mov edi, dword [esi + 0x30]
mov dword [ebp - 0x70], edi
mov cl, byte [esi + 0xa0]
mov al, byte [ebp - 0x9c]
and cl, 0xfd
add al, al
mov dword [ebp - 0xd0], 0
or cl, al
test dword [esi + 0x10], 0x4000
mov byte [esi + 0xa0], cl
jne 0x100230f1
mov edx, dword [ebp - 0xa8]
cmp dword [edx + 0x387c], 0xffffffff
je 0x100230f1
mov eax, dword [0x100716bc]
push ecx
push str.WindowMenu
mov byte [ebp - 0x69], 1
mov ecx, dword [eax + 0x3f04]
call fcn.10007200
xor edx, edx
mov ecx, eax
call fcn.100162c0
test al, al
je 0x100230f5
mov edx, edi
mov ecx, esi
call fcn.10022c60
test eax, eax
je 0x100230df
mov dword [edi + 0x18], eax
mov dword [ebp - 0xd0], eax
mov al, byte [esi + 0xa0]
shr al, 1
and al, 1
or byte [ebp - 0x9c], al
jmp 0x100230f5
mov byte [ebp - 0x69], 0
mov edx, dword [0x100716bc]
movss xmm7, dword [esi + 0x38]
movss xmm4, dword [esi + 0x34]
movaps xmm6, xmm7
mov al, byte [esi + 0xa0]
movaps xmm3, xmm4
movss xmm2, dword [edx + 0x3c98]
movaps xmm5, xmm4
movss xmm1, dword [edx + 0x3894]
movaps xmm0, xmm2
movss dword [ebp - 0xd8], xmm4
addss xmm1, xmm1
movss dword [ebp - 0x80], xmm4
addss xmm0, xmm7
movss xmm4, dword [edx + 0x3890]
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0
movss dword [ebp - 0xd4], xmm7
movss dword [ebp - 0x7c], xmm7
addss xmm1, xmm0
movss xmm0, dword [edx + 0x3868]
addss xmm5, xmm0
addss xmm3, dword [esi + 0x3c]
movss dword [ebp - 0xbc], xmm1
movss dword [ebp - 0x74], xmm1
movss dword [ebp - 0xac], xmm3
movss xmm1, dword [ebp - 0xac]
movss dword [ebp - 0x78], xmm3
subss xmm1, xmm0
movaps xmm3, xmm4
addss xmm3, xmm5
subss xmm1, xmm4
test al, 8
je 0x100231ca
subss xmm1, xmm2
movss dword [ebp - 0xf4], xmm7
movaps xmm0, xmm1
subss xmm0, xmm4
movss dword [ebp - 0xf8], xmm0
test al, 0x10
je 0x100231f9
cmp dword [edx + 0x387c], 0
jne 0x100231e5
addss xmm2, dword [edx + 0x38a8]
addss xmm3, xmm2
jmp 0x100231f9
cmp dword [edx + 0x387c], 1
jne 0x100231f9
addss xmm2, xmm4
subss xmm1, xmm2
movaps xmm5, xmm1
mov eax, dword [edi]
movss xmm0, dword [ebp - 0xbc]
mov ecx, dword [esi + 0x24]
mov dword [ebp - 0xc8], eax
xor eax, eax
movss dword [ebp - 0x90], xmm3
movss dword [ebp - 0x8c], xmm7
movss dword [ebp - 0x88], xmm1
movss dword [ebp - 0x84], xmm0
movss dword [ebp - 0x104], xmm5
movss dword [ebp - 0x100], xmm6
mov dword [ebp - 0xa0], eax
test ecx, ecx
jle 0x100232c2
test eax, eax
js 0x10023250
cmp eax, ecx
jl 0x10023268
push 0x74d
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.i___0__i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov eax, dword [esi + 0x2c]
mov ecx, dword [ebp - 0xa0]
mov eax, dword [eax + ecx*4]
mov ecx, edi
mov dword [ebp - 0xfc], eax
mov edx, dword [eax + 0x88]
call fcn.1004e7f0
test eax, eax
jne 0x100232a0
push dword [ebp - 0xfc]
mov edx, 0x400000
mov ecx, edi
call fcn.1004e880
add esp, 4
mov eax, dword [ebp - 0xa0]
mov ecx, dword [esi + 0x24]
inc eax
mov dword [ebp - 0xa0], eax
cmp eax, ecx
jl 0x10023248
mov edx, dword [0x100716bc]
movss xmm7, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0x9c]
test cl, cl
je 0x100232de
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax + 0x3ea0]
mov dword [esi + 0x8c], eax
mov eax, dword [ebp - 0xa4]
cmp byte [eax + 0xc6], 0
je 0x100232f4
mov eax, 0xc
jmp 0x100232fe
xor eax, eax
test cl, cl
setne al
add eax, 0xa
movss xmm1, dword [0x100678b4]
add eax, eax
xorps xmm6, xmm6
movups xmm2, xmmword [edx + eax*8 + 0x391c]
comiss xmm6, xmm2
movaps xmm3, xmm2
movaps xmmword [ebp - 0xf0], xmm2
shufps xmm3, xmm2, 0xff
mulss xmm3, dword [edx + 0x3854]
jbe 0x10023333
xorps xmm0, xmm0
jmp 0x1002333a
movaps xmm0, xmm1
minss xmm0, xmm2
movss xmm2, dword [0x10067980]
movss xmm4, dword [0x10067870]
movss xmm5, dword [ebp - 0xec]
comiss xmm6, xmm5
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si ecx, xmm0
jbe 0x10023368
xorps xmm0, xmm0
jmp 0x1002336f
movaps xmm0, xmm1
minss xmm0, xmm5
movss xmm5, dword [ebp - 0xe8]
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 8
or ecx, eax
comiss xmm6, xmm5
jbe 0x10023392
xorps xmm0, xmm0
jmp 0x10023399
movaps xmm0, xmm1
minss xmm0, xmm5
mulss xmm0, xmm2
addss xmm0, xmm4
cvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
comiss xmm6, xmm3
jbe 0x100233b4
xorps xmm1, xmm1
jmp 0x100233b8
minss xmm1, xmm3
mulss xmm1, xmm2
movss xmm2, dword [0x10067900]
addss xmm1, xmm4
cvttss2si eax, xmm1
shl eax, 0x18
or eax, ecx
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xa4]
movss xmm1, dword [eax + 0x40]
movss xmm3, dword [eax + 0x44]
movaps xmm0, xmm1
addss xmm1, dword [eax + 0x48]
addss xmm0, xmm2
subss xmm1, xmm2
comiss xmm0, dword [ebp - 0xd8]
movss xmm0, dword [ebp - 0xac]
setae cl
comiss xmm0, xmm1
movaps xmm0, xmm3
addss xmm3, dword [eax + 0x4c]
addss xmm0, xmm2
setae dh
mov byte [ebp - 0x92], dh
subss xmm3, xmm2
comiss xmm0, xmm7
movss xmm0, dword [ebp - 0xbc]
setae dl
comiss xmm0, xmm3
setae ch
test dl, dl
je 0x10023448
test cl, cl
je 0x10023448
mov eax, 0x10
jmp 0x1002344e
xor eax, eax
test dl, dl
je 0x1002345c
mov dword [ebp - 0xac], 0x20
test dh, dh
jne 0x10023466
mov dword [ebp - 0xac], 0
test ch, ch
je 0x10023475
test cl, cl
je 0x10023475
mov edx, 0x40
jmp 0x1002347b
xor edx, edx
test ch, ch
je 0x10023489
cmp byte [ebp - 0x92], 0
mov ecx, 0x180
jne 0x1002348e
mov ecx, 0x100
or eax, dword [ebp - 0xac]
or eax, edx
or eax, ecx
push eax
mov eax, dword [ebp - 0xa4]
push ecx
lea ecx, [ebp - 0x78]
movss xmm0, dword [eax + 0x78]
movss dword [esp], xmm0
push dword [ebp - 0xd4]
push ecx
lea ecx, [ebp - 0x80]
push ecx
mov ecx, dword [eax + 0x288]
call fcn.10035a70
cmp byte [ebp - 0x69], 0
je 0x10023531
mov ecx, dword [ebp - 0xa4]
push esi
sub esp, 8
push str.COLLAPSE
call fcn.10007200
add esp, 4
lea edx, [ebp - 0x104]
mov ecx, eax
call fcn.100431b0
add esp, 4
test al, al
je 0x10023511
mov eax, dword [0x100716bc]
push ecx
push str.WindowMenu
mov ecx, dword [eax + 0x3f04]
call fcn.10007200
mov ecx, eax
call fcn.100163c0
mov eax, dword [0x100716bc]
mov ecx, dword [eax + 0x3f40]
test ecx, ecx
je 0x10023531
cmp ecx, dword [eax + 0x3fb0]
jne 0x10023531
mov eax, dword [edi + 0x14]
mov dword [ebp - 0xd0], eax
mov eax, dword [edi]
mov dword [ebp - 0xac], eax
lea ecx, [eax - 1]
mov dword [ebp - 0xa0], ecx
test ecx, ecx
js 0x100235eb
imul edx, ecx, 0x2c
mov dword [ebp - 0xbc], edx
test ecx, ecx
js 0x1002355b
cmp ecx, dword [edi]
jl 0x1002357f
push 0x74d
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.i___0__i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov ecx, dword [ebp - 0xa0]
add esp, 0xc
mov edx, dword [ebp - 0xbc]
mov eax, dword [edi + 8]
test dword [edx + eax + 4], 0x400000
je 0x100235e5
test ecx, ecx
js 0x10023594
cmp ecx, dword [edi]
jl 0x100235b8
push 0x74d
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.i___0__i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov ecx, dword [ebp - 0xa0]
add esp, 0xc
mov edx, dword [ebp - 0xbc]
mov eax, dword [edi + 8]
and dword [edx + eax + 4], 0xffbfffff
mov eax, ecx
dec ecx
mov dword [ebp - 0xac], eax
sub edx, 0x2c
mov dword [ebp - 0xa0], ecx
mov dword [ebp - 0xbc], edx
test ecx, ecx
jns 0x10023557
jmp 0x100235eb
mov eax, dword [ebp - 0xac]
mov ecx, dword [edi]
cmp ecx, eax
jle 0x1002361b
inc eax
cmp ecx, eax
jle 0x1002361b
mov eax, dword [ebp - 0xac]
sub ecx, eax
cmp ecx, 1
jbe 0x1002361b
imul eax, eax, 0x2c
push 0x10022c00
push 0x2c
push ecx
add eax, dword [edi + 8]
push eax
call dword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_qsort]
add esp, 0x10
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax + 0x4120]
test eax, eax
je 0x1002363f
mov eax, dword [eax + 0x324]
cmp dword [eax + 0x388], esi
jne 0x1002363f
mov eax, dword [eax + 4]
mov dword [edi + 0x14], eax
cmp dword [ebp - 0xdc], 0
jne 0x10023661
mov edx, dword [esi + 0x94]
mov ecx, edi
call fcn.1004e7f0
test eax, eax
je 0x10023661
mov eax, dword [esi + 0x94]
jmp 0x10023697
mov eax, dword [edi]
cmp eax, dword [ebp - 0xc8]
jle 0x1002369d
test eax, eax
jg 0x10023687
push 0x756
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.Size___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
imul ecx, dword [edi], 0x2c
mov eax, dword [edi + 8]
mov eax, dword [ecx + eax - 0x24]
mov eax, dword [eax + 0x88]
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], eax
mov ecx, dword [ebp - 0xa4]
mov eax, 0x500003
cmp byte [ecx + 0xc6], 0
jne 0x100236c0
cmp byte [ebp - 0x9c], 0
mov ecx, 0x700003
cmovne eax, ecx
push esi
push eax
lea edx, [ebp - 0x90]
mov ecx, edi
call fcn.1004d450
add esp, 8
lea eax, [ebp - 0x60]
mov ecx, 6
nop word [eax + eax]
mov dword [eax - 8], 0
lea eax, [eax + 0x10]
mov dword [eax - 0x14], 0
mov dword [eax - 0x10], 0
mov dword [eax - 0xc], 0
sub ecx, 1
jne 0x100236e0
mov ecx, dword [ebp - 0xa8]
xor edx, edx
mov eax, dword [esi + 0x24]
mov dword [ebp - 0xa0], edx
movups xmm1, xmmword [ecx + 0x391c]
movups xmmword [ebp - 0x68], xmm1
movups xmm0, xmmword [ecx + 0x3b2c]
movups xmmword [ebp - 0x58], xmm0
movups xmm0, xmmword [ecx + 0x3b3c]
movups xmmword [ebp - 0x48], xmm0
movups xmm0, xmmword [ecx + 0x3b4c]
movups xmmword [ebp - 0x38], xmm0
movups xmm0, xmmword [ecx + 0x3b5c]
movups xmmword [ebp - 0x28], xmm0
movups xmm0, xmmword [ecx + 0x3b6c]
mov dword [esi + 0x74], 0
movups xmmword [ebp - 0x18], xmm0
test eax, eax
jle 0x100239d9
movss xmm1, dword [0x10067834]
nop
test edx, edx
js 0x10023778
cmp edx, eax
jl 0x100237a4
push 0x74d
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.i___0__i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
movss xmm1, dword [0x10067834]
add esp, 0xc
mov ecx, dword [ebp - 0xa8]
mov edx, dword [ebp - 0xa0]
cmp byte [ebp - 0x91], 0
mov eax, dword [esi + 0x2c]
mov esi, dword [eax + edx*4]
mov dword [ebp - 0xdc], esi
jne 0x100237c7
mov eax, dword [ebp - 0xc0]
cmp eax, dword [esi + 0x88]
jne 0x100237dd
cmp byte [esi + 0xcd], 0
je 0x100237dd
test dword [esi + 8], 0x100000
je 0x100239b5
mov eax, dword [esi + 0x254]
inc eax
cmp eax, dword [ecx + 0x3ea0]
jge 0x100237fe
mov eax, dword [ebp - 0x98]
cmp dword [ebp - 0xb4], eax
je 0x100239b5
mov edx, dword [esi + 0x20]
lea eax, [esi + 0x370]
or edx, 1
mov dword [ebp - 0xc8], eax
test dword [esi + 8], 0x100000
cmove edx, dword [esi + 0x20]
mov esi, eax
mov ecx, edx
or ecx, 4
test byte [edi + 0xc], 8
mov edi, 0x10058c70
cmove ecx, edx
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xd8], ecx
nop word [eax + eax]
mov ecx, dword [esi]
add esi, 4
movzx eax, cl
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10067e80]
mov eax, ecx
shr eax, 8
movzx eax, al
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0xf0], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10067e80]
mov eax, ecx
shr ecx, 0x18
shr eax, 0x10
movzx eax, al
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0xec], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10067e80]
mov eax, dword [edi]
add edi, 4
add eax, eax
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0xe8], xmm0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
shr ecx, 0x1f
addsd xmm0, qword [ecx*8 + 0x10067e80]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0xe4], xmm0
movups xmm0, xmmword [ebp - 0xf0]
movups xmmword [edx + eax*8 + 0x391c], xmm0
cmp edi, 0x10058c88
jl 0x10023840
mov esi, dword [ebp - 0xdc]
lea eax, [ebp - 0x69]
mov edi, dword [ebp - 0x70]
xor ecx, ecx
push esi
push dword [ebp - 0xd8]
cmp byte [esi + 0xcd], cl
mov edx, dword [esi]
cmove eax, ecx
mov byte [ebp - 0x69], 1
push eax
mov ecx, edi
call fcn.1004f0b0
mov ecx, dword [ebp - 0xcc]
add esp, 0xc
cmp byte [ebp - 0x69], 0
jne 0x10023954
mov eax, dword [esi + 0x88]
mov dword [ecx + 0x98], eax
mov eax, dword [edi + 0x1c]
cmp eax, dword [esi + 0x88]
jne 0x10023962
mov dword [ecx + 0x74], esi
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ecx + 0x3fb8]
mov dword [esi + 0x394], eax
movups xmm0, xmmword [ecx + 0x3fbc]
movups xmmword [esi + 0x398], xmm0
mov eax, dword [ecx + 0x4120]
test eax, eax
je 0x100239af
cmp dword [eax + 0x324], esi
jne 0x100239af
test byte [esi + 0x164], 2
jne 0x100239af
mov edx, dword [ebp - 0xa4]
mov eax, dword [esi + 0x88]
mov dword [edx + 0x340], eax
mov edx, dword [ebp - 0xa0]
mov esi, dword [ebp - 0xcc]
inc edx
movss xmm1, dword [0x10067834]
mov dword [ebp - 0xa0], edx
mov eax, dword [esi + 0x24]
cmp edx, eax
jl 0x10023770
movups xmm1, xmmword [ebp - 0x68]
movups xmmword [ecx + 0x391c], xmm1
movups xmm0, xmmword [ebp - 0x58]
movups xmmword [ecx + 0x3b2c], xmm0
movups xmm0, xmmword [ebp - 0x48]
movups xmmword [ecx + 0x3b3c], xmm0
movups xmm0, xmmword [ebp - 0x38]
movups xmmword [ecx + 0x3b4c], xmm0
movups xmm0, xmmword [ebp - 0x28]
movups xmmword [ecx + 0x3b5c], xmm0
movups xmm0, xmmword [ebp - 0x18]
movups xmmword [ecx + 0x3b6c], xmm0
mov eax, dword [esi + 0x74]
test eax, eax
je 0x10023a36
cmp byte [ebp - 0x9c], 0
mov ecx, dword [ebp - 0xb8]
jne 0x10023a33
cmp dword [ecx + 0x74], 0
jne 0x10023a36
mov dword [ecx + 0x74], eax
mov al, byte [esi + 0xa0]
and al, 8
je 0x10023a5c
mov ecx, dword [esi + 0x74]
test ecx, ecx
je 0x10023a5c
cmp byte [ecx + 0xcd], 0
je 0x10023a5c
mov byte [ebp - 0x91], 1
jmp 0x10023b8d
test al, al
je 0x10023d9f
mov eax, dword [0x100716bc]
mov esi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov dword [ebp - 0xb4], eax
mov edx, dword [eax + 0x3f98]
add eax, 0x40a4
mov dword [ebp - 0x70], edx
mov dword [ebp - 0xc0], eax
cmp dword [eax], 0
jg 0x10023aab
push 0x756
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.Size___0
call esi
mov edx, dword [ebp - 0x70]
add esp, 0xc
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax]
mov eax, dword [eax + 8]
cmp edx, dword [eax + ecx*4 - 4]
je 0x10023acd
push 0x1cdc
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.cpp
push str.item_flags__g.ItemFlagsStack.back__
call esi
mov edx, dword [ebp - 0x70]
add esp, 0xc
mov eax, dword [ebp - 0xb4]
or edx, 4
mov ecx, dword [ebp - 0xc0]
mov dword [ebp - 0xc8], edx
mov dword [eax + 0x3f98], edx
lea eax, [ebp - 0xc8]
push eax
call fcn.10029d00
mov eax, dword [ebp - 0xa8]
mov esi, dword [0x100716bc]
mov dword [ebp - 0x118], 0
movss xmm0, dword [eax + 0x391c]
movss dword [ebp - 0xf0], xmm0
lea ecx, [esi + 0x4074]
movss xmm0, dword [eax + 0x3920]
movss dword [ebp - 0xec], xmm0
movss xmm0, dword [eax + 0x3924]
movss dword [ebp - 0xe8], xmm0
movss xmm0, dword [eax + 0x3928]
lea eax, [ebp - 0x118]
mulss xmm0, dword [0x10067864]
push eax
movss dword [ebp - 0xe4], xmm0
movups xmm0, xmmword [esi + 0x391c]
movups xmmword [ebp - 0x114], xmm0
call fcn.1002a7c0
movups xmm0, xmmword [ebp - 0xf0]
mov byte [ebp - 0x91], 0
movups xmmword [esi + 0x391c], xmm0
mov esi, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xa4]
cmp dword [eax + 0xfc], 0
jg 0x10023bba
push 0x756
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.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 ecx, dword [eax + 0xfc]
xor edx, edx
mov eax, dword [eax + 0x104]
push dword [eax + ecx*4 - 4]
mov ecx, str.CLOSE
call fcn.100049c0
mov ecx, dword [0x100716bc]
add esp, 4
mov dword [ebp - 0xb4], eax
cmp dword [ecx + 0x3f28], eax
jne 0x10023c08
push ecx
push str.CLOSE
mov edx, 0xb
mov ecx, eax
call fcn.10029a10
mov eax, dword [ebp - 0xb4]
add esp, 8
lea edx, [ebp - 0xf8]
mov ecx, eax
call fcn.10042e50
test al, al
je 0x10023cea
or byte [esi + 0xa0], 0x40
xor eax, eax
mov ecx, dword [edi]
mov dword [ebp - 0x70], eax
test ecx, ecx
jle 0x10023cea
xor edx, edx
mov dword [ebp - 0x98], edx
nop dword [eax + eax]
test eax, eax
js 0x10023c48
cmp eax, ecx
jl 0x10023c66
push 0x74d
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.i___0__i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [ebp - 0x98]
add esp, 0xc
mov ecx, dword [edi + 8]
add ecx, edx
mov dword [ebp - 0xb4], ecx
test dword [ecx + 4], 0x200000
je 0x10023c9e
push 0x1e11
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui_widgets.cpp
push str.__tab__Flags__ImGuiTabItemFlags_Button_
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov ecx, dword [ebp - 0xb4]
add esp, 0xc
mov edx, dword [ebp - 0x98]
test byte [ecx + 4], 1
jne 0x10023cc6
mov byte [ecx + 0x28], 1
mov eax, dword [edi + 0x1c]
cmp eax, dword [ecx]
jne 0x10023cd0
mov dword [ecx + 0xc], 0xffffffff
mov dword [edi + 0x18], 0
mov dword [edi + 0x14], 0
jmp 0x10023cd0
mov eax, dword [ecx]
cmp dword [edi + 0x1c], eax
je 0x10023cd0
mov dword [edi + 0x18], eax
mov eax, dword [ebp - 0x70]
add edx, 0x2c
mov ecx, dword [edi]
inc eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x98], edx
cmp eax, ecx
jl 0x10023c40
cmp byte [ebp - 0x91], 0
jne 0x10023d9f
mov ecx, dword [ebp - 0xc4]
call fcn.10005540
mov edx, dword [0x100716bc]
mov dword [ebp - 0x98], edx
cmp dword [edx + 0x40a4], 1
jg 0x10023d35
push 0x1ce8
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.cpp
push str.g.ItemFlagsStack.Size___1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [ebp - 0x98]
add esp, 0xc
cmp dword [edx + 0x40a4], 0
jg 0x10023d5c
push 0x762
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.Size___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [ebp - 0x98]
add esp, 0xc
dec dword [edx + 0x40a4]
cmp dword [edx + 0x40a4], 0
jg 0x10023d89
push 0x756
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.Size___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [ebp - 0x98]
add esp, 0xc
mov ecx, dword [edx + 0x40a4]
mov eax, dword [edx + 0x40ac]
mov eax, dword [eax + ecx*4 - 4]
mov dword [edx + 0x3f98], eax
mov eax, dword [ebp - 0xa4]
cmp dword [eax + 0xfc], 0
jg 0x10023dcc
push 0x756
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.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 ecx, dword [eax + 0xfc]
xor edx, edx
mov eax, dword [eax + 0x104]
push dword [eax + ecx*4 - 4]
mov ecx, str.TITLEBAR
call fcn.100049c0
mov ecx, dword [0x100716bc]
mov edx, eax
add esp, 4
mov dword [ebp - 0x98], edx
cmp dword [ecx + 0x3f28], edx
jne 0x10023e1c
push ecx
push str.TITLEBAR
mov edx, 0xb
mov ecx, eax
call fcn.10029a10
mov edx, dword [ebp - 0x98]
add esp, 8
mov eax, dword [ebp - 0xa8]
mov ecx, dword [eax + 0x3f2c]
test ecx, ecx
je 0x10023e3c
cmp ecx, edx
je 0x10023e3c
cmp dword [eax + 0x3f40], edx
jne 0x10023ee4
push 0x1000
lea eax, [ebp - 0x92]
push eax
push 0
lea ecx, [ebp - 0x80]
call fcn.100423c0
mov eax, dword [ebp - 0xa8]
add esp, 0xc
mov ecx, dword [ebp - 0x98]
mov edx, dword [0x100716bc]
cmp dword [eax + 0x3f2c], ecx
jne 0x10023e99
mov dword [eax + 0x3fb0], ecx
mov eax, dword [edx + 0x3fb0]
cmp dword [edx + 0x3f2c], eax
jne 0x10023e8a
mov byte [edx + 0x3f34], 1
cmp dword [edx + 0x3f40], eax
jne 0x10023e99
mov byte [edx + 0x3f4d], 1
cmp byte [ebp - 0x92], 0
je 0x10023ee4
movss xmm0, dword [edx + 0x36a8]
ucomiss xmm0, dword [0x10067814]
lahf
test ah, 0x44
jp 0x10023ec0
mov eax, dword [edi + 0x14]
mov dword [ebp - 0xd0], eax
mov edx, dword [edi + 0x14]
mov ecx, edi
call fcn.1004e7f0
test eax, eax
je 0x10023ee4
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x10023ed8
mov ecx, dword [esi + 0x70]
push 0
mov edx, esi
call fcn.10007d40
add esp, 4
mov edx, dword [edi + 0x18]
test edx, edx
cmove edx, dword [ebp - 0xd0]
test edx, edx
je 0x10023f17
mov ecx, edi
call fcn.1004e7f0
mov edi, eax
test edi, edi
je 0x10023f17
mov ecx, dword [edi + 8]
test ecx, ecx
je 0x10023f17
call fcn.100137c0
mov ecx, dword [edi + 8]
xor dl, dl
call fcn.100183b0
call fcn.1004d7f0
mov eax, dword [0x100716bc]
mov edi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [eax + 0x3f04]
mov dword [ebp - 0xc4], eax
cmp dword [eax + 0xfc], 1
jg 0x10023f56
push 0x1f68
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.cpp
push str.window__IDStack.Size___1
call edi
mov eax, dword [ebp - 0xc4]
add esp, 0xc
cmp dword [eax + 0xfc], 0
jg 0x10023f79
push 0x762
push str.D:MyFilesDLLDLL_WITH_HWIDSIGSCAN_PRODIGALImGui_StandaloneImGuiimgui.h
push str.Size___0
call edi
mov eax, dword [ebp - 0xc4]
add esp, 0xc
dec dword [eax + 0xfc]
mov eax, dword [esi + 0x10]
shr eax, 0xa
test al, 1
jne 0x10024027
mov eax, dword [ebp - 0xa4]
mov cl, byte [ebp - 0xad]
mov dword [eax + 0x160], 0
mov byte [eax + 0xc8], cl
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100554c4
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
cmp dword [esi + 0x24], 0
jle 0x10023fc9
mov eax, dword [esi + 0x2c]
mov edi, dword [eax]
jmp 0x10023fcb
xor edi, edi
mov al, byte [ebp - 0x9c]
and dl, 0xfd
add al, al
mov dword [esi + 0x74], edi
or dl, al
mov eax, dword [ebp - 0x9c]
mov byte [esi + 0xa0], dl
test al, al
je 0x10023ffd
mov eax, dword [ecx + 0x3ea0]
mov dword [esi + 0x8c], eax
mov eax, dword [ebp - 0x9c]
test edi, edi
je 0x10024027
test al, al
mov eax, dword [ebp - 0xb8]
jne 0x10024011
cmp dword [eax + 0x74], 0
jne 0x10024014
mov dword [eax + 0x74], edi
mov ecx, dword [esi + 0x30]
test ecx, ecx
je 0x10024027
mov eax, dword [esi + 0x74]
mov eax, dword [eax + 0x88]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.100554c4
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret