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

Disassembly:
sub esp, 0x180
mov eax, dword [0x1010e440]
xor eax, esp
mov dword [esp + 0x17c], eax
push ebx
push ebp
mov ebp, dword [0x1010ef08]
push esi
push edi
mov edi, dword [esp + 0x194]
lea ebx, [ebp + 0x5ad4]
mov dword [esp + 0x28], ebp
cmp byte [ebx], 0
mov dword [esp + 0x4c], ebx
je 0x1000293b
push ebx
call fcn.10004613
pop ecx
lea esi, [ebx + 1]
cmp byte [esi], 0
je 0x1000294a
push esi
call fcn.10004ad7
pop ecx
push 0
push edi
push str.Dear_ImGui_Metrics_Debugger
call fcn.10004ec8
add esp, 0xc
test al, al
je 0x100045f5
mov ecx, dword [0x1010ef08]
xor edx, edx
inc edx
mov eax, dword [ecx + 0x3e40]
mov byte [eax + 0xac], dl
mov eax, dword [ecx + 0x3e40]
cmp word [eax + 0xb6], dx
jg 0x100045f5
push str.1.89.4
push str.Dear_ImGui__s
call fcn.1004ea50
movss xmm1, dword [ebp + 0xa0]
cvtps2pd xmm0, xmm1
movsd qword [esp], xmm0
movss xmm0, dword [0x100bbeac]
divss xmm0, xmm1
push ecx
push ecx
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Application_average__.3f_ms_frame___.1f_FPS_
call fcn.1004ea50
mov ecx, dword [ebp + 0xa8]
mov eax, ecx
push 3
pop edi
cdq
idiv edi
push eax
push ecx
push dword [ebp + 0xa4]
push str._d_vertices___d_indices___d_triangles_
call fcn.1004ea50
push dword [ebp + 0xb4]
push dword [ebp + 0xac]
push str._d_visible_windows___d_active_allocations
call fcn.1004ea50
add esp, 0x30
call fcn.1004e861
mov edi, str.OuterRect
mov dword [esp + 0x7c], str.OuterRectClipped
mov ecx, str.InnerRect
mov dword [esp + 0x78], edi
mov edx, str.InnerClipRect
mov dword [esp + 0x80], ecx
mov eax, str.WorkRect
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], str.Content
mov dword [esp + 0x90], str.ContentIdeal
mov dword [esp + 0x94], str.ContentRegionRect
mov dword [esp + 0x98], edi
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], str.HostClipRect
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], str.BackgroundClipRect
mov dword [esp + 0xb0], str.ColumnsRect
mov dword [esp + 0xb4], str.ColumnsWorkRect
mov dword [esp + 0xb8], str.ColumnsClipRect
mov dword [esp + 0xbc], str.ColumnsContentHeadersUsed
mov dword [esp + 0xc0], str.ColumnsContentHeadersIdeal
mov dword [esp + 0xc4], str.ColumnsContentFrozen
mov dword [esp + 0xc8], str.ColumnsContentUnfrozen
cmp dword [ebx + 8], 0
jge 0x10002ae9
mov dword [ebx + 8], 4
lea edi, [ebx + 0xc]
cmp dword [edi], 0
jge 0x10002af7
mov dword [edi], 2
push str.Tools
call fcn.100554cb
pop ecx
test al, al
je 0x100030d7
push str.UTF_8_Encoding_viewer
call fcn.100554cb
mov dword [esp], 0xbf800000
mov bl, al
push ecx
and dword [esp], 0
call fcn.10007db6
push str.You_can_also_call_ImGui::DebugTextEncoding___from_your_code_with_a_given_string_to_test_that_your_UTF_8_encoding_settings_are_correct.
call fcn.10019b02
add esp, 0xc
test bl, bl
je 0x10002b7d
mov eax, dword [0x1010ef08]
mov ebx, 0x1010ef28
or dword [eax + 0x46a0], 1
mov dword [eax + 0x46a4], 0x80800000
xor eax, eax
push eax
push eax
push eax
push 0x64
push ebx
push str.Text
call fcn.10051c91
add esp, 0x18
cmp byte [0x1010ef28], 0
je 0x10002b78
push ebx
call fcn.1000a7eb
pop ecx
call fcn.10055714
lea ebx, [ebp + 0x5acb]
push ebx
push str.Show_Item_Picker
call fcn.1004f107
pop ecx
pop ecx
test al, al
je 0x10002ba5
cmp byte [ebx], 0
je 0x10002ba5
mov eax, dword [0x1010ef08]
mov byte [eax + 0x5acb], 1
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push str.Will_call_the_IM_DEBUG_BREAK___macro_to_break_in_debugger._nWarning:_If_you_dont_have_a_debugger_attached__this_will_probably_crash.
call fcn.10019b02
lea ebx, [ebp + 0x5ad4]
push ebx
push str.Show_Debug_Log
call fcn.1004f107
add esp, 0xc
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push str.You_can_also_call_ImGui::ShowDebugLogWindow___from_your_code.
call fcn.10019b02
push esi
push str.Show_Stack_Tool
call fcn.1004f107
add esp, 0xc
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push str.You_can_also_call_ImGui::ShowStackToolWindow___from_your_code.
call fcn.10019b02
lea eax, [ebx + 3]
push eax
push str.Show_windows_begin_order
call fcn.1004f107
lea esi, [ebx + 2]
push esi
push str.Show_windows_rectangles
call fcn.1004f107
add esp, 0x14
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
mov eax, dword [0x1010ef08]
push 8
push 8
movss xmm0, dword [eax + 0x3bd0]
mulss xmm0, dword [0x100bbe6c]
or dword [eax + 0x46a0], 1
movss dword [eax + 0x46a4], xmm0
lea eax, [esp + 0x88]
push eax
lea eax, [ebx + 8]
push eax
push str.show_windows_rect_type
call fcn.10050462
add esp, 0x1c
or byte [esi], al
je 0x10002d78
mov eax, dword [ebp + 0x47c0]
test eax, eax
je 0x10002d78
push dword [eax + 4]
push str._s:
call fcn.1004ed7c
pop ecx
and dword [esp], 0
call fcn.10007e72
pop ecx
xor esi, esi
push esi
push dword [ebp + 0x47c0]
lea eax, [esp + 0xd4]
push eax
call fcn.10018aec
movss xmm0, dword [esp + 0xe4]
add esp, 0xc
subss xmm0, dword [esp + 0xd0]
push dword [esp + esi*4 + 0x78]
cvtps2pd xmm0, xmm0
sub esp, 0x30
movsd qword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x108]
subss xmm0, dword [esp + 0x100]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
movss xmm0, dword [esp + 0x10c]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x18], xmm0
movss xmm0, dword [esp + 0x108]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x10], xmm0
movss xmm0, dword [esp + 0x104]
cvtps2pd xmm0, xmm0
movsd qword [esp + 8], xmm0
movss xmm0, dword [esp + 0x100]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.__6.1f__6.1f____6.1f__6.1f__Size___6.1f__6.1f___s
call fcn.1004ea50
add esp, 0x38
inc esi
cmp esi, 8
jl 0x10002cbb
push ecx
and dword [esp], 0
call fcn.10007ecc
pop ecx
lea esi, [ebx + 4]
push esi
push str.Show_tables_rectangles
call fcn.1004f107
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
mov eax, dword [0x1010ef08]
push 0xd
push 0xd
movss xmm0, dword [eax + 0x3bd0]
mulss xmm0, dword [0x100bbe6c]
or dword [eax + 0x46a0], 1
movss dword [eax + 0x46a4], xmm0
lea eax, [esp + 0xa8]
push eax
push edi
push str.show_table_rects_type
call fcn.10050462
add esp, 0x1c
or byte [esi], al
je 0x100030a6
cmp dword [ebp + 0x47c0], 0
je 0x100030a6
xor eax, eax
mov dword [esp + 0x14], eax
cmp dword [ebp + 0x4a04], eax
jle 0x100030a6
lea ecx, [ebp + 0x49f8]
push eax
call fcn.1001da99
mov esi, eax
test esi, esi
je 0x1000308b
mov ecx, dword [ebp + 0x3de0]
dec ecx
cmp dword [esi + 0x3c], ecx
jl 0x1000308b
mov ecx, dword [esi + 0x14c]
mov eax, dword [ebp + 0x47c0]
cmp ecx, eax
je 0x10002e3e
cmp dword [esi + 0x150], eax
jne 0x1000308b
push dword [ecx + 4]
push dword [esi + 0x40]
push dword [esi]
push str.Table_0x_08X___d_columns__in__s_
call fcn.1004ed7c
push 0
call fcn.1000952f
add esp, 0x14
test al, al
je 0x10002ed8
call fcn.100098ac
movss xmm1, dword [0x100bbe20]
movss xmm0, dword [esi + 0xc4]
addss xmm0, xmm1
push ecx
mov dword [esp], 0x40000000
push 0
push ecx
and dword [esp], 0
lea ecx, [esp + 0x5c]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [esi + 0xc8]
addss xmm0, xmm1
push 0xff00ffff
push ecx
lea ecx, [esp + 0x34]
push ecx
movss dword [esp + 0x6c], xmm0
mov ecx, eax
movss xmm0, dword [esi + 0xbc]
subss xmm0, xmm1
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esi + 0xc0]
subss xmm0, xmm1
movss dword [esp + 0x3c], xmm0
call fcn.1003793b
push ecx
and dword [esp], 0
call fcn.10007e72
xor ebp, ebp
lea ebx, [esp + 0x9c]
pop ecx
mov edi, ebp
mov dword [esp + 0x10], ebx
cmp edi, 6
jb 0x10003332
je 0x10002f06
cmp edi, 8
jne 0x1000306b
mov ebx, ebp
cmp dword [esi + 0x40], ebp
jle 0x10003067
mov ebp, dword [esp + 0x10]
push ebx
push edi
lea eax, [esp + 0x44]
push esi
push eax
call fcn.100188b6
movss xmm0, dword [esp + 0x58]
lea eax, [esp + 0x11c]
subss xmm0, dword [esp + 0x50]
add esp, 0x10
push dword [ebp]
cvtps2pd xmm0, xmm0
push ebx
sub esp, 0x30
movsd qword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x7c]
subss xmm0, dword [esp + 0x74]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
movss xmm0, dword [esp + 0x80]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x18], xmm0
movss xmm0, dword [esp + 0x7c]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x10], xmm0
movss xmm0, dword [esp + 0x78]
cvtps2pd xmm0, xmm0
movsd qword [esp + 8], xmm0
movss xmm0, dword [esp + 0x74]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.__6.1f__6.1f____6.1f__6.1f__Size___6.1f__6.1f__Col__d__s
push 0x80
push eax
call fcn.1000c5e5
and dword [esp + 0x9c], 0
lea eax, [esp + 0x9c]
and dword [esp + 0xa0], 0
push eax
push 0
lea eax, [esp + 0x158]
push 0
push eax
call fcn.1005597b
add esp, 0x54
push 0
call fcn.1000952f
pop ecx
test al, al
je 0x1000305b
call fcn.100098ac
movss xmm1, dword [0x100bbe20]
movss xmm0, dword [esp + 0x44]
addss xmm0, xmm1
push ecx
mov dword [esp], 0x40000000
push 0
push ecx
and dword [esp], 0
lea ecx, [esp + 0x6c]
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [esp + 0x54]
addss xmm0, xmm1
push 0xff00ffff
push ecx
lea ecx, [esp + 0x7c]
push ecx
movss dword [esp + 0x7c], xmm0
mov ecx, eax
movss xmm0, dword [esp + 0x54]
subss xmm0, xmm1
movss dword [esp + 0x80], xmm0
movss xmm0, dword [esp + 0x58]
subss xmm0, xmm1
movss dword [esp + 0x84], xmm0
call fcn.1003793b
inc ebx
cmp ebx, dword [esi + 0x40]
jl 0x10002f15
xor ebp, ebp
mov ebx, dword [esp + 0x10]
inc edi
add ebx, 4
mov dword [esp + 0x10], ebx
cmp edi, 0xd
jl 0x10002ef2
push ecx
and dword [esp], 0
call fcn.10007ecc
mov ebp, dword [esp + 0x2c]
pop ecx
mov eax, dword [esp + 0x14]
lea ecx, [ebp + 0x49f8]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [ebp + 0x4a04]
jl 0x10002e02
lea eax, [ebp + 0x6d]
push eax
push str.Debug_Begin_BeginChild_return_value
call fcn.1004f107
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push str.Some_calls_to_Begin___BeginChild___will_return_false._n_nWill_cycle_through_window_depths_then_repeat._Windows_should_be_flickering_while_running.
call fcn.10019b02
add esp, 0xc
call fcn.10055714
lea edi, [ebp + 0x3df8]
push dword [edi]
push str.Windows___d_
push str.Windows
call fcn.1005550c
add esp, 0xc
test al, al
je 0x10003194
push str.By_display_order
push edi
call fcn.10014cc1
lea eax, [ebp + 0x3e04]
push str.By_focus_order__root_windows_
push eax
call fcn.10014cc1
push str.By_submission_order__begin_stack_
call fcn.100554cb
add esp, 0x14
test al, al
je 0x1000318f
lea esi, [ebp + 0x3e10]
push 0
mov ecx, esi
call fcn.10020041
xor ebx, ebx
cmp dword [edi], ebx
jle 0x10003162
mov eax, dword [ebp + 0x3e00]
lea ecx, [eax + ebx*4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x238]
inc eax
cmp eax, dword [ebp + 0x3de0]
jl 0x1000315d
push ecx
mov ecx, esi
call fcn.1001fa42
inc ebx
cmp ebx, dword [edi]
jl 0x1000313b
cmp dword [esi], 1
jbe 0x1000317b
push 0x10015e66
push 4
push dword [esi]
push dword [esi + 8]
call fcn.100a1df0
add esp, 0x10
push 0
push dword [esi]
push dword [esi + 8]
call fcn.10014d24
add esp, 0xc
call fcn.10055714
call fcn.10055714
mov ecx, dword [ebp + 0x47b4]
xor edx, edx
test ecx, ecx
jle 0x100031c4
mov edi, dword [ebp + 0x47bc]
mov eax, dword [edi]
push 2
add eax, 0x64
xor esi, esi
pop ebx
add esi, dword [eax]
lea eax, [eax + 0xc]
sub ebx, 1
jne 0x100031b0
add edx, esi
add edi, 4
sub ecx, 1
jne 0x100031a6
push edx
push str.DrawLists___d_
push str.DrawLists
call fcn.1005550c
add esp, 0xc
test al, al
je 0x1000325f
lea eax, [ebp + 0x5ad9]
push eax
push str.Show_ImDrawCmd_mesh_when_hovering
call fcn.1004f107
lea eax, [ebp + 0x5ada]
push eax
push str.Show_ImDrawCmd_bounding_boxes_when_hovering
call fcn.1004f107
xor edi, edi
add esp, 0x10
cmp dword [ebp + 0x47b4], edi
jle 0x1000325a
mov eax, dword [ebp + 0x47bc]
push 2
mov esi, dword [eax + edi*4]
pop eax
add esi, 0x64
mov dword [esp + 0x14], eax
xor ebx, ebx
cmp dword [esi], ebx
jle 0x10003245
mov eax, dword [esi + 8]
push str.DrawList
push dword [eax + ebx*4]
push 0
call fcn.10013560
add esp, 0xc
inc ebx
cmp ebx, dword [esi]
jl 0x10003227
mov eax, dword [esp + 0x14]
add esi, 0xc
sub eax, 1
mov dword [esp + 0x14], eax
jne 0x10003221
inc edi
cmp edi, dword [ebp + 0x47b4]
jl 0x1000320e
call fcn.10055714
push dword [ebp + 0x47b4]
push str.Viewports___d_
push str.Viewports
call fcn.1005550c
add esp, 0xc
test al, al
je 0x100032c3
call fcn.100557b3
push ecx
fstp dword [esp]
call fcn.10007e72
call fcn.1001c95d
call fcn.100557b3
fstp dword [esp]
call fcn.10007ecc
xor esi, esi
pop ecx
cmp dword [ebp + 0x47b4], esi
jle 0x100032be
mov eax, dword [ebp + 0x47bc]
push dword [eax + esi*4]
call fcn.10014dca
inc esi
pop ecx
cmp esi, dword [ebp + 0x47b4]
jl 0x100032a6
call fcn.10055714
push dword [ebp + 0x4798]
push str.Popups___d_
push str.Popups
call fcn.1005550c
add esp, 0xc
mov ebx, str.NULL
mov esi, 0x100b8e30
test al, al
je 0x1000352a
and dword [esp + 0x20], 0
cmp dword [ebp + 0x4798], 0
jle 0x10003525
xor edi, edi
mov ecx, dword [ebp + 0x47a0]
mov eax, dword [ecx + edi + 4]
test eax, eax
je 0x1000349c
mov edx, dword [eax + 0x2f8]
test edx, edx
je 0x1000349c
mov esi, dword [edx + 4]
mov dword [esp + 0x14], esi
mov esi, 0x100b8e30
jmp 0x100034a0
or eax, 0xffffffff
push eax
push edi
lea eax, [esp + 0xd4]
push esi
push eax
call fcn.100188b6
movss xmm0, dword [esp + 0xe8]
lea eax, [esp + 0x11c]
subss xmm0, dword [esp + 0xe0]
add esp, 0x10
push dword [ebx]
cvtps2pd xmm0, xmm0
sub esp, 0x30
movsd qword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x108]
subss xmm0, dword [esp + 0x100]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x20], xmm0
movss xmm0, dword [esp + 0x10c]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x18], xmm0
movss xmm0, dword [esp + 0x108]
cvtps2pd xmm0, xmm0
movsd qword [esp + 0x10], xmm0
movss xmm0, dword [esp + 0x104]
cvtps2pd xmm0, xmm0
movsd qword [esp + 8], xmm0
movss xmm0, dword [esp + 0x100]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.__6.1f__6.1f____6.1f__6.1f__Size___6.1f__6.1f___s
push 0x80
push eax
call fcn.1000c5e5
and dword [esp + 0xb0], 0
lea eax, [esp + 0xb0]
and dword [esp + 0xb4], 0
push eax
push ebp
lea eax, [esp + 0x154]
push ebp
push eax
call fcn.1005597b
add esp, 0x50
push ebp
call fcn.1000952f
pop ecx
test al, al
je 0x1000306b
call fcn.100098ac
movss xmm1, dword [0x100bbe20]
movss xmm0, dword [esp + 0xd4]
addss xmm0, xmm1
push ecx
mov dword [esp], 0x40000000
push ebp
push ecx
and dword [esp], 0
lea ecx, [esp + 0x38]
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0xe4]
addss xmm0, xmm1
push 0xff00ffff
push ecx
lea ecx, [esp + 0x2c]
push ecx
movss dword [esp + 0x48], xmm0
mov ecx, eax
movss xmm0, dword [esp + 0xe4]
subss xmm0, xmm1
movss dword [esp + 0x30], xmm0
movss xmm0, dword [esp + 0xe8]
subss xmm0, xmm1
movss dword [esp + 0x34], xmm0
call fcn.1003793b
jmp 0x1000306b
mov dword [esp + 0x14], ebx
mov edx, dword [ecx + edi + 8]
test edx, edx
je 0x100034b1
mov edx, dword [edx + 4]
mov dword [esp + 0x10], edx
jmp 0x100034b5
mov dword [esp + 0x10], ebx
test eax, eax
je 0x100034dd
test dword [eax + 0xc], 0x10000000
je 0x100034c9
mov esi, str.Menu_
jmp 0x100034cd
test eax, eax
je 0x100034dd
test dword [eax + 0xc], 0x1000000
je 0x100034dd
mov edx, str.Child_
jmp 0x100034e6
mov edx, 0x100b8e30
test eax, eax
je 0x100034eb
mov eax, dword [eax + 4]
jmp 0x100034ed
mov eax, ebx
push dword [esp + 0x14]
push dword [esp + 0x14]
push esi
push edx
push eax
push dword [ecx + edi]
push str.PopupID:__08x__Window:__s___s_s___BackupNavWindow__s__ParentWindow__s
call fcn.1004ed7c
mov edx, dword [esp + 0x3c]
add esp, 0x1c
inc edx
add edi, 0x28
mov esi, 0x100b8e30
mov dword [esp + 0x20], edx
cmp edx, dword [ebp + 0x4798]
jl 0x10003301
call fcn.10055714
push dword [ebp + 0x4a50]
push str.Tab_Bars___d_
push str.TabBars
call fcn.1005550c
add esp, 0xc
test al, al
je 0x1000359b
xor esi, esi
cmp dword [ebp + 0x4a40], esi
jle 0x10003596
push esi
lea ecx, [ebp + 0x4a34]
call fcn.1001da79
mov edi, eax
test edi, edi
je 0x10003588
push edi
call fcn.100084c3
mov dword [esp], 0x100ba90c
push edi
call fcn.1001449a
mov eax, dword [0x1010ef08]
pop ecx
pop ecx
mov eax, dword [eax + 0x3e40]
dec dword [eax + 0xe4]
inc esi
cmp esi, dword [ebp + 0x4a40]
jl 0x10003550
mov ebx, str.NULL
call fcn.10055714
push dword [ebp + 0x4a14]
push str.Tables___d_
push str.Tables
call fcn.1005550c
add esp, 0xc
test al, al
je 0x100035e6
xor esi, esi
cmp dword [ebp + 0x4a04], esi
jle 0x100035e1
push esi
lea ecx, [ebp + 0x49f8]
call fcn.1001da99
test eax, eax
je 0x100035d8
push eax
call fcn.1004d341
pop ecx
inc esi
cmp esi, dword [ebp + 0x4a04]
jl 0x100035c1
call fcn.10055714
mov esi, dword [ebp + 0x48]
push dword [esi + 0x3c]
push str.Fonts___d_
push str.Fonts
call fcn.1005550c
add esp, 0xc
test al, al
je 0x1000360e
push esi
call fcn.10013253
pop ecx
call fcn.10055714
push 0x100ba93c
call fcn.100554cb
pop ecx
test al, al
je 0x1000362f
lea eax, [ebp + 0x4a84]
push eax
call fcn.10061518
pop ecx
call fcn.10055714
push str.Settings
call fcn.100554cb
pop ecx
test al, al
je 0x10003882
push str.Clear
call fcn.1004efb0
pop ecx
test al, al
je 0x10003656
call fcn.1000ec8e
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push str.Save_to_memory
call fcn.1004efb0
add esp, 0xc
test al, al
je 0x10003682
push 0
call fcn.1000a767
pop ecx
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push str.Save_to_disk
call fcn.1004efb0
add esp, 0xc
test al, al
je 0x100036af
push dword [ebp + 0x20]
call fcn.1000a70c
pop ecx
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
cmp dword [ebp + 0x20], 0
pop ecx
pop ecx
je 0x100036d9
push dword [ebp + 0x20]
push str.__s_
call fcn.1004ea50
jmp 0x100036e5
push 0
push str._NULL_
call fcn.1004ea3d
movss xmm0, dword [ebp + 0x5a14]
pop ecx
pop ecx
cvtps2pd xmm0, xmm0
push ecx
push ecx
movsd qword [esp], xmm0
push str.SettingsDirtyTimer__.2f
call fcn.1004ea50
push dword [ebp + 0x5a24]
push str.Settings_handlers:___d_
push str.SettingsHandlers
call fcn.1005550c
add esp, 0x18
test al, al
je 0x10003751
xor edi, edi
cmp dword [ebp + 0x5a24], edi
jle 0x1000374c
xor esi, esi
mov eax, dword [ebp + 0x5a2c]
push dword [esi + eax]
push 0x100ba9c8
call fcn.1004ed7c
inc edi
lea esi, [esi + 0x24]
pop ecx
pop ecx
cmp edi, dword [ebp + 0x5a24]
jl 0x1000372b
call fcn.10055714
push dword [ebp + 0x5a30]
push str.Settings_packed_data:_Windows:__d_bytes
push str.SettingsWindows
call fcn.1005550c
add esp, 0xc
test al, al
je 0x100037a7
mov esi, dword [ebp + 0x5a38]
test esi, esi
je 0x100037a2
add esi, 4
je 0x100037a2
push esi
call fcn.10014c76
mov edx, dword [esi - 4]
mov eax, dword [ebp + 0x5a38]
add edx, esi
add eax, 4
xor esi, esi
add eax, dword [ebp + 0x5a30]
cmp edx, eax
pop ecx
cmovne esi, edx
test esi, esi
jne 0x1000377c
call fcn.10055714
push dword [ebp + 0x5a3c]
push str.Settings_packed_data:_Tables:__d_bytes
push str.SettingsTables
call fcn.1005550c
add esp, 0xc
test al, al
je 0x100037fd
mov esi, dword [ebp + 0x5a44]
test esi, esi
je 0x100037f8
add esi, 4
je 0x100037f8
push esi
call fcn.1004d916
mov edx, dword [esi - 4]
mov eax, dword [ebp + 0x5a3c]
add edx, esi
add eax, 4
xor esi, esi
add eax, dword [ebp + 0x5a44]
cmp edx, eax
pop ecx
cmovne esi, edx
test esi, esi
jne 0x100037d2
call fcn.10055714
mov ecx, dword [ebp + 0x5a18]
lea eax, [ecx - 1]
neg ecx
sbb ecx, ecx
and ecx, eax
push ecx
push str.Settings_unpacked_data__.ini_:__d_bytes
push str.SettingsIniData
call fcn.1005550c
add esp, 0xc
test al, al
je 0x1000387d
mov eax, dword [0x1010ef08]
mov ecx, 0x1010ef0c
push 0
push 0
push 0x4000
movss xmm0, dword [eax + 0x3bd0]
mov eax, dword [ebp + 0x5a20]
test eax, eax
mulss xmm0, dword [0x100bbe78]
cmovne ecx, eax
mov dword [esp + 0x24], 0x80800000
lea eax, [esp + 0x24]
push eax
push dword [ebp + 0x5a18]
movss dword [esp + 0x30], xmm0
push ecx
push str.Ini
call fcn.10051cc0
add esp, 0x1c
call fcn.10055714
call fcn.10055714
push str.Inputs
call fcn.100554cb
pop ecx
test al, al
je 0x10003f1e
push str.KEYBOARD_GAMEPAD_MOUSE_KEYS
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
mov dword [esp], str.Keys_down:
call fcn.1004ea50
pop ecx
xor esi, esi
mov edi, 0x8b
mov ebp, str.__s___d
push esi
call fcn.10019847
pop ecx
test al, al
jne 0x10003942
push 0
push esi
call fcn.10011770
pop ecx
pop ecx
test al, al
je 0x10003942
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push esi
call fcn.1000a0ed
push esi
push eax
lea eax, [esi - 0x200]
mov ecx, str.__s_
cmp eax, edi
cmova ecx, ebp
push ecx
call fcn.1004ea50
add esp, 0x10
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push esi
call fcn.100112e6
movss xmm0, dword [eax + 4]
cvtps2pd xmm0, xmm0
movsd qword [esp + 4], xmm0
mov dword [esp], str.__.02f_
call fcn.1004ea50
add esp, 0xc
inc esi
cmp esi, 0x28c
jl 0x100038c1
push str.Keys_pressed:
call fcn.1004ea50
pop ecx
xor esi, esi
mov ebx, str.__s___d
push esi
call fcn.10019847
pop ecx
test al, al
jne 0x100039ae
push 1
push esi
call fcn.1000a07a
pop ecx
pop ecx
test al, al
je 0x100039ae
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push esi
call fcn.1000a0ed
push esi
push eax
lea eax, [esi - 0x200]
mov ecx, str.__s_
cmp eax, edi
cmova ecx, ebx
push ecx
call fcn.1004ea50
add esp, 0x18
inc esi
cmp esi, 0x28c
jl 0x10003961
push str.Keys_released:
call fcn.1004ea50
pop ecx
xor esi, esi
mov ebx, str.NULL
mov ebp, str.__s___d
push esi
call fcn.10019847
pop ecx
test al, al
jne 0x10003a1b
push 0
push esi
call fcn.10011825
pop ecx
pop ecx
test al, al
je 0x10003a1b
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push esi
call fcn.1000a0ed
push esi
push eax
lea eax, [esi - 0x200]
mov ecx, str.__s_
cmp eax, edi
cmova ecx, ebp
push ecx
call fcn.1004ea50
add esp, 0x18
inc esi
cmp esi, 0x28c
jl 0x100039ce
mov ebp, dword [esp + 0x28]
mov ecx, 0x100b8e30
mov eax, str.SUPER
cmp byte [ebp + 0xddb], 0
cmove eax, ecx
cmp byte [ebp + 0xdda], 0
push eax
mov eax, str.ALT
cmove eax, ecx
cmp byte [ebp + 0xdd9], 0
push eax
mov eax, str.SHIFT
cmove eax, ecx
cmp byte [ebp + 0xdd8], 0
push eax
mov eax, str.CTRL
cmove eax, ecx
push eax
push str.Keys_mods:__s_s_s_s
call fcn.1004ea50
push str.Chars_queue:
call fcn.1004ea50
xor edi, edi
add esp, 0x18
cmp dword [ebp + 0x3778], edi
jle 0x10003ae1
mov eax, dword [ebp + 0x3780]
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
movzx ebx, word [eax + edi*2]
and dword [esp], 0
call fcn.10007db6
lea ecx, [ebx - 0x21]
movzx eax, bl
mov esi, ebx
mov ebx, 0xde
push 0x3f
pop edx
cmp cx, bx
push esi
cmovbe edx, eax
movsx eax, dl
push eax
push str._c__0x_04X_
call fcn.1004ea50
add esp, 0x14
inc edi
cmp edi, dword [ebp + 0x3778]
jl 0x10003a8e
mov ebx, str.NULL
call fcn.1000720a
push eax
call fcn.10014eee
and dword [esp], 0
call fcn.10007ecc
mov dword [esp], str.MOUSE_STATE
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
push 0
call fcn.1000a2cd
pop ecx
pop ecx
test al, al
je 0x10003b4a
movss xmm0, dword [ebp + 0xdc4]
sub esp, 0x10
cvtps2pd xmm0, xmm0
movsd qword [esp + 8], xmm0
movss xmm0, dword [ebp + 0xdc0]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Mouse_pos:___g___g_
call fcn.1004ea50
add esp, 0x14
jmp 0x10003b55
push str.Mouse_pos:__INVALID_
call fcn.1004ea50
pop ecx
movss xmm0, dword [ebp + 0xbc]
sub esp, 0x10
cvtps2pd xmm0, xmm0
movsd qword [esp + 8], xmm0
movss xmm0, dword [ebp + 0xb8]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.Mouse_delta:___g___g_
call fcn.1004ea50
push str.Mouse_down:
call fcn.1004ea50
add esp, 0x18
lea edi, [ebp + 0x3730]
xor esi, esi
push esi
call fcn.1000a157
pop ecx
test al, al
je 0x10003bd0
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
movss xmm0, dword [edi]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push esi
push str.b_d___.02f_secs_
call fcn.1004ea50
add esp, 0x10
inc esi
add edi, 4
cmp esi, 5
jl 0x10003b98
push str.Mouse_clicked:
call fcn.1004ea50
pop ecx
xor esi, esi
lea edi, [ebp + 0x370a]
push 0
push 0
push esi
call fcn.10011885
add esp, 0xc
test al, al
je 0x10003c22
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
movzx eax, word [edi]
push eax
push esi
push str.b_d___d_
call fcn.1004ea50
add esp, 0x14
inc esi
add edi, 2
cmp esi, 5
jl 0x10003bec
push str.Mouse_released:
call fcn.1004ea50
pop ecx
xor esi, esi
push esi
call fcn.1000a19a
pop ecx
test al, al
je 0x10003c64
push ecx
push ecx
mov dword [esp + 4], 0xbf800000
and dword [esp], 0
call fcn.10007db6
push esi
push 0x100babcc
call fcn.1004ea50
add esp, 0x10
inc esi
cmp esi, 5
jl 0x10003c38
movss xmm0, dword [ebp + 0xdd0]
cvtps2pd xmm0, xmm0
push ecx
push ecx
movsd qword [esp], xmm0
push str.Mouse_wheel:__.1f
call fcn.1004ea50
movss xmm0, dword [ebp + 0x376c]
cvtps2pd xmm0, xmm0
movsd qword [esp + 4], xmm0
mov dword [esp], str.Pen_Pressure:__.1f
call fcn.1004ea50
pop ecx
pop ecx
and dword [esp], 0
call fcn.10007ecc
mov dword [esp], str.MOUSE_WHEELING
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
mov eax, dword [ebp + 0x3e50]
pop ecx
test eax, eax
je 0x10003cd1
mov ebx, dword [eax + 4]
push ebx
push str.WheelingWindow:__s
call fcn.1004ea50
movss xmm0, dword [ebp + 0x3e60]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push str.WheelingWindowReleaseTimer:__.2f
call fcn.1004ea50
movss xmm1, dword [ebp + 0x3e6c]
add esp, 0xc
movss xmm0, dword [ebp + 0x3e70]
comiss xmm1, xmm0
jbe 0x10003d15
mov eax, 0x100b95c4
jmp 0x10003d25
comiss xmm0, xmm1
mov eax, 0x100b95c8
mov ecx, str._none_
cmovbe eax, ecx
cvtps2pd xmm0, xmm0
push eax
sub esp, 0x10
movsd qword [esp + 8], xmm0
cvtps2pd xmm0, xmm1
movsd qword [esp], xmm0
push str.WheelingAxisAvg______.3f___.3f___Main_Axis:__s
call fcn.1004ea50
add esp, 0x14
and dword [esp], 0
call fcn.10007ecc
mov dword [esp], str.KEY_OWNERS
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
mov eax, dword [0x1010ef08]
movss xmm0, dword [eax + 0x3bd0]
addss xmm0, dword [eax + 0x37f0]
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0x80800000
push eax
push str.owners
mulss xmm0, dword [0x100bbe58]
movss dword [esp + 0x28], xmm0
call fcn.10055f0c
add esp, 0xc
mov ebx, 0x200
test al, al
je 0x10003e11
mov esi, ebx
mov ebp, 0x100b8e30
or ebx, 0xffffffff
push esi
call fcn.1001871b
mov edi, eax
pop ecx
cmp dword [edi], ebx
je 0x10003dfa
cmp byte [edi + 9], 0
je 0x10003dcf
mov eax, str._LockUntilRelease
jmp 0x10003ddb
cmp byte [edi + 8], 0
mov eax, str._LockThisFrame
cmove eax, ebp
push eax
push dword [edi]
push esi
call fcn.1000a0ed
pop ecx
push eax
push str._s:_0x_08X_s
call fcn.1004ea50
push dword [edi]
call fcn.1001309c
add esp, 0x14
inc esi
cmp esi, 0x28c
jl 0x10003db5
call fcn.10056181
mov ebp, dword [esp + 0x28]
mov ebx, 0x200
push ecx
and dword [esp], 0
call fcn.10007ecc
mov dword [esp], str.SHORTCUT_ROUTING
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
mov eax, dword [0x1010ef08]
movss xmm0, dword [eax + 0x3bd0]
addss xmm0, dword [eax + 0x37f0]
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0x80800000
push eax
push str.routes
mulss xmm0, dword [0x100bbe58]
movss dword [esp + 0x28], xmm0
call fcn.10055f0c
add esp, 0xc
test al, al
je 0x10003ef0
xor edi, edi
or ecx, 0xffffffff
mov dword [esp + 0x20], edi
movzx eax, word [edi + ebp + 0x4558]
cmp ax, cx
je 0x10003edb
or edi, 0xffffffff
movsx esi, ax
lea eax, [esp + 0xcc]
shl esi, 4
add esi, dword [ebp + 0x4678]
push 0x40
push eax
movzx eax, word [esi + 2]
or eax, ebx
push eax
call fcn.1001131f
push dword [esi + 8]
lea eax, [esp + 0xdc]
push eax
push str._s:_0x_08X
call fcn.1004ea50
push dword [esi + 8]
call fcn.1001309c
movzx eax, word [esi]
add esp, 0x1c
cmp ax, di
jne 0x10003e8a
mov edi, dword [esp + 0x20]
or ecx, 0xffffffff
add edi, 2
inc ebx
mov dword [esp + 0x20], edi
cmp edi, 0x118
jl 0x10003e7a
call fcn.10056181
push dword [ebp + 0x4688]
movzx eax, byte [ebp + 0x468c]
push eax
push str._ActiveIdUsing:_AllKeyboardKeys:__d__NavDirMask:_0x_X_
call fcn.1004ea50
pop ecx
pop ecx
and dword [esp], 0
call fcn.10007ecc
pop ecx
call fcn.10055714
mov ebx, str.NULL
push str.Internal_state
call fcn.100554cb
pop ecx
test al, al
je 0x10004283
push str.WINDOWING
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
mov eax, dword [ebp + 0x3e44]
pop ecx
test eax, eax
je 0x10003f54
mov eax, dword [eax + 4]
jmp 0x10003f56
mov eax, ebx
push eax
push str.HoveredWindow:__s
call fcn.1004ea50
mov eax, dword [ebp + 0x3e44]
pop ecx
pop ecx
test eax, eax
je 0x10003f78
mov eax, dword [eax + 0x300]
mov eax, dword [eax + 4]
jmp 0x10003f7a
mov eax, ebx
push eax
push str.HoveredWindow__Root:__s
call fcn.1004ea50
mov eax, dword [ebp + 0x3e48]
pop ecx
pop ecx
test eax, eax
je 0x10003f96
mov eax, dword [eax + 4]
jmp 0x10003f98
mov eax, ebx
push eax
push str.HoveredWindowUnderMovingWindow:__s
call fcn.1004ea50
mov eax, dword [ebp + 0x3e4c]
pop ecx
pop ecx
test eax, eax
je 0x10003fb4
mov eax, dword [eax + 4]
jmp 0x10003fb6
mov eax, ebx
push eax
push str.MovingWindow:__s
call fcn.1004ea50
pop ecx
and dword [esp], 0
call fcn.10007ecc
mov dword [esp], str.ITEMS
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
mov eax, dword [ebp + 0x3eac]
mov esi, 0x100b9958
movss xmm0, dword [ebp + 0x3e94]
mov edi, str.Mouse
pop ecx
mov dword [esp + 0xcc], esi
mov dword [esp + 0xd0], edi
mov dword [esp + 0xd4], str.Keyboard
mov dword [esp + 0xd8], str.Gamepad
mov dword [esp + 0xdc], 0x100b99d4
mov dword [esp + 0xe0], str.Clipboard
push dword [esp + eax*4 + 0xcc]
movzx eax, byte [ebp + 0x3e99]
push eax
cvtps2pd xmm0, xmm0
push ecx
push ecx
movsd qword [esp], xmm0
push dword [ebp + 0x3eb4]
push dword [ebp + 0x3e8c]
push str.ActiveId:_0x_08X_0x_08X___.2f_sec___AllowOverlap:__d__Source:__s
call fcn.1004ea50
push dword [ebp + 0x3e8c]
call fcn.1001309c
mov eax, dword [ebp + 0x3ea8]
add esp, 0x20
test eax, eax
je 0x1000407f
mov eax, dword [eax + 4]
jmp 0x10004081
mov eax, ebx
push eax
push str.ActiveIdWindow:__s
call fcn.1004ea50
push dword [ebp + 0x4688]
movzx eax, byte [ebp + 0x468c]
push eax
push str.ActiveIdUsing:_AllKeyboardKeys:__d__NavDirMask:__X
call fcn.1004ea50
movss xmm0, dword [ebp + 0x3e84]
add esp, 0x14
movzx eax, byte [ebp + 0x3e80]
cvtps2pd xmm0, xmm0
push eax
push ecx
push ecx
movsd qword [esp], xmm0
push dword [ebp + 0x3e7c]
push str.HoveredId:_0x_08X___.2f_sec___AllowOverlap:__d
call fcn.1004ea50
movss xmm0, dword [ebp + 0x4a78]
add esp, 4
cvtps2pd xmm0, xmm0
movsd qword [esp + 8], xmm0
movss xmm0, dword [ebp + 0x4a74]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push dword [ebp + 0x4a6c]
push str.HoverDelayId:_0x_08X__Timer:__.2f__ClearTimer:__.2f
call fcn.1004ea50
push dword [ebp + 0x4958]
lea eax, [ebp + 0x4968]
push eax
push dword [ebp + 0x495c]
movzx eax, byte [ebp + 0x4944]
push eax
push str.DragDrop:__d__SourceId__0x_08X__Payload___s____d_bytes_
call fcn.1004ea50
push dword [ebp + 0x495c]
call fcn.1001309c
add esp, 0x2c
and dword [esp], 0
call fcn.10007ecc
mov dword [esp], str.NAV_FOCUS
call fcn.1004ea50
and dword [esp], 0
call fcn.10007e72
mov eax, dword [ebp + 0x47c0]
pop ecx
test eax, eax
je 0x10004166
mov eax, dword [eax + 4]
jmp 0x10004168
mov eax, ebx
push eax
push str.NavWindow:__s
call fcn.1004ea50
push dword [ebp + 0x47f4]
push dword [ebp + 0x47c4]
push str.NavId:_0x_08X__NavLayer:__d
call fcn.1004ea50
push dword [ebp + 0x47c4]
call fcn.1001309c
mov eax, dword [ebp + 0x47f0]
mov dword [esp + 0xe4], esi
mov dword [esp + 0xe8], edi
mov dword [esp + 0xec], str.Keyboard
mov dword [esp + 0xf0], str.Gamepad
mov dword [esp + 0xf4], 0x100b99d4
mov dword [esp + 0xf8], str.Clipboard
push dword [esp + eax*4 + 0xe4]
push str.NavInputSource:__s
call fcn.1004ea50
movzx eax, byte [ebp + 0x9e]
push eax
movzx eax, byte [ebp + 0x9d]
push eax
push str.NavActive:__d__NavVisible:__d
call fcn.1004ea50
push dword [ebp + 0x47d4]
push dword [ebp + 0x47d0]
push dword [ebp + 0x47cc]
push str.NavActivateId_DownId_PressedId:__08X__08X__08X
call fcn.1004ea50
push dword [ebp + 0x47d8]
push str.NavActivateFlags:__04X
call fcn.1004ea50
movzx eax, byte [ebp + 0x47fb]
add esp, 0x44
push eax
movzx eax, byte [ebp + 0x47fa]
push eax
push str.NavDisableHighlight:__d__NavDisableMouseHover:__d
call fcn.1004ea50
push dword [ebp + 0x47c8]
push str.NavFocusScopeId__0x_08X
call fcn.1004ea50
mov eax, dword [ebp + 0x4914]
add esp, 0x14
test eax, eax
je 0x10004268
mov ebx, dword [eax + 4]
push ebx
push str.NavWindowingTarget:__s
call fcn.1004ea50
pop ecx
and dword [esp], 0
call fcn.10007ecc
pop ecx
call fcn.10055714
lea esi, [ebp + 0x5ad4]
cmp byte [esi + 2], 0
jne 0x10004299
cmp byte [esi + 3], 0
je 0x100044bf
xor edi, edi
mov dword [esp + 0x10], edi
cmp dword [ebp + 0x3df8], edi
jle 0x100044bf
mov eax, dword [ebp + 0x3e00]
mov ebx, dword [eax + edi*4]
cmp byte [ebx + 0xab], 0
je 0x100044ae
call fcn.100098ac
cmp byte [esi + 2], 0
mov dword [esp + 0x20], eax
je 0x10004417
mov ecx, dword [esi + 8]
test ecx, ecx
jne 0x1000430c
movss xmm1, dword [ebx + 0x14]
movss xmm0, dword [ebx + 0x18]
movss dword [esp + 0x2c], xmm1
addss xmm1, dword [ebx + 0x1c]
movss dword [esp + 0x30], xmm0
addss xmm0, dword [ebx + 0x20]
movss dword [esp + 0x34], xmm1
movss dword [esp + 0x38], xmm0
jmp 0x100043f2
cmp ecx, 1
jne 0x1000432e
lea esi, [ebx + 0x1c0]
lea edi, [esp + 0x2c]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x10]
lea esi, [ebp + 0x5ad4]
jmp 0x100043f2
cmp ecx, 2
jne 0x1000433b
lea esi, [ebx + 0x1d0]
jmp 0x10004317
cmp ecx, 3
jne 0x10004348
lea esi, [ebx + 0x1e0]
jmp 0x10004317
cmp ecx, 4
jne 0x10004355
lea esi, [ebx + 0x1f0]
jmp 0x10004317
cmp ecx, 5
jne 0x1000439f
movss xmm3, dword [ebx + 0x1d0]
movss xmm2, dword [ebx + 0x1d4]
subss xmm3, dword [ebx + 0x78]
subss xmm2, dword [ebx + 0x7c]
addss xmm3, dword [ebx + 0x44]
addss xmm2, dword [ebx + 0x48]
movaps xmm1, xmm3
addss xmm1, dword [ebx + 0x2c]
movaps xmm0, xmm2
addss xmm0, dword [ebx + 0x30]
movss dword [esp + 0x2c], xmm3
movss dword [esp + 0x30], xmm2
jmp 0x100042fb
cmp ecx, 6
jne 0x100043da
movss xmm3, dword [ebx + 0x1d0]
movss xmm2, dword [ebx + 0x1d4]
subss xmm3, dword [ebx + 0x78]
subss xmm2, dword [ebx + 0x7c]
addss xmm3, dword [ebx + 0x44]
addss xmm2, dword [ebx + 0x48]
movaps xmm1, xmm3
addss xmm1, dword [ebx + 0x34]
movaps xmm0, xmm2
addss xmm0, dword [ebx + 0x38]
jmp 0x1000438e
cmp ecx, 7
jne 0x100043ea
lea esi, [ebx + 0x220]
jmp 0x10004317
xorps xmm0, xmm0
movups xmmword [esp + 0x2c], xmm0
push ecx
mov dword [esp], 0x3f800000
push 0
push ecx
and dword [esp], 0
lea ecx, [esp + 0x40]
push 0xff8000ff
push ecx
lea ecx, [esp + 0x40]
push ecx
mov ecx, eax
call fcn.1003793b
cmp byte [esi + 3], 0
je 0x100044ae
test dword [ebx + 0xc], 0x1000000
jne 0x100044ae
movsx eax, word [ebx + 0xbc]
push eax
push 0x100ba16c
lea eax, [esp + 0xd4]
push 0x20
push eax
call fcn.1000c5e5
mov eax, dword [0x1010ef08]
lea esi, [ebx + 0x14]
add esp, 0x10
movss xmm1, dword [eax + 0x3bd0]
lea eax, [esp + 0x18]
push 0
push ecx
and dword [esp], 0
movaps xmm0, xmm1
addss xmm0, dword [esi]
addss xmm1, dword [esi + 4]
mov ecx, dword [esp + 0x28]
push 0xff6464c8
push eax
push esi
movss dword [esp + 0x2c], xmm0
movss dword [esp + 0x30], xmm1
call fcn.10037a25
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0xcc]
push 0
push eax
or eax, 0xffffffff
push eax
push esi
call fcn.10037f6c
lea esi, [ebp + 0x5ad4]
inc edi
mov dword [esp + 0x10], edi
cmp edi, dword [ebp + 0x3df8]
jl 0x100042ab
cmp byte [esi + 4], 0
je 0x100045f5
xor ebx, ebx
mov dword [esp + 0x20], ebx
cmp dword [ebp + 0x4a04], ebx
jle 0x100045f5
lea eax, [ebp + 0x49f8]
push ebx
mov ecx, eax
call fcn.1001da99
mov esi, eax
test esi, esi
je 0x100045de
mov ecx, dword [ebp + 0x3de0]
dec ecx
cmp dword [esi + 0x3c], ecx
jl 0x100045de
call fcn.100098ac
mov edi, eax
lea eax, [ebp + 0x5ad4]
cmp dword [eax + 0xc], 6
mov dword [esp + 0x14], edi
jl 0x100045a5
xor edi, edi
cmp dword [esi + 0x40], edi
jle 0x100045de
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x4c]
push edi
push dword [ebx + 0xc]
lea eax, [esp + 0xd4]
push esi
push eax
call fcn.100188b6
movsx eax, word [esi + 0x1ac]
add esp, 0x10
cmp eax, edi
mov ecx, 0xff8000ff
mov edx, 0xff80ffff
cmove ecx, edx
jne 0x10004568
movss xmm0, dword [0x100bbe48]
jmp 0x10004570
movss xmm0, dword [0x100bbe20]
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0xd8]
push 0
push ecx
and dword [esp], 0
push ecx
push eax
lea eax, [esp + 0xe0]
mov ecx, ebp
push eax
call fcn.1003793b
inc edi
cmp edi, dword [esi + 0x40]
jl 0x10004531
mov ebp, dword [esp + 0x28]
mov ebx, dword [esp + 0x20]
jmp 0x100045de
or ecx, 0xffffffff
push ecx
push dword [eax + 0xc]
lea eax, [esp + 0x44]
push esi
push eax
call fcn.100188b6
add esp, 0xc
lea eax, [esp + 0x48]
mov dword [esp], 0x3f800000
push 0
push ecx
and dword [esp], 0
mov ecx, edi
push 0xff8000ff
push eax
lea eax, [esp + 0x50]
push eax
call fcn.1003793b
inc ebx
lea eax, [ebp + 0x49f8]
mov dword [esp + 0x20], ebx
cmp ebx, dword [ebp + 0x4a04]
jl 0x100044e1
call fcn.10006e0b
mov ecx, dword [esp + 0x18c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10090b29
add esp, 0x180
ret