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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x38
push esi
mov esi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
push edi
mov edi, dword [0x10163478]
mov dword [esp + 0x1c], edi
mov dword [esp + 0xc], esi
test edi, edi
jne 0x100658c1
push 0xf95
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.GImGui___0___No_current_context._Did_you_call_ImGui::CreateContext___and_ImGui::SetCurrentContext_____
call esi
mov edi, dword [0x10163478]
add esp, 0xc
mov dword [esp + 0x1c], edi
mov ecx, dword [edi + 0x2f94]
sub ecx, 1
mov dword [esp + 0x18], ecx
js 0x100659e1
lea edx, [ecx + ecx*4]
shl edx, 2
mov dword [esp + 0x14], edx
nop
cmp ecx, dword [edi + 0x2f94]
jl 0x1006590c
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov edx, dword [esp + 0x20]
add esp, 0xc
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], ecx
mov eax, dword [edi + 0x2f9c]
cmp dword [eax + edx + 4], 7
jne 0x100659cd
cmp ecx, dword [edi + 0x2f94]
jl 0x1006593d
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov edx, dword [esp + 0x20]
add esp, 0xc
mov eax, dword [edi + 0x2f9c]
lea ecx, [eax + edx]
mov dword [esp + 0x30], ecx
cmp ecx, eax
jb 0x10065964
mov eax, dword [edi + 0x2f94]
mov edx, dword [edi + 0x2f9c]
lea eax, [eax + eax*4]
lea eax, [edx + eax*4]
cmp ecx, eax
jb 0x1006597c
push 0x6d0
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push 0x10105558
call esi
mov ecx, dword [esp + 0x3c]
add esp, 0xc
mov esi, dword [edi + 0x2f9c]
mov eax, 0x66666667
sub ecx, esi
imul ecx
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea eax, [ecx + ecx*4]
lea edx, [esi + eax*4]
mov eax, dword [edi + 0x2f94]
sub eax, ecx
lea eax, [eax + eax*4]
lea eax, [eax*4 - 0x14]
push eax
lea eax, [edx + 0x14]
push eax
push edx
call sub.VCRUNTIME140.dll_memmove
mov esi, dword [esp + 0x18]
add esp, 0xc
dec dword [edi + 0x2f94]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
dec ecx
sub edx, 0x14
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], edx
test ecx, ecx
jns 0x100658e0
xor edx, edx
mov ecx, edi
call fcn.100647a0
call fcn.1006f3b0
mov eax, dword [0x10163478]
mov ecx, dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], ecx
cmp byte [eax + 0x2f5d], 0
jne 0x10065a82
cmp dword [eax + 0x2f7c], 0
je 0x10065a2c
push 0x2b06
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.g.SettingsWindows.empty__
call esi
mov eax, dword [esp + 0x20]
add esp, 0xc
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x10065a7b
push ecx
lea eax, [esp + 0x24]
mov dword [esp + 0x24], 0
push eax
call fcn.100622c0
add esp, 8
mov dword [esp + 0x30], eax
test eax, eax
je 0x10065a77
mov edx, dword [esp + 0x20]
mov ecx, eax
call fcn.100763a0
mov ecx, dword [0x10163478]
test ecx, ecx
je 0x10065a6c
dec dword [ecx + 0x36c]
push dword [esp + 0x30]
call dword [esp + 0x14]
add esp, 4
mov eax, dword [esp + 0x14]
mov byte [eax + 0x2f5d], 1
vmovss xmm0, dword [eax + 0x2f60]
vxorps xmm1, xmm1, xmm1
vcomiss xmm0, xmm1
jbe 0x10065b25
vsubss xmm0, xmm0, dword [eax + 0x18]
vcomiss xmm1, xmm0
vmovss dword [eax + 0x2f60], xmm0
jb 0x10065b25
mov ecx, dword [eax + 0x20]
mov dword [esp + 0x30], ecx
test ecx, ecx
je 0x10065b16
mov eax, dword [0x10163478]
lea ecx, [esp + 0x20]
mov dword [esp + 0x20], 0
vmovss dword [eax + 0x2f60], xmm1
call fcn.100767b0
mov ecx, dword [esp + 0x30]
mov edx, 0x10105304
mov dword [esp + 0x28], eax
call fcn.10062140
mov dword [esp + 0x30], eax
test eax, eax
je 0x10065b0c
push eax
push dword [esp + 0x24]
push 1
push dword [esp + 0x34]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
push dword [esp + 0x40]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
add esp, 0x14
mov eax, dword [esp + 0x14]
vxorps xmm1, xmm1, xmm1
jmp 0x10065b1d
mov byte [eax + 0x354], 1
vmovss dword [eax + 0x2f60], xmm1
vmovss xmm0, dword [edi + 0x18]
inc dword [edi + 0x1b48]
xor eax, eax
vcvtss2sd xmm0, xmm0, xmm0
vaddsd xmm0, xmm0, qword [edi + 0x1b40]
mov word [edi + 0x2f2e], ax
mov dword [edi + 0x1b9c], eax
lea eax, [edi + 0x2f40]
vmovsd qword [edi + 0x1b40], xmm0
mov byte [edi + 0x1b54], 1
mov ecx, dword [eax + 4]
test ecx, ecx
jns 0x10065b89
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [edi + 0x2f40]
call fcn.10077ae0
lea eax, [edi + 0x2f40]
mov dword [eax], 0
mov ecx, 0x78
mov eax, dword [edi + 0x31e8]
vmovss xmm1, dword [edi + 0x18]
vmovss xmm2, dword [0x1014e858]
vsubss xmm0, xmm1, dword [edi + eax*4 + 0x3008]
vaddss xmm0, xmm0, dword [edi + 0x31f0]
vmovss dword [edi + 0x31f0], xmm0
vmovss dword [edi + eax*4 + 0x3008], xmm1
mov eax, dword [edi + 0x31e8]
inc eax
cdq
idiv ecx
mov eax, dword [edi + 0x31ec]
vmovss xmm1, dword [edi + 0x31f0]
vmovss xmm0, dword [0x1014ead4]
inc eax
mov dword [edi + 0x31e8], edx
cmp eax, ecx
vmovss dword [esp + 0x14], xmm0
cmovl ecx, eax
vcomiss xmm1, dword [0x1014e724]
mov dword [edi + 0x31ec], ecx
jbe 0x10065c1b
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, ecx
vdivss xmm0, xmm1, xmm0
vdivss xmm0, xmm2, xmm0
mov ecx, dword [0x10163478]
vmovss dword [edi + 0x358], xmm0
mov dword [esp + 0x18], ecx
cmp dword [ecx + 0x1d48], 1
je 0x10065c4e
push 0x2c36
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.g.Viewports.Size__1
call esi
mov ecx, dword [esp + 0x24]
add esp, 0xc
cmp dword [ecx + 0x1d48], 0
jg 0x10065c6f
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov ecx, dword [esp + 0x24]
add esp, 0xc
mov eax, dword [ecx + 0x1d50]
vxorps xmm3, xmm3, xmm3
mov edx, dword [eax]
mov dword [edx], 5
vmovss dword [edx + 4], xmm3
vmovss dword [edx + 8], xmm3
mov eax, dword [ecx + 0x10]
mov ecx, dword [ecx + 0x14]
mov dword [edx + 0x10], ecx
mov ecx, dword [esp + 0x18]
mov dword [edx + 0xc], eax
xor eax, eax
mov dword [esp + 0x20], eax
mov ecx, dword [ecx + 0x1d48]
test ecx, ecx
jle 0x10065d85
mov edi, dword [esp + 0x18]
test eax, eax
js 0x10065cbb
cmp eax, ecx
jl 0x10065cd3
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
add esp, 0xc
vxorps xmm3, xmm3, xmm3
mov eax, dword [edi + 0x1d50]
mov edx, dword [esp + 0x20]
vshufps xmm3, xmm3, xmm3, 0
mov edx, dword [eax + edx*4]
mov eax, dword [edx + 0x88]
mov ecx, dword [edx + 0x8c]
mov dword [edx + 0x78], eax
mov eax, dword [edx + 0x90]
mov dword [edx + 0x7c], ecx
mov ecx, dword [edx + 0x94]
mov dword [edx + 0x80], eax
mov eax, dword [esp + 0x20]
mov dword [edx + 0x84], ecx
inc eax
vmovups xmmword [edx + 0x88], xmm3
vmovss xmm0, dword [edx + 0x7c]
vaddss xmm0, xmm0, dword [edx + 8]
vmovss xmm2, dword [edx + 0x78]
vaddss xmm1, xmm2, dword [edx + 4]
vmovss dword [edx + 0x18], xmm0
vmovss xmm0, dword [edx + 0xc]
vsubss xmm0, xmm0, xmm2
vmovss dword [edx + 0x14], xmm1
vaddss xmm0, xmm0, dword [edx + 0x80]
vmaxss xmm1, xmm3, xmm0
vmovss xmm0, dword [edx + 0x10]
vsubss xmm0, xmm0, dword [edx + 0x7c]
vaddss xmm0, xmm0, dword [edx + 0x84]
vmaxss xmm0, xmm3, xmm0
vmovss dword [edx + 0x1c], xmm1
vmovss dword [edx + 0x20], xmm0
mov ecx, dword [edi + 0x1d48]
mov dword [esp + 0x20], eax
cmp eax, ecx
jl 0x10065cb3
mov edi, dword [esp + 0x1c]
mov eax, dword [edi + 0x98]
mov byte [eax + 0x10], 1
mov eax, dword [0x10163478]
mov ecx, dword [eax + 0xa4]
test ecx, ecx
jne 0x10065dcc
mov eax, dword [eax + 0x98]
add eax, 0x34
mov dword [esp + 0x30], eax
cmp dword [eax], ecx
jg 0x10065dc7
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov eax, dword [esp + 0x3c]
add esp, 0xc
mov eax, dword [eax + 8]
mov ecx, dword [eax]
call fcn.1006e940
mov eax, dword [edi + 0x1940]
cmp dword [eax + 0x30], 0
jne 0x10065df1
push 0xfb9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.g.Font__IsLoaded__
call esi
add esp, 0xc
vmovss xmm7, dword [esp + 0x14]
vmovss xmm4, dword [0x1014eb80]
mov eax, dword [edi + 0x1d48]
xor ecx, ecx
mov dword [esp + 0x30], ecx
vmovaps xmm6, xmm7
vmovaps xmm5, xmm4
vmovss dword [esp + 0x20], xmm7
vmovss dword [esp + 0x18], xmm6
vmovss dword [esp + 0x24], xmm4
vmovss dword [esp + 0x28], xmm5
test eax, eax
jle 0x10065edb
test ecx, ecx
js 0x10065e3b
cmp ecx, eax
jl 0x10065e6b
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
vmovss xmm4, dword [esp + 0x30]
vmovss xmm5, dword [esp + 0x34]
vmovss xmm6, dword [esp + 0x24]
vmovss xmm7, dword [esp + 0x2c]
mov ecx, dword [esp + 0x3c]
add esp, 0xc
mov eax, dword [edi + 0x1d50]
mov eax, dword [eax + ecx*4]
vmovss xmm2, dword [eax + 4]
vcomiss xmm7, xmm2
vmovss xmm1, dword [eax + 8]
vaddss xmm3, xmm2, dword [eax + 0xc]
vaddss xmm0, xmm1, dword [eax + 0x10]
jbe 0x10065e98
vmovaps xmm7, xmm2
vmovss dword [esp + 0x20], xmm7
vcomiss xmm6, xmm1
jbe 0x10065ea8
vmovaps xmm6, xmm1
vmovss dword [esp + 0x18], xmm6
vcomiss xmm3, xmm4
jbe 0x10065eb8
vmovaps xmm4, xmm3
vmovss dword [esp + 0x24], xmm4
vcomiss xmm0, xmm5
jbe 0x10065ec8
vmovaps xmm5, xmm0
vmovss dword [esp + 0x28], xmm5
mov eax, dword [edi + 0x1d48]
inc ecx
mov dword [esp + 0x30], ecx
cmp ecx, eax
jl 0x10065e33
mov eax, dword [edi + 0x15e8]
vmovss xmm1, dword [edi + 0x15ec]
vmovss dword [esp + 0x30], xmm7
vmovss dword [esp + 0x34], xmm6
vmovss dword [esp + 0x38], xmm4
vmovss dword [esp + 0x3c], xmm5
vmovdqu xmm0, xmmword [esp + 0x30]
mov dword [edi + 0x195c], eax
vmovdqu xmmword [edi + 0x1964], xmm0
vmovss xmm0, dword [edi + 0x1960]
vucomiss xmm0, xmm1
vmovss dword [esp + 0x30], xmm1
lahf
test ah, 0x44
jnp 0x10066060
vcomiss xmm1, dword [0x1014e724]
ja 0x10065f55
push 0x187
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui_draw.cpp
push str.max_error___0.0f
call esi
vmovss xmm1, dword [esp + 0x3c]
add esp, 0xc
xor ecx, ecx
mov esi, 0x200
vmovss dword [edi + 0x1960], xmm1
mov dword [esp + 0x30], ecx
nop dword [eax + eax]
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, ecx
test ecx, ecx
je 0x10066014
vmovss xmm0, dword [edi + 0x1960]
vminss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, xmm1
vmovss xmm1, dword [0x1014e858]
vsubss xmm0, xmm1, xmm0
vcvtss2sd xmm0, xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_acos_precise
vmovss xmm1, dword [0x1014e908]
vcvtsd2ss xmm0, xmm0, xmm0
vdivss xmm0, xmm1, xmm0
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [esp + 0x28], xmm0
fld qword [esp + 0x28]
fstp qword [esp + 0x28]
vxorpd xmm0, xmm0, xmm0
vroundsd xmm0, xmm0, qword [esp + 0x28], 2
vmovsd qword [esp + 0x28], xmm0
fld qword [esp + 0x28]
fstp qword [esp + 0x28]
vmovsd xmm0, qword [esp + 0x28]
vcvtpd2ps xmm0, xmm0
vcvttss2si eax, xmm0
inc eax
cdq
sub eax, edx
and eax, 0xfffffffe
cmp eax, 4
jge 0x10066006
mov ecx, dword [esp + 0x30]
mov eax, 4
jmp 0x10066016
mov ecx, dword [esp + 0x30]
cmp eax, 0x200
cmovg eax, esi
jmp 0x10066016
xor eax, eax
mov byte [edi + ecx + 0x1afc], al
inc ecx
mov dword [esp + 0x30], ecx
cmp ecx, 0x40
jl 0x10065f70
vmovsd xmm0, qword [0x1014e880]
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_cos_precise
vmovss xmm1, dword [0x1014e858]
mov esi, dword [esp + 0xc]
vcvtsd2ss xmm0, xmm0, xmm0
vsubss xmm1, xmm1, xmm0
vmovss xmm0, dword [edi + 0x1960]
vdivss xmm0, xmm0, xmm1
vmovss dword [edi + 0x1af8], xmm0
xor edx, edx
mov dword [edi + 0x1974], 0
cmp byte [edi + 0x15e4], dl
je 0x10066083
mov dword [edi + 0x1974], 1
mov edx, 1
cmp byte [edi + 0x15e5], 0
mov ecx, edx
je 0x100660a5
mov eax, dword [edi + 0x1940]
mov eax, dword [eax + 0x30]
test byte [eax], 4
jne 0x100660a5
or ecx, 2
mov dword [edi + 0x1974], ecx
cmp byte [edi + 0x15e6], 0
je 0x100660b7
or ecx, 4
mov dword [edi + 0x1974], ecx
test byte [edi + 0xc], 8
je 0x100660c6
or ecx, 8
mov dword [edi + 0x1974], ecx
mov ecx, dword [edi + 0x1d48]
xor eax, eax
mov dword [esp + 0x20], eax
test ecx, ecx
jle 0x10066122
test eax, eax
js 0x100660de
cmp eax, ecx
jl 0x100660f2
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
add esp, 0xc
mov eax, dword [edi + 0x1d50]
mov ecx, dword [esp + 0x20]
push 0x2c
push 0
mov eax, dword [eax + ecx*4]
add eax, 0x34
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0x2c]
add esp, 0xc
mov ecx, dword [edi + 0x1d48]
inc eax
mov dword [esp + 0x20], eax
cmp eax, ecx
jl 0x100660d6
cmp byte [edi + 0x1ec4], 0
mov esi, dword [0x10163478]
je 0x1006615c
mov eax, dword [edi + 0x1edc]
cmp eax, dword [edi + 0x1be0]
jne 0x1006615c
cmp dword [esi + 0x1be0], eax
jne 0x1006614d
mov dword [esi + 0x1be4], eax
cmp dword [esi + 0x1c1c], eax
jne 0x1006615c
mov byte [esi + 0x1c20], 1
cmp dword [edi + 0x1bd0], 0
jne 0x10066173
vxorps xmm0, xmm0, xmm0
vmovss dword [edi + 0x1bd8], xmm0
jmp 0x10066189
mov eax, dword [edi + 0x1bcc]
test eax, eax
je 0x10066191
cmp dword [edi + 0x1be0], eax
jne 0x10066191
vxorps xmm0, xmm0, xmm0
vmovss dword [edi + 0x1bdc], xmm0
mov eax, dword [edi + 0x1bcc]
test eax, eax
je 0x100661c8
vmovss xmm1, dword [edi + 0x18]
vaddss xmm0, xmm1, dword [edi + 0x1bd8]
vmovss dword [edi + 0x1bd8], xmm0
cmp dword [edi + 0x1be0], eax
je 0x100661c8
vaddss xmm0, xmm1, dword [edi + 0x1bdc]
vmovss dword [edi + 0x1bdc], xmm0
mov dword [edi + 0x1bd0], eax
mov al, byte [edi + 0x1bd5]
mov byte [edi + 0x1bd6], al
mov eax, dword [edi + 0x1be0]
mov dword [edi + 0x1bcc], 0
mov word [edi + 0x1bd4], 0
mov byte [edi + 0x1bd7], 0
cmp dword [edi + 0x1be4], eax
je 0x10066213
cmp dword [edi + 0x1c1c], eax
jne 0x10066213
test eax, eax
je 0x10066213
call fcn.10064300
mov ecx, dword [edi + 0x1be0]
test ecx, ecx
je 0x10066232
vmovss xmm0, dword [edi + 0x18]
vaddss xmm0, xmm0, dword [edi + 0x1be8]
vmovss dword [edi + 0x1be8], xmm0
mov eax, dword [edi + 0x1c10]
vmovss xmm0, dword [edi + 0x18]
vaddss xmm0, xmm0, dword [edi + 0x1c2c]
mov dword [edi + 0x1c24], eax
mov al, byte [edi + 0x1bf0]
mov byte [edi + 0x1c21], al
mov eax, dword [edi + 0x2ec0]
mov dword [edi + 0x1c1c], ecx
mov dword [edi + 0x1be4], 0
mov byte [edi + 0x1bf1], 0
mov byte [edi + 0x1c20], 0
mov byte [edi + 0x1bec], 0
vmovss dword [edi + 0x1c2c], xmm0
test eax, eax
je 0x1006629c
cmp ecx, eax
je 0x1006629c
mov dword [edi + 0x2ec0], 0
test ecx, ecx
jne 0x100662b8
mov dword [edi + 0x1bf4], ecx
mov dword [edi + 0x1bf8], ecx
mov dword [edi + 0x1c00], ecx
mov dword [edi + 0x1c04], ecx
cmp byte [edi + 0x1518], 0
vmovss xmm0, dword [esp + 0x14]
mov eax, dword [edi + 0x1f28]
vmovss dword [edi + 0x1f24], xmm0
vmovss xmm0, dword [0x1014eb10]
mov dword [edi + 0x1f2c], eax
mov dword [edi + 0x1f28], 0
mov word [edi + 0x1ec5], 0
mov dword [edi + 0x1f34], 0
je 0x1006637a
push 0x200
lea eax, [edi + 0x100]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
vmovss xmm0, dword [0x1014eb10]
add esp, 0xc
lea eax, [edi + 0x474]
mov ecx, 0x200
nop dword [eax]
lea eax, [eax + 4]
vmovss dword [eax + 0x7fc], xmm0
vmovss dword [eax - 4], xmm0
sub ecx, 1
jne 0x10066330
mov dword [edi + 0xfc], ecx
lea eax, [edi + 0x1474]
mov dword [edi + 0x380], ecx
mov dword [edi + 0x37c], ecx
mov ecx, 0x14
lea eax, [eax + 4]
vmovss dword [eax + 0x4c], xmm0
vmovss dword [eax - 4], xmm0
sub ecx, 1
jne 0x10066362
mov byte [edi + 0x1518], cl
xor eax, eax
cmp byte [esi + 0xfc], al
setne al
mov ecx, eax
or ecx, 2
cmp byte [esi + 0xfd], 0
cmove ecx, eax
mov edx, ecx
or edx, 4
cmp byte [esi + 0xfe], 0
cmove edx, ecx
mov ecx, 0x200
mov eax, edx
or eax, 8
cmp byte [esi + 0xff], 0
cmove eax, edx
mov dword [edi + 0x37c], eax
lea eax, [edi + 0x474]
add edi, 0xc74
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x1c]
xor ecx, ecx
cmp byte [edi + ecx + 0x100], 0
je 0x100663f0
vmovss xmm1, dword [eax]
vxorps xmm0, xmm0, xmm0
vcomiss xmm0, xmm1
ja 0x100663f0
vaddss xmm0, xmm1, dword [edi + 0x18]
vmovss dword [eax], xmm0
vmovss xmm0, dword [0x1014eb10]
inc ecx
add eax, 4
cmp ecx, 0x200
jl 0x100663d3
call fcn.10073230
call fcn.10064cb0
call fcn.10065620
mov edx, dword [0x10163478]
mov ecx, edx
mov dword [esp + 0x20], ecx
mov esi, dword [ecx + 0x1bb4]
test esi, esi
je 0x10066589
mov eax, dword [ecx + 0x1be0]
mov dword [ecx + 0x1be4], eax
cmp dword [ecx + 0x1c1c], eax
jne 0x1006644c
mov byte [ecx + 0x1c20], 1
cmp dword [esi + 0x2e0], 0
mov esi, dword [esp + 0xc]
jne 0x10066477
push 0xe44
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.g.MovingWindow__g.MovingWindow__RootWindow
call esi
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov edx, dword [0x10163478]
cmp byte [ecx + 0xec], 0
mov eax, dword [ecx + 0x1bb4]
mov eax, dword [eax + 0x2e0]
mov dword [esp + 0x28], eax
je 0x1006657d
lea eax, [ecx + 0xe4]
mov dword [esp + 0x30], eax
test edx, edx
jne 0x100664c4
push 0x1349
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.GImGui___0
call esi
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov edx, dword [0x10163478]
mov eax, dword [esp + 0x30]
mov esi, eax
test eax, eax
jne 0x100664d0
lea esi, [edx + 0xe4]
vmovss xmm0, dword [esi]
vmovss xmm1, dword [0x1014eb78]
vcomiss xmm0, xmm1
vmovss xmm2, dword [esi + 4]
jb 0x1006657d
vcomiss xmm2, xmm1
jb 0x1006657d
vmovss xmm0, dword [eax]
vsubss xmm1, xmm0, dword [ecx + 0x1c08]
vmovss xmm0, dword [eax + 4]
mov esi, dword [esp + 0x28]
vsubss xmm2, xmm0, dword [ecx + 0x1c0c]
vmovss dword [esp + 0x30], xmm1
vmovss dword [esp + 0x34], xmm2
vmovss xmm0, dword [esi + 0xc]
vucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x1006653c
vmovss xmm0, dword [esi + 0x10]
vucomiss xmm0, xmm2
lahf
test ah, 0x44
jnp 0x10066570
test dword [esi + 8], 0x100
jne 0x1006655c
vxorps xmm0, xmm0, xmm0
vcomiss xmm0, dword [edx + 0x2f60]
jb 0x1006655c
mov eax, dword [edx + 0x1c]
mov dword [edx + 0x2f60], eax
push 1
lea edx, [esp + 0x34]
mov ecx, esi
call fcn.1006ee80
mov ecx, dword [esp + 0x24]
add esp, 4
mov ecx, dword [ecx + 0x1bb4]
call fcn.1006e610
jmp 0x100665c1
mov dword [ecx + 0x1bb4], 0
jmp 0x100665bc
mov esi, dword [ecx + 0x1c10]
test esi, esi
je 0x100665c7
mov eax, dword [ecx + 0x1be0]
cmp dword [esi + 0x50], eax
jne 0x100665c7
mov dword [ecx + 0x1be4], eax
cmp dword [ecx + 0x1c1c], eax
jne 0x100665b3
mov byte [ecx + 0x1c20], 1
cmp byte [ecx + 0xec], 0
jne 0x100665c7
call fcn.10064300
mov edx, dword [0x10163478]
mov edx, dword [edx + 0x1d2c]
sub edx, 1
js 0x100665fd
mov eax, dword [0x10163478]
lea ecx, [edx + edx*8]
mov eax, dword [eax + 0x1d34]
lea eax, [eax + ecx*4]
add eax, 4
mov ecx, dword [eax]
test ecx, ecx
je 0x100665f5
test dword [ecx + 8], 0x8000000
jne 0x10066618
sub eax, 0x24
sub edx, 1
jns 0x100665e6
cmp dword [edi + 0x1ea4], 0
vxorps xmm2, xmm2, xmm2
je 0x10066637
vmovss xmm0, dword [edi + 0x1eb4]
vcomiss xmm0, xmm2
jbe 0x10066637
vmovss xmm0, dword [edi + 0x18]
vmulss xmm0, xmm0, dword [0x1014e970]
vaddss xmm0, xmm0, dword [edi + 0x1ebc]
vminss xmm0, xmm0, dword [0x1014e858]
jmp 0x10066654
vmovss xmm0, dword [edi + 0x18]
vmulss xmm1, xmm0, dword [0x1014e97c]
vmovss xmm0, dword [edi + 0x1ebc]
vsubss xmm0, xmm0, xmm1
vmaxss xmm0, xmm0, xmm2
vmovss dword [edi + 0x1ebc], xmm0
vmovss xmm0, dword [0x1014e858]
mov dword [edi + 0x1ec0], 0
mov dword [edi + 0x31fc], 0xffffffff
mov dword [edi + 0x31f8], 0xffffffff
mov dword [edi + 0x31f4], 0xffffffff
vmovss dword [edi + 0x2f4c], xmm0
vmovss dword [edi + 0x2f50], xmm0
call fcn.10065180
mov ecx, dword [edi + 0x1b60]
mov esi, dword [esp + 0xc]
cmp dword [edi + 0x1b6c], ecx
jle 0x100666cd
push 0x1031
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.g.WindowsFocusOrder.Size___g.Windows.Size
call esi
mov ecx, dword [edi + 0x1b60]
add esp, 0xc
cmp byte [edi + 0x1b57], 0
jne 0x100666fe
vmovss xmm1, dword [edi + 0xb8]
vxorps xmm0, xmm0, xmm0
vcomiss xmm0, xmm1
ja 0x100666fe
vmovsd xmm0, qword [edi + 0x1b40]
vcvtpd2ps xmm0, xmm0
vsubss xmm0, xmm0, xmm1
vmovss dword [esp + 0x14], xmm0
xor eax, eax
mov dword [esp + 0x20], eax
test ecx, ecx
je 0x100668c3
nop dword [eax]
test eax, eax
js 0x10066718
cmp eax, ecx
jl 0x1006672c
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
add esp, 0xc
mov eax, dword [edi + 0x1b68]
xor ecx, ecx
mov esi, dword [esp + 0x20]
mov esi, dword [eax + esi*4]
mov al, byte [esi + 0x8a]
mov byte [esi + 0x8b], al
mov word [esi + 0x96], cx
mov byte [esi + 0x8a], cl
mov byte [esi + 0x8c], cl
test al, al
jne 0x100668a8
cmp byte [esi + 0x324], cl
jne 0x100668a8
vmovss xmm0, dword [esp + 0x14]
vcomiss xmm0, dword [esi + 0x21c]
jbe 0x100668a8
mov ecx, dword [esi + 0x244]
mov byte [esi + 0x324], 1
mov eax, dword [ecx + 0x10]
mov dword [esi + 0x31c], eax
mov eax, dword [ecx + 0x1c]
mov dword [esi + 0x320], eax
mov ecx, dword [esi + 0xcc]
test ecx, ecx
je 0x100667e0
mov eax, dword [0x10163478]
mov dword [esi + 0xc8], 0
mov dword [esi + 0xc4], 0
test eax, eax
je 0x100667ce
dec dword [eax + 0x36c]
push ecx
call dword [esp + 0x14]
add esp, 4
mov dword [esi + 0xcc], 0
mov ecx, dword [esi + 0x244]
call fcn.1007f9f0
mov ecx, dword [esi + 0x168]
test ecx, ecx
je 0x1006682a
mov eax, dword [0x10163478]
mov dword [esi + 0x164], 0
mov dword [esi + 0x160], 0
test eax, eax
je 0x10066818
dec dword [eax + 0x36c]
push ecx
call dword [esp + 0x14]
add esp, 4
mov dword [esi + 0x168], 0
mov ecx, dword [esi + 0x190]
test ecx, ecx
je 0x10066869
mov eax, dword [0x10163478]
mov dword [esi + 0x18c], 0
mov dword [esi + 0x188], 0
test eax, eax
je 0x10066857
dec dword [eax + 0x36c]
push ecx
call dword [esp + 0x14]
add esp, 4
mov dword [esi + 0x190], 0
mov ecx, dword [esi + 0x19c]
test ecx, ecx
je 0x100668a8
mov eax, dword [0x10163478]
mov dword [esi + 0x198], 0
mov dword [esi + 0x194], 0
test eax, eax
je 0x10066896
dec dword [eax + 0x36c]
push ecx
call dword [esp + 0x14]
add esp, 4
mov dword [esi + 0x19c], 0
mov eax, dword [esp + 0x20]
mov ecx, dword [edi + 0x1b60]
inc eax
mov esi, dword [esp + 0xc]
mov dword [esp + 0x20], eax
cmp eax, ecx
jne 0x10066710
mov eax, dword [edi + 0x1f98]
xor ecx, ecx
mov dword [esp + 0x20], ecx
test eax, eax
jle 0x100669ae
xor edx, edx
mov dword [esp + 0x18], edx
nop dword [eax]
test ecx, ecx
js 0x100668e8
cmp ecx, eax
jl 0x1006690a
mov esi, dword [esp + 0xc]
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov edx, dword [esp + 0x18]
jmp 0x1006690e
mov esi, dword [esp + 0xc]
mov eax, dword [edi + 0x1fa0]
vmovss xmm0, dword [eax + ecx*4]
vcomiss xmm0, dword [0x1014e724]
jb 0x10066991
test ecx, ecx
js 0x1006692f
cmp ecx, dword [edi + 0x1f98]
jl 0x10066947
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov eax, dword [edi + 0x1fa0]
vmovss xmm0, dword [esp + 0x14]
vcomiss xmm0, dword [eax + ecx*4]
jbe 0x1006698d
test ecx, ecx
js 0x10066966
cmp ecx, dword [edi + 0x1f78]
jl 0x1006697a
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
add esp, 0xc
mov ecx, dword [edi + 0x1f80]
add ecx, dword [esp + 0x18]
call fcn.100922d0
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov eax, dword [edi + 0x1f98]
inc ecx
add edx, 0x1c8
mov dword [esp + 0x20], ecx
mov dword [esp + 0x18], edx
cmp ecx, eax
jl 0x100668e0
mov eax, dword [edi + 0x1f6c]
xor ecx, ecx
mov dword [esp + 0x20], ecx
test eax, eax
jle 0x10066aa5
mov dword [esp + 0x18], ecx
test ecx, ecx
js 0x100669ce
cmp ecx, eax
jl 0x100669ec
mov esi, dword [esp + 0xc]
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov ecx, dword [esp + 0x2c]
add esp, 0xc
jmp 0x100669f0
mov esi, dword [esp + 0xc]
mov eax, dword [edi + 0x1f74]
mov edx, dword [esp + 0x18]
vmovss xmm0, dword [eax + edx + 4]
vcomiss xmm0, dword [0x1014e724]
jb 0x10066a8d
test ecx, ecx
js 0x10066a1a
cmp ecx, dword [edi + 0x1f6c]
jl 0x10066a36
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov ecx, dword [esp + 0x2c]
add esp, 0xc
mov edx, dword [esp + 0x18]
mov eax, dword [edi + 0x1f74]
vmovss xmm0, dword [esp + 0x14]
vcomiss xmm0, dword [edx + eax + 4]
jbe 0x10066a8d
test ecx, ecx
js 0x10066a56
cmp ecx, dword [edi + 0x1f6c]
jl 0x10066a6a
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
add esp, 0xc
mov esi, dword [edi + 0x1f74]
add esi, dword [esp + 0x18]
lea ecx, [esi + 0x10]
call fcn.10082500
vmovss xmm0, dword [0x1014eb10]
mov ecx, dword [esp + 0x20]
vmovss dword [esi + 4], xmm0
add dword [esp + 0x18], 0x68
inc ecx
mov eax, dword [edi + 0x1f6c]
mov dword [esp + 0x20], ecx
cmp ecx, eax
jl 0x100669c6
cmp byte [edi + 0x1b57], 0
je 0x10066b37
mov eax, dword [0x10163478]
mov esi, eax
mov ecx, dword [esi + 0x1d1c]
test ecx, ecx
je 0x10066af8
mov dword [esi + 0x1d18], 0
mov dword [esi + 0x1d14], 0
test esi, esi
je 0x10066ae1
dec dword [esi + 0x36c]
push ecx
call dword [esp + 0x14]
mov eax, dword [0x10163478]
add esp, 4
mov dword [esi + 0x1d1c], 0
mov ecx, dword [esi + 0x1d28]
test ecx, ecx
je 0x10066b32
mov dword [esi + 0x1d24], 0
mov dword [esi + 0x1d20], 0
test eax, eax
je 0x10066b20
dec dword [eax + 0x36c]
push ecx
call dword [esp + 0x14]
add esp, 4
mov dword [esi + 0x1d28], 0
call fcn.10092480
mov eax, dword [edi + 0x1d54]
mov byte [edi + 0x1b57], 0
test eax, eax
je 0x10066b58
cmp byte [eax + 0x8b], 0
jne 0x10066b58
xor ecx, ecx
call fcn.1006e850
mov ecx, dword [edi + 0x1b88]
test ecx, ecx
jns 0x10066b7e
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [edi + 0x1b84]
call fcn.10077fb0
mov dword [edi + 0x1b84], 0
mov ecx, dword [edi + 0x1d3c]
test ecx, ecx
jns 0x10066bae
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
lea ecx, [edi + 0x1d38]
call fcn.10077f30
lea esi, [edi + 0x1d14]
mov dword [edi + 0x1d38], 0
mov ecx, dword [esi + 4]
test ecx, ecx
jns 0x10066bdd
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor ecx, ecx
test eax, eax
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10077ae0
mov dword [esi], 0
cmp dword [esi + 4], 0
jne 0x10066bf2
push 8
mov ecx, esi
call fcn.10077ae0
mov ecx, dword [esi]
mov eax, dword [esi + 8]
push 0
mov dword [eax + ecx*4], 0
lea ecx, [edi + 0x1d20]
inc dword [esi]
call fcn.100778b0
mov esi, dword [0x10163478]
cmp byte [esi + 0x2fd8], 0
mov dword [esi + 0x2fdc], 0
je 0x10066d18
mov eax, dword [esi + 0x6c]
mov ecx, dword [esi + 0x1bd0]
mov dword [esp + 0x20], ecx
mov dword [esi + 0x1ec0], 7
test eax, eax
js 0x10066c5b
mov ecx, eax
call fcn.10068780
mov ecx, dword [esp + 0x20]
test al, al
je 0x10066c5b
mov byte [esi + 0x2fd8], 0
mov edx, dword [0x10163478]
vmovss xmm0, dword [edx + 0x410]
vucomiss xmm0, dword [0x1014e724]
lahf
test ah, 0x44
jp 0x10066c88
test ecx, ecx
je 0x10066c88
mov dword [esi + 0x2fdc], ecx
mov byte [esi + 0x2fd8], 0
vmovss xmm0, dword [0x1014e80c]
or dword [edx + 0x1c84], 0x40
xor ecx, ecx
vmovss dword [edx + 0x1cd8], xmm0
call fcn.10070660
mov esi, dword [esp + 0x20]
push esi
push str.HoveredId:_0x_08X
call fcn.100939e0
push str.Press_ESC_to_abort_picking.
call fcn.100939e0
add esp, 0xc
mov ecx, 0x1600
test esi, esi
mov eax, 0x15f0
cmove eax, ecx
add eax, dword [0x10163478]
push str.Click_to_break_in_debugger_
push eax
call fcn.10093ad0
mov eax, dword [0x10163478]
add esp, 8
mov esi, dword [esp + 0xc]
mov eax, dword [eax + 0x1ba8]
test dword [eax + 8], 0x2000000
jne 0x10066d11
push 0x2112
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.GetCurrentWindowRead____Flags__ImGuiWindowFlags_Tooltip
call esi
add esp, 0xc
call fcn.1006de80
jmp 0x10066d1c
mov esi, dword [esp + 0xc]
mov ecx, dword [0x10163478]
mov dword [esp + 0x28], ecx
mov dword [ecx + 0x1bc8], 0
mov eax, dword [ecx + 0x2ff0]
inc eax
cmp dword [ecx + 0x1b48], eax
jne 0x10066e64
mov eax, dword [ecx + 0x1bd0]
mov dword [esp + 0x20], eax
test eax, eax
jne 0x10066d5b
mov eax, dword [ecx + 0x1be0]
mov dword [esp + 0x20], eax
cmp dword [ecx + 0x2ff8], eax
je 0x10066dbc
lea edx, [ecx + 0x2ffc]
mov dword [ecx + 0x2ff8], eax
mov dword [ecx + 0x2ff4], 0xffffffff
mov edi, dword [edx + 4]
test edi, edi
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x30], edx
jge 0x10066db6
mov eax, dword [esp + 0x24]
xor ecx, ecx
cdq
sub eax, edx
sar eax, 1
add eax, dword [esp + 0x24]
test eax, eax
cmovg ecx, eax
push ecx
mov ecx, dword [esp + 0x34]
call fcn.10078020
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x30]
mov dword [edx], 0
test eax, eax
je 0x10066e64
mov edx, dword [ecx + 0x2ff4]
test edx, edx
js 0x10066df7
cmp edx, dword [ecx + 0x2ffc]
jge 0x10066df7
mov eax, dword [ecx + 0x3004]
shl edx, 6
cmp byte [eax + edx + 5], 0
jne 0x10066ded
cmp byte [eax + edx + 4], 2
jle 0x10066df3
inc dword [ecx + 0x2ff4]
mov eax, dword [esp + 0x20]
mov edx, dword [ecx + 0x2ff4]
cmp edx, 0xffffffff
jne 0x10066e0a
mov dword [ecx + 0x1bc8], eax
jmp 0x10066e64
test edx, edx
js 0x10066e64
cmp edx, dword [ecx + 0x2ffc]
jge 0x10066e64
mov eax, edx
shl eax, 6
mov dword [esp + 0x30], eax
mov eax, dword [ecx + 0x3004]
mov edi, dword [esp + 0x30]
mov eax, dword [edi + eax]
mov edi, dword [esp + 0x1c]
mov dword [ecx + 0x1bc8], eax
cmp edx, dword [ecx + 0x2ffc]
jl 0x10066e56
push 0x6b9
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.h
push str.i___0__i___Size
call esi
mov ecx, dword [esp + 0x34]
add esp, 0xc
mov eax, dword [ecx + 0x3004]
mov ecx, dword [esp + 0x30]
inc byte [eax + ecx + 4]
mov eax, dword [0x10163478]
xor edx, edx
vmovss xmm0, dword [0x1014ea34]
mov byte [edi + 0x1b55], 1
mov ecx, str.DebugDefault
push 0
or dword [eax + 0x1c84], 2
vmovss dword [eax + 0x1ca4], xmm0
vmovss dword [eax + 0x1ca8], xmm0
mov dword [eax + 0x1c8c], 4
call fcn.1006b5e0
mov eax, dword [edi + 0x1ba8]
add esp, 4
cmp byte [eax + 0x92], 1
je 0x10066ecd
push 0x1061
push str.D:KanyeHook_main_srcTeamFortress2TeamFortress2FeaturesMenuImGuiimgui.cpp
push str.g.CurrentWindow__IsFallbackWindow__true
call esi
add esp, 0xc
mov edx, 1
mov ecx, edi
call fcn.100647a0
pop edi
pop esi
mov esp, ebp
pop ebp
ret