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

Disassembly:
push 8
push 0x140
mov eax, 0x10063fdf
call fcn.1005fb50
mov dword [ebp - 0x138], ecx
mov eax, dword [ebx + 8]
xor edx, edx
mov ecx, dword [0x100a3068]
inc edx
mov dword [ebp - 0xd8], eax
push 0x20
pop eax
mov dword [ebp - 0xfc], eax
mov eax, dword [ecx + 0x1a00]
mov byte [eax + 0x7c], dl
mov esi, dword [ecx + 0x1a00]
mov dword [ebp - 0xec], esi
cmp byte [esi + 0x7f], 0
jne 0x1003347a
mov ecx, dword [ebx + 0x14]
mov edx, 0x100080
mov eax, ecx
mov edi, str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
and eax, edx
cmp eax, edx
jne 0x10033258
push 0xd7e
push edi
push str.___flags__ImGuiInputTextFlags_CallbackHistory____flags__ImGuiInputTextFlags_Multiline__
call fcn.1004c489
mov ecx, dword [ebx + 0x14]
add esp, 0xc
mov edx, 0x440
mov eax, ecx
and eax, edx
cmp eax, edx
jne 0x1003327b
push 0xd7f
push edi
push str.___flags__ImGuiInputTextFlags_CallbackCompletion____flags__ImGuiInputTextFlags_AllowTabInput__
call fcn.1004c489
mov ecx, dword [ebx + 0x14]
add esp, 0xc
xor edx, edx
mov edi, dword [0x100a3068]
inc edx
mov dword [ebp - 0xdc], edi
mov eax, ecx
shr eax, 0x14
and al, dl
mov dword [ebp - 0xc0], eax
mov eax, ecx
shr eax, 0xe
and al, dl
mov dword [ebp - 0xd0], eax
mov eax, ecx
shr eax, 0xf
and al, dl
mov dword [ebp - 0x120], eax
mov eax, ecx
shr eax, 0x10
not al
and al, dl
mov dword [ebp - 0xe4], eax
mov eax, ecx
shr eax, 0x12
and al, dl
mov dword [ebp - 0x124], eax
je 0x100332e6
push 0xd8c
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.callback___0
call fcn.1004c489
add esp, 0xc
cmp byte [ebp - 0xc0], 0
je 0x100332f4
call fcn.1001c2e0
push ecx
push dword [ebp - 0x138]
mov ecx, esi
call fcn.10014ae9
movss xmm0, dword [0x10096f64]
mov edx, dword [ebp - 0x138]
mov dword [ebp - 0xb8], eax
xor eax, eax
push ecx
inc eax
mov dword [esp], 0xbf800000
push eax
push 0
lea ecx, [ebp - 0x134]
movss dword [ebp - 0x13c], xmm0
call fcn.10016f1a
add esp, 0xc
cmp byte [ebp - 0xc0], 0
je 0x10033355
movss xmm0, dword [edi + 0x18d0]
mulss xmm0, dword [0x10096ef8]
jmp 0x1003335d
movss xmm0, dword [ebp - 0x130]
movss xmm1, dword [edi + 0x1554]
movaps xmm2, xmm1
addss xmm2, xmm1
addss xmm2, xmm0
call fcn.1001c109
mov eax, dword [ebx + 0x10]
lea ecx, [ebp - 0x20]
movaps xmm1, xmm0
push dword [eax + 4]
push dword [eax]
call fcn.1001c16f
movss xmm1, dword [ebp - 0x134]
xorps xmm0, xmm0
comiss xmm1, xmm0
pop ecx
pop ecx
jbe 0x100333a7
movaps xmm2, xmm1
addss xmm2, dword [edi + 0x1568]
jmp 0x100333aa
xorps xmm2, xmm2
cmp byte [ebp - 0xc0], 0
movss xmm0, dword [ebp - 0x1c]
addss xmm0, dword [esi + 0xcc]
movss xmm3, dword [ebp - 0x20]
mov edx, dword [esi + 0xc8]
addss xmm2, xmm3
mov eax, dword [ebp - 0xec]
movaps xmm1, xmm3
addss xmm1, dword [esi + 0xc8]
mov esi, dword [esi + 0xcc]
movss dword [ebp - 0x3c], xmm0
mov dword [ebp - 0x44], esi
movss xmm0, dword [ebp - 0x44]
addss xmm0, dword [ebp - 0x1c]
mov dword [ebp - 0x48], edx
addss xmm2, dword [ebp - 0x48]
movss dword [ebp - 0x114], xmm3
movss dword [ebp - 0x40], xmm1
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x54], esi
movss dword [ebp - 0x50], xmm2
movss dword [ebp - 0x4c], xmm0
mov dword [ebp - 0xf4], eax
je 0x1003355d
mov edx, dword [ebp - 0xb8]
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x58]
call fcn.1001be79
pop ecx
test al, al
jne 0x10033485
movss xmm0, dword [ebp - 0x50]
lea ecx, [ebp - 0x134]
subss xmm0, dword [ebp - 0x58]
movss xmm1, dword [edi + 0x1554]
movss dword [ebp - 0x134], xmm0
movss xmm0, dword [ebp - 0x4c]
subss xmm0, dword [ebp - 0x54]
movss dword [ebp - 0x130], xmm0
call fcn.1001bd56
call fcn.1001c3e4
xor al, al
mov ecx, dword [ebp - 0x14]
call fcn.1005fb2e
ret
mov esi, edi
push 3
pop ecx
lea edx, [esi + 0x163c]
call fcn.100139de
movss xmm1, dword [esi + 0x1558]
push 6
pop ecx
call fcn.10013add
movss xmm1, dword [esi + 0x155c]
push 7
pop ecx
call fcn.10013add
xor eax, eax
lea edx, [esi + 0x1550]
lea ecx, [eax + 1]
call fcn.10013b52
movss xmm1, dword [ebp - 0x40]
lea eax, [ebp - 0x12c]
movss xmm0, dword [ebp - 0x3c]
subss xmm1, dword [ebp - 0x48]
subss xmm0, dword [ebp - 0x44]
mov edx, dword [ebp - 0xb8]
push ecx
push ecx
mov ecx, dword [ebp - 0x138]
push eax
movss dword [ebp - 0x12c], xmm1
movss dword [ebp - 0x128], xmm0
call fcn.10017567
add esp, 0xc
mov byte [ebp - 0xb1], al
push 3
pop ecx
call fcn.10013bdb
xor eax, eax
inc eax
mov ecx, eax
call fcn.10013a25
cmp byte [ebp - 0xb1], 0
jne 0x10033531
call fcn.10017739
jmp 0x10033475
mov ecx, dword [esi + 0x1a00]
movss xmm0, dword [ebp - 0x20]
mov dword [ebp - 0xf4], ecx
subss xmm0, dword [ecx + 0x70]
mov eax, dword [ecx + 0x138]
or dword [ecx + 0x140], eax
movss dword [ebp - 0x114], xmm0
jmp 0x100335a7
subss xmm2, dword [ebp - 0x58]
subss xmm0, dword [ebp - 0x54]
mov esi, edi
lea ecx, [ebp - 0x12c]
movss dword [ebp - 0x12c], xmm2
movss xmm1, dword [esi + 0x1554]
movss dword [ebp - 0x128], xmm0
call fcn.1001bd56
mov edx, dword [ebp - 0xb8]
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x58]
call fcn.1001be79
pop ecx
test al, al
je 0x1003347a
mov edx, dword [ebp - 0xb8]
lea ecx, [ebp - 0x48]
call fcn.10014ec7
mov byte [ebp - 0xae], al
test al, al
je 0x100335c8
xor eax, eax
inc eax
mov dword [esi + 0x1d8c], eax
mov ecx, dword [0x100a3068]
xor edi, edi
mov eax, dword [ebp - 0xb8]
add ecx, 0x1e5c
mov edx, eax
cmp dword [ecx], eax
cmove edi, ecx
mov ecx, dword [ebp - 0xec]
mov dword [ebp - 0x100], edi
call fcn.10014ffb
mov dl, al
mov byte [ebp - 0xb1], dl
test dl, dl
je 0x1003367f
mov eax, dword [ebp - 0xec]
cmp dword [esi + 0x1c38], eax
jne 0x1003367f
mov ecx, dword [esi + 0x1c40]
cmp ecx, dword [eax + 0x19c]
jne 0x1003367f
xor eax, eax
inc eax
xor ecx, ecx
mov byte [ebp - 0xad], al
mov byte [ebp - 0xbb], cl
cmp byte [ebp - 0xae], 0
je 0x10033645
cmp byte [esi + 0x3e0], 0
mov byte [ebp - 0xab], al
jne 0x1003364b
mov byte [ebp - 0xab], cl
mov eax, dword [esi + 0x1a34]
mov edx, dword [ebp - 0xb8]
cmp eax, edx
je 0x1003369c
cmp dword [esi + 0x1b40], edx
je 0x10033674
cmp dword [esi + 0x1b34], edx
jne 0x1003369c
cmp dword [esi + 0x1b54], 3
jne 0x1003369c
xor edx, edx
inc edx
mov byte [ebp - 0xac], dl
jmp 0x100336a2
xor eax, eax
xor ecx, ecx
inc eax
mov byte [ebp - 0xad], cl
test dl, dl
je 0x10033627
mov byte [ebp - 0xbb], al
mov byte [ebp - 0xad], cl
jmp 0x1003362d
mov byte [ebp - 0xac], cl
cmp byte [ebp - 0xc0], 0
je 0x100336d9
test edi, edi
je 0x100336d9
test eax, eax
jne 0x100336d9
push ecx
mov ecx, dword [ebp - 0xf4]
push str.SCROLLY
call fcn.10014b37
cmp dword [esi + 0x1a6c], eax
jne 0x100336d7
xor eax, eax
inc eax
mov byte [ebp - 0xa9], al
jmp 0x100336f2
xor ecx, ecx
cmp byte [ebp - 0xc0], 0
mov byte [ebp - 0xa9], cl
je 0x1003371a
mov byte [ebp - 0xa9], cl
test edi, edi
je 0x1003371a
push ecx
mov ecx, dword [ebp - 0xf4]
push str.SCROLLY
call fcn.10014b37
cmp dword [esi + 0x1a34], eax
jne 0x10033718
xor eax, eax
inc eax
xor ecx, ecx
mov byte [ebp - 0xb9], al
jmp 0x10033722
xor ecx, ecx
mov al, cl
mov byte [ebp - 0xb9], cl
mov edx, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], edx
mov dl, byte [ebp - 0xac]
mov byte [ebp - 0xc9], cl
je 0x10033756
test byte [ebx + 0x14], 0x10
jne 0x10033746
test dl, dl
je 0x10033756
cmp byte [ebp - 0xc0], 0
mov byte [ebp - 0xc4], 1
je 0x1003375c
mov byte [ebp - 0xc4], cl
cmp byte [ebp - 0xb1], 0
jne 0x10033790
cmp byte [ebp - 0xab], 0
jne 0x10033790
cmp byte [ebp - 0xa9], 0
jne 0x10033790
test dl, dl
jne 0x10033790
mov byte [ebp - 0xa9], cl
test al, al
jne 0x1003379b
mov byte [ebp - 0xba], cl
jmp 0x100338b6
xor eax, eax
inc eax
mov byte [ebp - 0xa9], al
jmp 0x1003379e
xor eax, eax
inc eax
mov byte [ebp - 0xba], al
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
je 0x100339a8
lea edi, [esi + 0x1e5c]
mov esi, dword [ebp - 0xd8]
mov dword [ebp - 0x100], edi
mov dword [edi + 0xe60], 0xbe99999a
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x100337d5
sub esi, ecx
lea ecx, [edi + 0x24]
inc esi
push esi
call fcn.10021481
push esi
push dword [ebp - 0xd8]
push dword [edi + 0x2c]
call fcn.1003b460
add esp, 0xc
lea ecx, [edi + 0xc]
xor esi, esi
mov dword [ebp - 0xc8], esi
push 0x21
call fcn.10021567
lea ecx, [edi + 0x18]
push esi
call fcn.10021481
mov esi, dword [ebp - 0xd8]
lea ecx, [ebp - 0xc8]
push ecx
mov ecx, dword [edi + 0x14]
xor eax, eax
push eax
push esi
mov byte [edi + 0x30], al
push 0x20
pop eax
mov edx, eax
call fcn.10013555
mov ecx, dword [ebp - 0xc8]
mov edx, eax
mov eax, dword [ebp - 0xb8]
sub ecx, esi
add esp, 0xc
mov dword [edi + 4], edx
mov dword [edi + 8], ecx
cmp dword [edi], eax
jne 0x100339fc
cmp dword [edi + 0x3c], edx
mov eax, edx
cmovl eax, dword [edi + 0x3c]
cmp dword [edi + 0x40], edx
mov dword [edi + 0x3c], eax
mov eax, edx
cmovl eax, dword [edi + 0x40]
cmp dword [edi + 0x44], edx
mov dword [edi + 0x40], eax
cmovl edx, dword [edi + 0x44]
mov dword [edi + 0x44], edx
mov edx, dword [ebp - 0xc0]
xor eax, eax
inc eax
test dword [ebx + 0x14], 0x2000
je 0x1003388e
mov byte [edi + 0x48], al
mov esi, dword [ebp - 0xdc]
test dl, dl
jne 0x100338b6
cmp byte [ebp - 0xbb], dl
jne 0x100338b0
cmp byte [ebp - 0xab], dl
je 0x100338b6
cmp byte [esi + 0x100], dl
je 0x100338b6
mov byte [ebp - 0xc4], al
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
je 0x100339a8
cmp byte [ebp - 0xa9], 0
je 0x1003399c
test edi, edi
je 0x100338dd
cmp dword [edi], eax
je 0x100338fa
push 0xdfd
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.state__state__ID__id
call fcn.1004c489
mov eax, dword [ebp - 0xb8]
add esp, 0xc
mov edx, dword [ebp - 0xec]
mov ecx, eax
call fcn.10014c75
mov ecx, dword [ebp - 0xb8]
call fcn.1001d739
mov ecx, dword [ebp - 0xec]
call fcn.1001b22c
mov eax, dword [esi + 0x1a48]
mov edx, dword [ebp - 0xc0]
or eax, 3
mov dword [esi + 0x1a48], eax
test dl, dl
jne 0x1003393c
test byte [ebx + 0x14], 0x80
je 0x10033945
or eax, 0xc
mov dword [esi + 0x1a48], eax
mov eax, dword [esi + 0x1a50]
or dword [esi + 0x1a4c], 2
or eax, 0x180
mov ecx, dword [esi + 0x1a54]
mov dword [esi + 0x1a50], eax
mov dword [esi + 0x1a54], ecx
test dl, dl
je 0x1003397c
or eax, 0x60
mov dword [esi + 0x1a54], ecx
mov dword [esi + 0x1a50], eax
test dword [ebx + 0x14], 0x440
je 0x10033996
xor edx, edx
mov dword [esi + 0x1a54], ecx
inc edx
or eax, edx
mov dword [esi + 0x1a50], eax
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
jne 0x10033a7b
test edi, edi
jne 0x100339bb
xor edx, edx
xor ecx, ecx
call fcn.10014c75
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
jne 0x10033a7b
xor eax, eax
inc eax
cmp byte [esi + 0x3e0], 0
je 0x10033a8b
cmp byte [ebp - 0xba], 0
jne 0x10033a8b
cmp byte [ebp - 0xa9], 0
jne 0x10033a8b
mov byte [ebp - 0xc9], al
jmp 0x10033a8b
mov edx, dword [ebp - 0xc0]
xor ecx, ecx
and dword [edi + 0x38], 0
and dword [edi + 0x50], ecx
mov dword [edi], eax
xor eax, eax
mov word [edi + 0xe52], ax
push 0x63
pop eax
mov word [edi + 0xe54], ax
xor eax, eax
inc eax
mov dword [edi + 0xe58], ecx
mov byte [edi + 0x4a], al
mov al, dl
xor al, 1
mov dword [edi + 0xe5c], 0x3e7
mov dword [edi + 0x40], ecx
mov dword [edi + 0x44], ecx
mov dword [edi + 0x3c], ecx
mov byte [edi + 0x4b], cl
mov word [edi + 0x48], cx
mov byte [edi + 0x4c], al
test dl, dl
jne 0x1003387f
mov edx, dword [ebp - 0xc4]
cmp byte [ebp - 0xad], cl
push 1
movzx edx, dl
pop eax
cmovne edx, eax
mov dword [ebp - 0xc4], edx
mov edx, dword [ebp - 0xc0]
jmp 0x10033882
test edi, edi
je 0x10033a91
cmp byte [ebp - 0xb9], 0
je 0x10033a91
xor eax, eax
inc eax
mov dl, al
xor ecx, ecx
jmp 0x10033a95
xor ecx, ecx
mov dl, cl
mov byte [ebp - 0xaf], dl
test edi, edi
je 0x10033ab2
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x10033ab2
test dl, dl
je 0x10033ab2
xor eax, eax
lea edx, [eax + 1]
jmp 0x10033ab4
mov dl, cl
cmp byte [ebp - 0xd0], 0
mov dword [ebp - 0xec], edx
mov byte [ebp - 0xb1], dl
mov byte [ebp - 0xba], cl
mov byte [ebp - 0xbb], cl
je 0x10033b72
test edi, edi
je 0x10033b72
cmp byte [ebp - 0xaf], 0
jne 0x10033af2
test dl, dl
je 0x10033b7f
mov dword [ebp - 0xc8], ecx
lea ecx, [edi + 0xc]
push 0x21
call fcn.10021567
mov edx, dword [edi + 0xc]
lea eax, [ebp - 0xc8]
mov ecx, dword [edi + 0x14]
push eax
push 0
push dword [ebp - 0xd8]
call fcn.10013555
mov ecx, dword [ebp - 0xc8]
mov edx, eax
sub ecx, dword [ebp - 0xd8]
add esp, 0xc
cmp dword [edi + 0x3c], edx
movzx eax, byte [ebp - 0xb1]
mov esi, dword [ebp - 0xdc]
mov dword [edi + 8], ecx
mov ecx, edx
cmovl ecx, dword [edi + 0x3c]
cmp dword [edi + 0x40], edx
mov dword [edi + 0x3c], ecx
mov ecx, edx
cmovl ecx, dword [edi + 0x40]
cmp dword [edi + 0x44], edx
mov dword [edi + 4], edx
cmovl edx, dword [edi + 0x44]
cmp ecx, edx
mov dword [edi + 0x44], edx
push 0
pop edx
cmovne edx, eax
mov dword [edi + 0x40], ecx
mov dword [ebp - 0xec], edx
xor ecx, ecx
cmp byte [ebp - 0xaf], 0
jne 0x10033b8d
test dl, dl
jne 0x10033b8d
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
jne 0x10033bab
cmp byte [ebp - 0xd0], 0
jne 0x10033bab
test edi, edi
je 0x10033bab
cmp byte [edi + 0x30], 0
je 0x10033bab
xor eax, eax
inc eax
mov byte [ebp - 0xb1], al
jmp 0x10033bb1
mov byte [ebp - 0xb1], cl
cmp byte [ebp - 0x120], 0
je 0x10033c72
mov ecx, dword [esi + 0x18cc]
push 0x2a
call fcn.1002bd1d
mov ecx, dword [ecx + 0x10]
mov esi, eax
mov eax, dword [ebp - 0xdc]
lea edx, [eax + 0x2cd0]
mov dword [edx + 0x10], ecx
mov ecx, dword [eax + 0x18cc]
mov dword [ebp - 0xd4], edx
mov ecx, dword [ecx + 0x48]
mov dword [edx + 0x48], ecx
mov ecx, dword [eax + 0x18cc]
mov edx, dword [ecx + 0x30]
mov eax, dword [ecx + 0x34]
mov ecx, dword [ebp - 0xd4]
mov dword [ecx + 0x30], edx
mov edx, ecx
mov ecx, dword [ebp - 0xdc]
mov dword [edx + 0x34], eax
mov eax, dword [ecx + 0x18cc]
mov eax, dword [eax + 0x4c]
mov dword [edx + 0x4c], eax
mov eax, dword [ecx + 0x18cc]
mov eax, dword [eax + 0x50]
mov dword [edx + 0x50], eax
mov eax, dword [ecx + 0x18cc]
mov eax, dword [eax + 0x38]
mov dword [edx + 0x38], eax
mov dword [edx + 0x2c], esi
mov eax, dword [esi + 4]
mov dword [edx + 0xc], eax
xor eax, eax
cmp dword [edx + 0x20], eax
jne 0x10033c4e
cmp dword [edx], eax
jne 0x10033c4e
cmp dword [edx + 0x14], eax
je 0x10033c6b
push 0xe3a
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.password_font__Glyphs.empty____password_font__IndexAdvanceX.empty____password_font__IndexLookup.empty__
call fcn.1004c489
mov edx, dword [ebp - 0xd4]
add esp, 0xc
mov ecx, edx
call fcn.1001b43b
mov esi, dword [ebp - 0xdc]
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
jne 0x10034033
test edi, edi
jne 0x10033cac
push 0xe42
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.state___0
call fcn.1004c489
add esp, 0xc
mov eax, dword [edi + 8]
and dword [edi + 0xe6c], 0
and dword [edi + 0xe70], 0
mov edx, dword [ebx + 0x14]
mov dword [ebp - 0x108], eax
push 0x20
mov dword [edi + 0xe68], edx
pop eax
mov dword [edi + 0x34], eax
cmp byte [esi + 0xf0], 0
sete al
xor ecx, ecx
inc ecx
mov byte [esi + 0x1a41], al
cmp byte [ebp - 0xc0], 0
mov dword [esi + 0x2fe4], ecx
movss xmm5, dword [esi + 0xe8]
subss xmm5, dword [ebp - 0x48]
subss xmm5, dword [esi + 0x1550]
addss xmm5, dword [edi + 0x38]
je 0x10033d2e
mov eax, dword [ebp - 0xf4]
movss xmm2, dword [esi + 0xec]
subss xmm2, dword [eax + 0xcc]
subss xmm2, dword [esi + 0x1554]
jmp 0x10033d3e
movss xmm2, dword [esi + 0x18d0]
mulss xmm2, dword [0x10096e74]
cmp byte [ebp - 0xc4], 0
mov al, byte [esi + 0xb1]
mov byte [ebp - 0xa9], al
jne 0x10033ed8
mov cl, byte [ebp - 0xae]
test cl, cl
je 0x10033d71
test al, al
jne 0x10033dca
cmp byte [esi + 0x3e5], al
jne 0x10033ed5
cmp byte [esi + 0x3e0], 0
je 0x10033e43
cmp byte [edi + 0xe65], 0
jne 0x10033e43
test cl, cl
je 0x10033df5
cmp byte [edi + 0x4c], 0
je 0x10033da7
push 0
mov edx, edi
lea ecx, [ebp - 0x60]
call fcn.10031e6d
movss xmm2, dword [ebp - 0x54]
pop ecx
movaps xmm1, xmm5
mov ecx, edi
call fcn.1003214c
mov dword [edi + 0x3c], eax
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], eax
mov byte [edi + 0x4b], 0
mov dword [edi + 0xe60], 0xbe99999a
jmp 0x10033dec
cmp byte [esi + 0x3e5], 0
je 0x10033d71
mov eax, 0x20000c
mov ecx, edi
push eax
call fcn.10033021
push 0x60000d
mov ecx, edi
call fcn.10033021
mov al, byte [ebp - 0xa9]
mov edx, dword [ebx + 0x14]
xor ecx, ecx
inc ecx
cmp byte [edi + 0xe65], 0
je 0x10033e11
cmp byte [esi + 0xf0], 0
jne 0x10033e11
mov byte [edi + 0xe65], 0
cmp byte [esi + 0x100], 0
je 0x10033e23
cmp byte [esi + 0x102], 0
je 0x10033e38
test al, al
je 0x10033efa
cmp byte [esi + 0x103], 0
je 0x10033efa
mov byte [ebp - 0xaa], cl
jmp 0x10033f01
cmp byte [esi + 0xf0], 0
je 0x10033df5
cmp byte [edi + 0xe65], 0
jne 0x10033df5
movss xmm0, dword [esi + 0x378]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10033e7e
movss xmm0, dword [esi + 0x37c]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10033df5
cmp byte [edi + 0x4c], 0
je 0x10033e96
push 0
mov edx, edi
lea ecx, [ebp - 0x60]
call fcn.10031e6d
movss xmm2, dword [ebp - 0x54]
pop ecx
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x10033ea4
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x40], eax
movaps xmm1, xmm5
mov ecx, edi
call fcn.1003214c
mov edx, dword [ebx + 0x14]
xor ecx, ecx
mov dword [edi + 0x44], eax
inc ecx
mov dword [edi + 0x3c], eax
mov al, byte [ebp - 0xa9]
mov dword [edi + 0xe60], 0xbe99999a
mov byte [edi + 0xe64], cl
jmp 0x10033df8
xor ecx, ecx
inc ecx
mov eax, dword [edi + 4]
and dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov al, byte [ebp - 0xa9]
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe65], cl
jmp 0x10033df8
mov byte [ebp - 0xaa], 0
mov dword [ebp - 0x10c], 9
test edx, 0x400
je 0x10033f98
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x10033f98
call fcn.100172e3
mov edx, dword [ebp - 0xd0]
test al, al
mov al, byte [ebp - 0xaa]
je 0x10033fa4
test al, al
jne 0x10033fa4
cmp byte [esi + 0x101], al
jne 0x10033fa4
test dl, dl
jne 0x10033fa4
mov ecx, dword [esi + 0x1514]
mov eax, dword [esi + 0x150c]
lea edx, [ecx + eax*2]
jmp 0x10033f68
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x10c]
je 0x10033f98
cmp ecx, edx
jb 0x10033f59
mov edx, dword [ebx + 0x14]
push 9
pop eax
push ecx
push ecx
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0xc8], eax
call fcn.10033049
pop ecx
pop ecx
test al, al
je 0x10033f98
push dword [ebp - 0xc8]
mov ecx, edi
call fcn.10033021
mov edx, dword [ebp - 0xd0]
mov al, byte [ebp - 0xaa]
lea ecx, [esi + 0x150c]
cmp dword [ecx], 0
jle 0x1003402d
test al, al
jne 0x10034020
test dl, dl
jne 0x10034020
cmp byte [ebp - 0xac], dl
jne 0x10034020
xor eax, eax
mov dword [ebp - 0x110], eax
push eax
call fcn.1002158c
push 9
pop ecx
movzx eax, word [eax]
mov dword [ebp - 0xc8], eax
cmp eax, ecx
jne 0x10033fe6
cmp byte [esi + 0x101], 0
jne 0x10034009
mov edx, dword [ebx + 0x14]
push ecx
push ecx
lea ecx, [ebp - 0xc8]
call fcn.10033049
pop ecx
pop ecx
test al, al
je 0x10034009
push dword [ebp - 0xc8]
mov ecx, edi
call fcn.10033021
mov eax, dword [ebp - 0x110]
lea ecx, [esi + 0x150c]
inc eax
mov dword [ebp - 0x110], eax
cmp eax, dword [ecx]
jl 0x10033fc7
lea ecx, [esi + 0x150c]
push 0
call fcn.10021567
mov eax, dword [ebp - 0xb8]
mov byte [ebp - 0xb0], 0
mov dword [ebp - 0x150], 0xa
cmp dword [esi + 0x1a34], eax
jne 0x10034d1f
cmp byte [esi + 0x1a40], 0
jne 0x10034a17
cmp byte [ebp - 0xc9], 0
jne 0x10034a17
test edi, edi
jne 0x10034085
push 0xe92
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.state___0
call fcn.1004c489
add esp, 0xc
mov cl, byte [esi + 0x101]
xor eax, eax
mov ch, byte [esi + 0xb1]
test cl, cl
mov edx, 0x400000
mov byte [ebp - 0xf6], ch
cmovne eax, edx
mov dword [ebp - 0xe0], eax
test ch, ch
je 0x10034163
cmp byte [esi + 0x103], 0
je 0x100340c8
cmp byte [esi + 0x100], 0
jne 0x100340c8
xor eax, eax
inc eax
jmp 0x100340ca
xor eax, eax
test eax, eax
jne 0x1003417d
xor eax, eax
xor dl, dl
inc eax
mov byte [ebp - 0xac], dl
test ch, ch
je 0x10034100
cmp byte [esi + 0x103], 0
je 0x10034100
test cl, cl
je 0x10034100
cmp byte [esi + 0x100], 0
jne 0x10034100
cmp byte [esi + 0x102], 0
je 0x1003410a
xor al, al
test ch, ch
je 0x1003419c
cmp byte [esi + 0x103], 0
mov cl, byte [esi + 0x102]
mov byte [ebp - 0xaa], cl
mov byte [ebp - 0xad], al
je 0x100341af
cmp byte [esi + 0x100], 0
mov byte [ebp - 0xaa], cl
mov byte [ebp - 0xad], al
jne 0x100341af
mov byte [ebp - 0xaa], cl
mov byte [ebp - 0xad], al
test cl, cl
jne 0x100341af
mov byte [ebp - 0xa9], 1
mov byte [ebp - 0xaa], cl
mov byte [ebp - 0xad], al
jmp 0x100341b6
cmp byte [esi + 0x100], 0
je 0x100340d2
cmp byte [esi + 0x103], 0
jne 0x100340d2
cmp byte [esi + 0x102], 0
jne 0x100340d2
test cl, cl
jne 0x100340d2
xor eax, eax
inc eax
mov dl, al
jmp 0x100340d7
mov al, byte [esi + 0x100]
mov byte [ebp - 0xaa], al
mov byte [ebp - 0xad], 0
mov byte [ebp - 0xa9], 0
mov al, byte [esi + 0x100]
test al, al
je 0x10034273
cmp byte [esi + 0x101], 0
jne 0x10034273
cmp byte [esi + 0x102], 0
jne 0x10034273
cmp byte [esi + 0x103], 0
jne 0x10034273
xor eax, eax
inc eax
mov byte [ebp - 0xab], al
mov byte [ebp - 0xae], 0
test dl, dl
je 0x10034217
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x80]
test ecx, ecx
js 0x10034217
call fcn.100172e3
test al, al
jne 0x10034241
cmp byte [ebp - 0xae], 0
je 0x100342cf
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x100342cf
call fcn.100172e3
test al, al
je 0x100342cf
cmp byte [ebp - 0xd0], 0
jne 0x100342cf
cmp byte [ebp - 0x120], 0
jne 0x100342cf
cmp byte [ebp - 0xc0], 0
je 0x10034268
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x100342cf
xor eax, eax
inc eax
mov byte [ebp - 0xb9], al
jmp 0x100342d6
cmp byte [esi + 0x101], 0
mov byte [ebp - 0xab], 0
je 0x100341f4
mov byte [ebp - 0xab], 0
test al, al
jne 0x100341f4
mov byte [ebp - 0xab], al
cmp byte [esi + 0x102], al
jne 0x100341f4
mov byte [ebp - 0xab], al
cmp byte [esi + 0x103], al
jne 0x100341f4
xor eax, eax
mov byte [ebp - 0xab], 0
inc eax
mov byte [ebp - 0xae], al
jmp 0x100341fb
mov byte [ebp - 0xb9], 0
cmp byte [ebp - 0xac], 0
je 0x100342f4
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x78]
test ecx, ecx
js 0x100342f4
call fcn.100172e3
test al, al
jne 0x10034312
cmp byte [ebp - 0xab], 0
je 0x10034337
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x10034337
call fcn.100172e3
test al, al
je 0x10034337
cmp byte [ebp - 0x120], 0
jne 0x10034337
cmp byte [ebp - 0xc0], 0
je 0x1003432c
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x10034337
xor eax, eax
inc eax
mov byte [ebp - 0xab], al
jmp 0x1003433e
mov byte [ebp - 0xab], 0
cmp byte [ebp - 0xac], 0
je 0x1003435c
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x7c]
test ecx, ecx
js 0x1003435c
call fcn.100172e3
test al, al
jne 0x1003437a
cmp byte [ebp - 0xae], 0
je 0x1003438e
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x58]
test ecx, ecx
js 0x1003438e
call fcn.100172e3
test al, al
je 0x1003438e
cmp byte [ebp - 0xd0], 0
jne 0x1003438e
xor eax, eax
inc eax
mov byte [ebp - 0xf5], al
jmp 0x10034395
mov byte [ebp - 0xf5], 0
cmp byte [ebp - 0xac], 0
je 0x100343d3
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x100343d3
call fcn.100172e3
test al, al
je 0x100343d3
cmp byte [ebp - 0xd0], 0
jne 0x100343d3
cmp byte [ebp - 0xe4], 0
je 0x100343d3
xor eax, eax
inc eax
mov byte [ebp - 0xae], al
jmp 0x100343e3
xor eax, eax
mov byte [ebp - 0xae], al
cmp byte [ebp - 0xac], al
je 0x100343fb
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x84]
test ecx, ecx
js 0x100343fb
call fcn.100172e3
test al, al
jne 0x1003441c
cmp byte [ebp - 0xad], 0
je 0x10034439
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x88]
test ecx, ecx
js 0x10034439
call fcn.100172e3
test al, al
je 0x10034439
cmp byte [ebp - 0xd0], 0
jne 0x10034439
cmp byte [ebp - 0xe4], 0
je 0x10034439
xor eax, eax
inc eax
mov byte [ebp - 0xad], al
jmp 0x10034440
mov byte [ebp - 0xad], 0
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x10034487
call fcn.100172e3
test al, al
je 0x10034487
mov eax, 0x200000
lea ecx, [eax + 0xc]
lea edx, [eax + 4]
cmp byte [ebp - 0xaa], 0
cmovne eax, ecx
cmp byte [ebp - 0xa9], 0
cmovne eax, edx
or eax, dword [ebp - 0xe0]
push eax
mov ecx, edi
call fcn.10033021
jmp 0x100349f1
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x100344a9
call fcn.100172e3
test al, al
je 0x100344a9
mov eax, 0x200001
lea ecx, [eax + 0xc]
lea edx, [eax + 4]
jmp 0x10034460
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x1003450c
call fcn.100172e3
test al, al
je 0x1003450c
cmp byte [ebp - 0xc0], 0
je 0x1003450c
cmp byte [esi + 0x100], 0
je 0x100344f9
mov ecx, dword [ebp - 0xf4]
movss xmm0, dword [ecx + 0x54]
subss xmm0, dword [esi + 0x18d0]
maxss xmm0, dword [0x10096e24]
and dword [ecx + 0x6c], 0
movss dword [ecx + 0x64], xmm0
jmp 0x100349f1
movzx eax, byte [ebp - 0xa9]
lea eax, [eax*4 + 0x200002]
jmp 0x10034474
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x1003456b
call fcn.100172e3
test al, al
je 0x1003456b
cmp byte [ebp - 0xc0], 0
je 0x1003456b
cmp byte [esi + 0x100], 0
je 0x10034558
mov ecx, dword [ebp - 0xf4]
mov eax, dword [0x100a3068]
movss xmm0, dword [esi + 0x18d0]
addss xmm0, dword [ecx + 0x54]
mov eax, dword [eax + 0x1a00]
minss xmm0, dword [eax + 0x5c]
jmp 0x100344eb
movzx eax, byte [ebp - 0xa9]
lea eax, [eax*4 + 0x200003]
jmp 0x10034474
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x10034597
call fcn.100172e3
test al, al
je 0x10034597
mov eax, 0x200004
lea ecx, [eax + 2]
cmp byte [esi + 0x100], 0
cmovne eax, ecx
jmp 0x10034474
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x100345b6
call fcn.100172e3
test al, al
je 0x100345b6
mov eax, 0x200005
lea ecx, [eax + 2]
jmp 0x10034588
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x100345e6
call fcn.100172e3
test al, al
je 0x100345e6
cmp byte [ebp - 0xd0], 0
jne 0x100345e6
mov ecx, dword [ebp - 0xe0]
or ecx, 0x200008
push ecx
jmp 0x1003447b
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x60]
test ecx, ecx
js 0x1003465a
call fcn.100172e3
test al, al
je 0x1003465a
cmp byte [ebp - 0xd0], 0
jne 0x1003465a
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x1003464c
cmp byte [ebp - 0xaa], 0
je 0x1003461c
push 0x60000c
jmp 0x10034645
cmp byte [ebp - 0xf6], 0
je 0x1003464c
cmp byte [esi + 0x103], 0
je 0x1003464c
cmp byte [esi + 0x102], 0
jne 0x1003464c
cmp byte [esi + 0x100], 0
jne 0x1003464c
push 0x600004
mov ecx, edi
call fcn.10033021
mov ecx, dword [ebp - 0xe0]
or ecx, 0x200009
jmp 0x100345e0
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x68]
test ecx, ecx
js 0x1003466f
call fcn.100172e3
test al, al
jne 0x10034684
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x70]
test ecx, ecx
js 0x100346f8
call fcn.100172e3
test al, al
je 0x100346f8
mov edx, dword [ebx + 0x14]
xor ecx, ecx
mov eax, edx
inc ecx
shr eax, 0xb
and al, cl
cmp byte [ebp - 0xc0], 0
je 0x100346a8
mov cl, byte [esi + 0x100]
test al, al
je 0x100346bc
test cl, cl
jne 0x100346c0
xor edx, edx
inc edx
mov byte [ebp - 0xc9], dl
mov byte [ebp - 0xbb], dl
jmp 0x100349f4
test cl, cl
jne 0x100346a8
cmp byte [ebp - 0xd0], 0
jne 0x100349f1
push 0xa
pop eax
push ecx
push ecx
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0xc8], eax
call fcn.10033049
pop ecx
pop ecx
test al, al
je 0x100349f1
push dword [ebp - 0xc8]
jmp 0x1003447b
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x6c]
test ecx, ecx
js 0x10034721
call fcn.100172e3
test al, al
je 0x10034721
xor edx, edx
inc edx
mov byte [ebp - 0xb0], dl
mov byte [ebp - 0xc9], dl
jmp 0x100349f4
mov al, byte [ebp - 0xae]
test al, al
jne 0x100349d3
cmp byte [ebp - 0xad], al
jne 0x100349d3
cmp byte [ebp - 0xac], al
je 0x10034777
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x74]
test ecx, ecx
js 0x10034777
call fcn.100172e3
test al, al
je 0x10034777
and dword [edi + 0x40], 0
xor edx, edx
mov eax, dword [edi + 4]
inc edx
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe64], dl
jmp 0x100349f4
mov al, byte [ebp - 0xb9]
test al, al
jne 0x100348f4
cmp byte [ebp - 0xab], al
jne 0x100348f4
cmp byte [ebp - 0xf5], al
je 0x100349f1
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0xd0]
test ecx, ecx
je 0x100347c5
push dword [eax + 0xd8]
call ecx
mov dword [ebp - 0xd4], eax
pop ecx
test eax, eax
je 0x100349f1
jmp 0x100347d0
mov eax, 0x1008a335
mov dword [ebp - 0xd4], eax
mov ecx, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100347d5
sub ecx, edx
lea ecx, [ecx*2 + 2]
call fcn.100150e5
mov ecx, dword [ebp - 0xd4]
mov dword [ebp - 0x104], eax
xor eax, eax
mov dword [ebp - 0xc4], eax
cmp byte [ecx], al
je 0x10034866
xor esi, esi
mov edi, ecx
push 0
mov edx, edi
lea ecx, [ebp - 0xd4]
call fcn.100133c7
add edi, eax
cmp dword [ebp - 0xd4], 0
pop ecx
je 0x1003484e
mov edx, dword [ebx + 0x14]
push ecx
push ecx
lea ecx, [ebp - 0xd4]
call fcn.10033049
pop ecx
pop ecx
test al, al
je 0x10034849
mov ecx, dword [ebp - 0x104]
mov ax, word [ebp - 0xd4]
mov word [ecx + esi*2], ax
inc esi
cmp byte [edi], 0
jne 0x10034806
mov edi, dword [ebp - 0x100]
mov dword [ebp - 0xc4], esi
mov esi, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xc4]
mov ecx, dword [ebp - 0x104]
xor edx, edx
mov word [ecx + eax*2], dx
test eax, eax
jle 0x100348e4
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.1003238d
mov ecx, edi
call fcn.1003241d
push dword [ebp - 0xc4]
mov edx, dword [edi + 0x3c]
mov ecx, edi
push dword [ebp - 0x104]
call fcn.10032000
pop ecx
pop ecx
test al, al
je 0x100348c7
push dword [ebp - 0xc4]
mov edx, dword [edi + 0x3c]
lea ecx, [edi + 0x54]
push 0
call fcn.10032d33
mov eax, dword [ebp - 0xc4]
add dword [edi + 0x3c], eax
pop ecx
pop ecx
mov byte [edi + 0x4b], 0
jmp 0x100348db
movzx eax, word [edi + 0xe52]
test ax, ax
je 0x100348db
dec eax
mov word [edi + 0xe52], ax
xor eax, eax
inc eax
mov byte [edi + 0xe64], al
mov ecx, dword [ebp - 0x104]
call fcn.100150fc
jmp 0x100349f1
cmp dword [esi + 0xd4], 0
je 0x10034995
mov eax, dword [edi + 0x40]
mov ecx, dword [edi + 0x44]
cmp eax, ecx
je 0x10034915
mov esi, ecx
cmovge ecx, eax
cmovl esi, eax
jmp 0x1003491a
mov ecx, dword [edi + 4]
xor esi, esi
mov eax, dword [edi + 0x14]
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0x110], esi
lea edx, [eax + ecx*2]
lea ecx, [eax + esi*2]
call fcn.10013717
mov edi, eax
lea ecx, [edi + 1]
call fcn.100150e5
mov esi, dword [ebp - 0x100]
lea edx, [edi + 1]
mov ecx, dword [ebp - 0xc8]
mov dword [ebp - 0x10c], eax
mov esi, dword [esi + 0x14]
lea ecx, [esi + ecx*2]
push ecx
mov ecx, dword [ebp - 0x110]
lea ecx, [esi + ecx*2]
push ecx
mov ecx, eax
call fcn.100136ad
pop ecx
pop ecx
mov ecx, dword [ebp - 0x10c]
call fcn.10015117
mov ecx, dword [ebp - 0x10c]
call fcn.100150fc
mov edi, dword [ebp - 0x100]
mov esi, dword [ebp - 0xdc]
mov al, byte [ebp - 0xb9]
test al, al
je 0x100349f1
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
jne 0x100349b2
mov eax, dword [edi + 4]
and dword [edi + 0x40], 0
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
xor edx, edx
inc edx
mov byte [edi + 0xe64], dl
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x100349f4
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.1003241d
mov byte [edi + 0x4b], 0
jmp 0x100349f1
xor ecx, ecx
movzx eax, al
inc ecx
xor eax, ecx
mov ecx, edi
add eax, 0x20000a
push eax
call fcn.10033021
mov eax, dword [edi + 0x3c]
mov dword [edi + 0x44], eax
mov dword [edi + 0x40], eax
xor edx, edx
inc edx
mov eax, dword [edi + 0x40]
cmp eax, dword [edi + 0x44]
je 0x10034a09
cmp byte [ebp - 0xaf], 0
je 0x10034a09
mov al, dl
jmp 0x10034a0b
xor al, al
or byte [ebp - 0xec], al
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
jne 0x10034d1f
test edi, edi
jne 0x10034a3e
push 0xf08
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.state___0
call fcn.1004c489
add esp, 0xc
xor eax, eax
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xf0], eax
cmp byte [ebp - 0xb0], al
je 0x10034df0
cmp byte [ebp - 0xd0], al
jne 0x10034be0
mov edx, dword [edi + 0x2c]
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0xe4], edx
mov dword [ebp - 0xd4], ecx
mov dl, byte [ecx]
mov byte [ebp - 0xb0], dl
mov edx, dword [ebp - 0xe4]
mov cl, byte [ebp - 0xb0]
cmp cl, byte [edx]
mov ecx, dword [ebp - 0xd4]
jne 0x10034add
cmp byte [ebp - 0xb0], al
je 0x10034ad9
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb0], dl
mov edx, dword [ebp - 0xe4]
mov cl, byte [ebp - 0xb0]
cmp cl, byte [edx + 1]
mov ecx, dword [ebp - 0xd4]
jne 0x10034add
add ecx, 2
add edx, 2
mov dword [ebp - 0xd4], ecx
mov dword [ebp - 0xe4], edx
cmp byte [ebp - 0xb0], al
jne 0x10034a79
mov ecx, eax
jmp 0x10034ae4
sbb ecx, ecx
xor edx, edx
inc edx
or ecx, edx
test ecx, ecx
je 0x10034be0
mov ecx, dword [edi + 0x2c]
mov esi, eax
mov edx, dword [edi + 0x24]
mov dword [ebp - 0xe8], ecx
dec edx
mov ecx, eax
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x4c], esi
mov dword [ebp - 4], eax
test edx, edx
jle 0x10034b51
mov eax, dword [ebp - 0xe8]
mov ecx, eax
lea esi, [edx + eax]
mov edx, esi
call fcn.100135bc
inc eax
lea ecx, [ebp - 0x54]
push eax
call fcn.10021567
mov edx, dword [ebp - 0x54]
push 0
push esi
push dword [ebp - 0xe8]
mov esi, dword [ebp - 0x4c]
mov ecx, esi
call fcn.10013555
mov ecx, dword [ebp - 0x54]
add esp, 0xc
mov edx, dword [ebp - 0xf0]
lea eax, [ecx - 1]
xor ecx, ecx
test edx, edx
lea edx, [edi + 0x3c]
cmovg ecx, eax
push ecx
push dword [edi + 4]
mov dword [ebp - 0xc8], ecx
mov ecx, edi
push 0
call fcn.10032fd8
add esp, 0xc
xor edx, edx
mov ecx, edi
push dword [edi + 4]
call fcn.10031fa7
mov eax, dword [ebp - 0xc8]
pop ecx
test eax, eax
jle 0x10034bc2
push eax
push esi
xor edx, edx
mov ecx, edi
call fcn.10032000
pop ecx
pop ecx
test al, al
je 0x10034bab
mov eax, dword [ebp - 0xc8]
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
jmp 0x10034bc2
push 0xce4
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push 0x1008d9e4
call fcn.1004c489
add esp, 0xc
test esi, esi
je 0x10034bdc
mov eax, dword [0x100a3068]
test eax, eax
je 0x10034bd5
dec dword [eax + 0x374]
push esi
call fcn.1004536d
pop ecx
or dword [ebp - 4], 0xffffffff
cmp byte [ebp - 0xbb], 0
je 0x10034bf5
mov edx, dword [ebx + 0x14]
test dl, 0x20
jne 0x10034df3
mov esi, dword [ebp - 0xf0]
cmp dword [ebp - 0xe8], 0
je 0x10034cfe
test esi, esi
jns 0x10034c23
push 0xf80
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.apply_new_text_length___0
call fcn.1004c489
add esp, 0xc
cmp byte [ebp - 0x124], 0
je 0x10034cd4
mov eax, dword [ebx + 0x14]
xorps xmm0, xmm0
mov dword [ebp - 0xa4], eax
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x94], eax
lea eax, [esi + 1]
push 0x20
pop ecx
cmp eax, ecx
movlpd qword [ebp - 0x9c], xmm0
movlpd qword [ebp - 0x88], xmm0
cmovle eax, ecx
movlpd qword [ebp - 0x80], xmm0
and dword [ebp - 0xa0], 0
mov dword [ebp - 0x8c], eax
lea eax, [ebp - 0xa8]
push eax
xor eax, eax
mov dword [ebp - 0xa8], 0x40000
mov dword [ebp - 0x90], esi
call eax
mov eax, dword [ebp - 0x94]
pop ecx
mov ecx, dword [ebp - 0x8c]
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xfc], ecx
lea esi, [ecx - 1]
cmp dword [ebp - 0x90], esi
cmovl esi, dword [ebp - 0x90]
cmp esi, ecx
jle 0x10034cda
push 0xf8e
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.apply_new_text_length___buf_size
call fcn.1004c489
add esp, 0xc
mov ecx, dword [ebp - 0xfc]
mov edx, dword [ebp - 0xe8]
lea eax, [esi + 1]
cmp eax, ecx
cmovl ecx, eax
push ecx
mov ecx, dword [ebp - 0xd8]
call fcn.100130cc
xor eax, eax
inc eax
pop ecx
mov byte [ebp - 0xba], al
and dword [edi + 0xe68], 0
and dword [edi + 0xe6c], 0
and dword [edi + 0xe70], 0
mov esi, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xb8]
cmp byte [ebp - 0xc9], 0
je 0x10034d39
cmp dword [esi + 0x1a34], eax
jne 0x10034d39
xor edx, edx
xor ecx, ecx
call fcn.10014c75
mov ecx, dword [ebp - 0xc0]
test cl, cl
jne 0x10034d8f
mov edx, dword [ebp - 0xb8]
lea ecx, [ebp - 0x48]
xor eax, eax
inc eax
push eax
call fcn.100144b5
movss xmm1, dword [0x10096ea4]
pop ecx
push 7
pop ecx
call fcn.100139a1
push dword [ebp - 0x3c]
movss xmm2, dword [esi + 0x1558]
xor ecx, ecx
push dword [ebp - 0x40]
push dword [ebp - 0x44]
lea edx, [ecx + 1]
mov ecx, eax
push dword [ebp - 0x48]
call fcn.100142c5
mov ecx, dword [ebp - 0xc0]
add esp, 0x10
movss xmm1, dword [ebp - 0x48]
movss xmm3, dword [ebp - 0x114]
movaps xmm0, xmm1
movss xmm2, dword [ebp - 0x44]
addss xmm0, xmm3
movss dword [ebp - 0x38], xmm1
movss dword [ebp - 0x34], xmm2
movss dword [ebp - 0x30], xmm0
movss xmm0, dword [ebp - 0x1c]
addss xmm0, xmm2
movss dword [ebp - 0x2c], xmm0
test cl, cl
je 0x100350e8
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ecx + 0xc8]
mov ecx, dword [ecx + 0xcc]
mov dword [ebp - 0x4c], ecx
mov ecx, dword [ebp - 0xc0]
mov dword [ebp - 0x50], eax
jmp 0x10035105
mov edx, dword [ebx + 0x14]
cmp byte [ebp - 0xd0], 0
jne 0x10034e2a
xor eax, eax
lea ecx, [edi + 0x18]
inc eax
mov byte [edi + 0x30], al
mov eax, dword [edi + 0xc]
lea eax, [eax*4 + 1]
push eax
call fcn.10021481
mov edx, dword [edi + 0x18]
mov ecx, dword [edi + 0x20]
push 0
push dword [edi + 0x14]
call fcn.100136ad
mov edx, dword [ebx + 0x14]
pop ecx
pop ecx
test edx, 0x1c0
je 0x10035092
push 0xf31
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.callback___0
call fcn.1004c489
mov edx, dword [ebx + 0x14]
add esp, 0xc
push 0x16
pop esi
test dl, 0x40
je 0x10034e79
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x34]
test ecx, ecx
js 0x10034e7e
call fcn.100172e3
mov edx, dword [ebx + 0x14]
test al, al
je 0x10034e79
push 0x40
xor ecx, ecx
pop eax
mov esi, ecx
jmp 0x10034ed6
mov eax, dword [0x100a3068]
test dl, dl
jns 0x10034eba
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x10034e9b
call fcn.100172e3
test al, al
je 0x10034e96
push 3
jmp 0x10034ead
mov eax, dword [0x100a3068]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x10034eba
call fcn.100172e3
test al, al
je 0x10034eba
push 4
mov edx, dword [ebx + 0x14]
xor ecx, ecx
pop esi
mov eax, 0x80
jmp 0x10034ed6
mov edx, dword [ebx + 0x14]
mov eax, 0x100
push 0
mov dword [ebp - 0x10c], eax
test eax, edx
pop ecx
mov eax, ecx
cmovne eax, dword [ebp - 0x10c]
test eax, eax
je 0x10035092
xor edi, edi
mov dword [ebp - 0x78], eax
mov word [ebp - 0x57], di
mov edi, dword [ebp - 0x100]
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x6c], ecx
mov byte [ebp - 0x55], cl
mov eax, dword [edi + 0x20]
mov esi, dword [edi + 0x14]
mov dword [ebp - 0x64], eax
mov eax, dword [edi + 8]
mov dword [ebp - 0x60], eax
mov eax, dword [edi + 0x34]
mov dword [ebp - 0x5c], eax
mov eax, dword [edi + 0x3c]
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], ecx
mov byte [ebp - 0x58], cl
mov ecx, esi
lea edx, [esi + eax*2]
call fcn.10013717
mov ecx, dword [edi + 0x40]
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x54], eax
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.10013717
mov ecx, dword [edi + 0x44]
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x50], eax
lea edx, [esi + ecx*2]
mov ecx, esi
call fcn.10013717
mov esi, eax
lea eax, [ebp - 0x78]
push eax
xor eax, eax
mov dword [ebp - 0x4c], esi
call eax
pop ecx
mov ecx, dword [ebp - 0x64]
cmp ecx, dword [edi + 0x20]
je 0x10034f7d
push 0xf60
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.callback_data.Buf__state__TextA.Data
call fcn.1004c489
mov ecx, dword [ebp - 0x64]
add esp, 0xc
mov eax, dword [ebp - 0x5c]
cmp eax, dword [edi + 0x34]
je 0x10034f9f
push 0xf61
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.callback_data.BufSize__state__BufCapacityA
call fcn.1004c489
mov ecx, dword [ebp - 0x64]
add esp, 0xc
mov eax, dword [ebx + 0x14]
cmp dword [ebp - 0x74], eax
je 0x10034fc1
push 0xf62
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.callback_data.Flags__flags
call fcn.1004c489
mov ecx, dword [ebp - 0x64]
add esp, 0xc
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x10c]
je 0x10034fe3
lea edx, [eax + ecx]
call fcn.100135bc
mov ecx, dword [ebp - 0x64]
mov dword [edi + 0x3c], eax
xor eax, eax
inc eax
mov byte [edi + 0xe64], al
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x118]
je 0x10034ffc
lea edx, [eax + ecx]
call fcn.100135bc
mov ecx, dword [ebp - 0x64]
mov dword [edi + 0x40], eax
mov eax, dword [ebp - 0x4c]
cmp eax, esi
je 0x10035011
lea edx, [eax + ecx]
call fcn.100135bc
mov ecx, dword [ebp - 0x64]
mov dword [edi + 0x44], eax
cmp byte [ebp - 0x58], 0
je 0x10035092
mov edx, ecx
lea esi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x1003501c
mov eax, dword [ebp - 0x60]
sub edx, esi
cmp eax, edx
je 0x10035049
push 0xf68
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.callback_data.BufTextLen___int_strlen_callback_data.Buf_
call fcn.1004c489
mov eax, dword [ebp - 0x60]
add esp, 0xc
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x108]
cmp eax, edx
jle 0x1003506c
cmp byte [ebp - 0x124], 0
je 0x1003506c
lea ecx, [edi + 0xc]
sub eax, edx
add eax, dword [ecx]
push eax
call fcn.10021567
mov ecx, dword [ebp - 0x64]
mov edx, dword [edi + 0xc]
xor eax, eax
push eax
push eax
push ecx
mov ecx, dword [edi + 0x14]
call fcn.10013555
mov dword [edi + 4], eax
add esp, 0xc
mov eax, dword [ebp - 0x60]
mov dword [edi + 8], eax
mov dword [edi + 0xe60], 0xbe99999a
cmp byte [ebp - 0xd0], 0
jne 0x10034bf5
mov ecx, dword [ebp - 0xd8]
mov eax, dword [edi + 0x20]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100350c8
test dl, dl
je 0x100350c4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100350c8
add eax, 2
add ecx, 2
test dl, dl
jne 0x100350a8
xor eax, eax
jmp 0x100350cf
sbb eax, eax
xor ecx, ecx
inc ecx
or eax, ecx
test eax, eax
je 0x10034bf5
mov esi, dword [edi + 0x20]
mov dword [ebp - 0xe8], esi
mov esi, dword [edi + 8]
jmp 0x10034bfb
addss xmm1, dword [esi + 0x1550]
movaps xmm0, xmm2
addss xmm0, dword [esi + 0x1554]
movss dword [ebp - 0x50], xmm1
movss dword [ebp - 0x4c], xmm0
cmp byte [ebp - 0xb1], 0
lea eax, [ebp - 0x50]
movss xmm7, dword [eax]
xorps xmm0, xmm0
movss xmm5, dword [eax + 4]
xorps xmm2, xmm2
mov dword [ebp - 0x10c], eax
movss dword [ebp - 0xd4], xmm7
movss dword [ebp - 0x12c], xmm7
movss dword [ebp - 0xe0], xmm5
movss dword [ebp - 0x128], xmm5
movss dword [ebp - 0x110], xmm2
movss dword [ebp - 0xc8], xmm0
je 0x10035161
mov edx, dword [edi + 0x20]
mov dword [ebp - 0xd8], edx
jmp 0x10035167
mov edx, dword [ebp - 0xd8]
cmp byte [ebp - 0xaf], 0
jne 0x10035264
cmp byte [ebp - 0xec], 0
jne 0x10035264
test cl, cl
je 0x100351d4
mov edi, dword [ebp - 0xd8]
mov dl, byte [edx]
inc edi
xor ecx, ecx
test dl, dl
je 0x100351a4
cmp dl, 0xa
lea eax, [ecx + 1]
mov dl, byte [edi]
cmovne eax, ecx
inc edi
mov ecx, eax
jmp 0x10035190
dec edi
mov al, byte [edi]
cmp al, 0xa
je 0x100351b0
cmp al, 0xd
je 0x100351b0
inc ecx
movd xmm0, ecx
movaps xmm2, xmm3
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x110], xmm2
mulss xmm0, dword [esi + 0x18d0]
movss dword [ebp - 0xc8], xmm0
jmp 0x1003520f
mov eax, dword [ebp - 0xb8]
cmp dword [esi + 0x1a34], eax
jne 0x100351e9
mov edi, dword [edi + 8]
add edi, edx
jmp 0x10035200
mov ecx, edx
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100351ee
sub ecx, edx
mov edx, dword [ebp - 0xd8]
lea edi, [edx + ecx]
mov eax, edi
sub eax, edx
cmp eax, 0x200000
jge 0x10035afa
movss xmm1, dword [0x10096ea4]
xor ecx, ecx
call fcn.100139a1
movss xmm2, dword [esi + 0x18d0]
lea ecx, [ebp - 0x38]
xor edx, edx
cmp byte [ebp - 0xc0], dl
cmovne ecx, edx
push ecx
push ecx
and dword [esp], edx
push edi
push dword [ebp - 0xd8]
push eax
lea eax, [ebp - 0x12c]
push eax
mov eax, dword [ebp - 0xf4]
push dword [esi + 0x18cc]
mov ecx, dword [eax + 0x278]
call fcn.100291bf
jmp 0x10035ab5
test edi, edi
jne 0x10035292
push 0xfbc
push str.E:Visual_Studio_ProjectsFirstPersonModFirstPersonModimguiimgui_widgets.cpp
push str.state___0
call fcn.1004c489
movss xmm7, dword [ebp - 0xd4]
add esp, 0xc
movss xmm5, dword [ebp - 0xe0]
xorps xmm0, xmm0
mov eax, dword [edi + 8]
xor ecx, ecx
add eax, dword [ebp - 0xd8]
mov edx, ecx
mov dword [ebp - 0x104], eax
mov eax, dword [edi + 0x14]
mov dword [ebp - 0xe8], eax
mov eax, 0xfffffc18
movss dword [ebp - 0x118], xmm0
movss dword [ebp - 0x124], xmm0
mov dword [ebp - 0xfc], ecx
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0x108], eax
mov dword [ebp - 0xf0], eax
cmp byte [ebp - 0xaf], cl
je 0x10035301
mov edx, dword [ebp - 0xe8]
mov eax, dword [edi + 0x3c]
or dword [ebp - 0x108], 0xffffffff
lea eax, [edx + eax*2]
mov dword [ebp - 0xfc], eax
xor eax, eax
lea edx, [eax + 1]
cmp byte [ebp - 0xec], cl
je 0x1003532a
mov eax, dword [edi + 0x44]
cmp dword [edi + 0x40], eax
mov esi, dword [ebp - 0xe8]
cmovl eax, dword [edi + 0x40]
or dword [ebp - 0xf0], 0xffffffff
inc edx
lea eax, [esi + eax*2]
mov dword [ebp - 0xe4], eax
mov edi, dword [ebp - 0xe8]
mov eax, dword [ebp - 0xc0]
movzx eax, al
mov dword [ebp - 0x140], edi
add edx, eax
movzx edi, word [edi]
mov eax, ecx
mov dword [ebp - 0x11c], edi
test di, di
mov edi, dword [ebp - 0x100]
mov dword [ebp - 0xc4], eax
je 0x100353d8
mov eax, dword [ebp - 0x11c]
mov esi, dword [ebp - 0x140]
movzx eax, ax
push 0xa
pop edi
cmp ax, di
mov edi, dword [ebp - 0xc4]
jne 0x100353b9
inc edi
cmp dword [ebp - 0x108], 0xffffffff
mov dword [ebp - 0xc4], edi
jne 0x1003539d
cmp esi, dword [ebp - 0xfc]
jb 0x1003539d
dec edx
mov dword [ebp - 0x108], edi
test edx, edx
jle 0x100353cc
cmp dword [ebp - 0xf0], 0xffffffff
jne 0x100353b9
cmp esi, dword [ebp - 0xe4]
jb 0x100353b9
dec edx
mov dword [ebp - 0xf0], edi
test edx, edx
jle 0x100353cc
add esi, 2
movzx eax, word [esi]
mov edi, eax
mov dword [ebp - 0x140], edi
test ax, ax
jne 0x1003536c
mov edi, dword [ebp - 0x100]
mov eax, dword [ebp - 0xc4]
mov edx, dword [ebp - 0xf0]
inc eax
cmp dword [ebp - 0x108], 0xffffffff
mov esi, eax
mov dword [ebp - 0xc4], eax
cmovne esi, dword [ebp - 0x108]
cmp edx, 0xffffffff
mov dword [ebp - 0x11c], esi
mov esi, dword [ebp - 0xdc]
cmove edx, eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0xf0], edx
mov edx, eax
cmp eax, dword [ebp - 0xe8]
jbe 0x1003544c
mov esi, dword [ebp - 0xe8]
push 0xa
pop eax
lea edi, [edx - 2]
mov dword [ebp - 0x140], edi
cmp word [edi], ax
je 0x1003543a
mov edx, edi
cmp edx, esi
ja 0x10035426
mov edi, dword [ebp - 0x100]
mov esi, dword [ebp - 0xdc]
mov eax, dword [ebp - 0xfc]
push ecx
push ecx
push ecx
push eax
lea ecx, [ebp - 0x144]
call fcn.10031d26
movd xmm3, dword [ebp - 0x11c]
add esp, 0x10
cmp dword [ebp - 0xf0], 0
movss xmm0, dword [esi + 0x18d0]
movss xmm1, dword [eax]
cvtdq2ps xmm3, xmm3
movss dword [ebp - 0x108], xmm1
mulss xmm3, xmm0
movss dword [ebp - 0xdc], xmm3
jl 0x1003550e
mov eax, dword [ebp - 0xe4]
mov edx, eax
mov ecx, dword [ebp - 0xe8]
cmp eax, ecx
jbe 0x100354ba
push 0xa
pop edi
cmp word [edx - 2], di
je 0x100354b4
add edx, 0xfffffffe
cmp edx, ecx
ja 0x100354a7
mov edi, dword [ebp - 0x100]
xor eax, eax
push eax
push ecx
push eax
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x144]
call fcn.10031d26
movd xmm6, dword [ebp - 0xf0]
add esp, 0x10
movss xmm3, dword [ebp - 0xdc]
movss xmm1, dword [ebp - 0x108]
movss xmm0, dword [eax]
cvtdq2ps xmm6, xmm6
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [esi + 0x18d0]
mulss xmm6, xmm0
movss dword [ebp - 0x118], xmm6
mov ecx, dword [ebp - 0xc0]
movss xmm4, dword [ebp - 0x114]
test cl, cl
je 0x10035542
movd xmm6, dword [ebp - 0xc4]
movaps xmm2, xmm4
cvtdq2ps xmm6, xmm6
movss dword [ebp - 0x110], xmm2
mulss xmm6, xmm0
movss dword [ebp - 0xc8], xmm6
cmp byte [ebp - 0xaf], 0
je 0x10035605
cmp byte [edi + 0xe64], 0
je 0x10035605
test dword [ebx + 0x14], 0x1000
jne 0x100355a6
movss xmm2, dword [edi + 0x38]
movaps xmm0, xmm4
comiss xmm2, xmm1
mulss xmm0, dword [0x10096e60]
jbe 0x10035587
subss xmm1, xmm0
xorps xmm0, xmm0
maxss xmm0, xmm1
jmp 0x10035594
subss xmm1, xmm4
comiss xmm1, xmm2
jb 0x100355aa
addss xmm0, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x38], xmm0
jmp 0x100355aa
and dword [edi + 0x38], 0
test cl, cl
je 0x100355fe
mov eax, dword [ebp - 0xf4]
movaps xmm2, xmm3
subss xmm2, dword [esi + 0x18d0]
movss xmm1, dword [eax + 0x54]
comiss xmm1, xmm2
jbe 0x100355d2
xorps xmm0, xmm0
maxss xmm0, xmm2
jmp 0x100355de
movaps xmm0, xmm3
subss xmm0, dword [ebp - 0x1c]
maxss xmm0, xmm1
subss xmm1, xmm0
movss dword [eax + 0x54], xmm0
addss xmm1, xmm5
movaps xmm5, xmm1
movss dword [ebp - 0xe0], xmm1
movss dword [ebp - 0x128], xmm5
mov byte [edi + 0xe64], 0
cmp byte [ebp - 0xec], 0
movss xmm6, dword [edi + 0x38]
movss dword [ebp - 0xc4], xmm6
je 0x1003589d
mov edx, dword [edi + 0x44]
mov eax, edx
mov ecx, dword [edi + 0x40]
cmp ecx, edx
mov edi, dword [ebp - 0xe8]
cmovl eax, ecx
cmovge edx, ecx
cmp byte [ebp - 0xaf], 0
lea eax, [edi + eax*2]
mov dword [ebp - 0x140], eax
mov eax, edi
lea eax, [eax + edx*2]
mov dword [ebp - 0xe4], eax
je 0x1003565c
movss xmm1, dword [0x10096ea4]
jmp 0x10035664
movss xmm1, dword [0x10096e78]
push 0x2a
pop ecx
call fcn.100139a1
cmp byte [ebp - 0xc0], 0
mov dword [ebp - 0x11c], eax
je 0x10035690
xorps xmm0, xmm0
movss dword [ebp - 0x13c], xmm0
movss dword [ebp - 0xfc], xmm0
jmp 0x100356a3
movss xmm0, dword [0x10096ed4]
movss dword [ebp - 0xfc], xmm0
xorps xmm0, xmm0
addss xmm5, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x140]
movaps xmm6, xmm7
addss xmm6, dword [ebp - 0x124]
mov edx, dword [ebp - 0xe4]
mov edi, dword [ebp - 0x100]
mov dword [ebp - 0x114], ecx
subss xmm5, xmm0
subss xmm6, dword [ebp - 0xc4]
movss dword [ebp - 0x118], xmm5
cmp ecx, edx
jae 0x1003588f
movss xmm3, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x11c]
movaps xmm0, xmm3
addss xmm0, dword [esi + 0x18d0]
comiss xmm5, xmm0
ja 0x10035889
movss xmm0, dword [ebp - 0x34]
comiss xmm0, xmm5
ja 0x1003576b
xor eax, eax
inc eax
push eax
push ecx
lea eax, [ebp - 0x114]
push eax
push edx
mov edx, ecx
lea ecx, [ebp - 0x20]
call fcn.10031d26
movss xmm1, dword [ebp - 0x20]
xorps xmm2, xmm2
add esp, 0x10
comiss xmm2, xmm1
jb 0x10035791
mov eax, dword [esi + 0x18cc]
cmp dword [eax], 0x20
jle 0x10035774
mov eax, dword [eax + 8]
movss xmm0, dword [eax + 0x80]
jmp 0x10035779
mov ax, word [ecx]
add ecx, 2
mov dword [ebp - 0x114], ecx
cmp ax, word [ebp - 0x150]
je 0x10035866
cmp ecx, edx
jb 0x10035752
jmp 0x10035866
movss xmm0, dword [eax + 0xc]
mulss xmm0, dword [0x10096e74]
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [ebp - 0x20], xmm1
movss xmm0, dword [ebp - 0xfc]
addss xmm1, xmm6
movss xmm3, dword [ebp - 0x2c]
addss xmm0, xmm5
movaps xmm4, xmm6
movss xmm6, dword [ebp - 0x30]
addss xmm4, xmm2
movss xmm2, dword [ebp - 0x13c]
subss xmm2, dword [esi + 0x18d0]
minss xmm1, xmm6
minss xmm0, xmm3
maxss xmm4, dword [ebp - 0x38]
addss xmm2, xmm5
movss dword [ebp - 0x144], xmm1
comiss xmm0, dword [ebp - 0x34]
maxss xmm2, dword [ebp - 0x34]
movss dword [ebp - 0x14c], xmm4
movss dword [ebp - 0x140], xmm0
movss dword [ebp - 0x148], xmm2
jbe 0x1003585a
comiss xmm3, xmm2
jbe 0x1003585a
comiss xmm1, dword [ebp - 0x38]
jbe 0x1003585a
comiss xmm6, xmm4
jbe 0x1003585a
push 0xf
push ecx
and dword [esp], 0
lea eax, [ebp - 0x144]
push edi
push eax
lea eax, [ebp - 0x14c]
push eax
mov eax, dword [ebp - 0xf4]
mov ecx, dword [eax + 0x278]
call fcn.10029034
movss xmm1, dword [ebp - 0x13c]
movss xmm3, dword [ebp - 0x2c]
movss xmm5, dword [ebp - 0x118]
movss xmm7, dword [ebp - 0xd4]
movss dword [ebp - 0x13c], xmm1
mov edx, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0x114]
movaps xmm6, xmm7
addss xmm5, dword [esi + 0x18d0]
subss xmm6, dword [ebp - 0xc4]
movss dword [ebp - 0x118], xmm5
cmp ecx, edx
jb 0x100356f5
mov edi, dword [ebp - 0x100]
mov ecx, dword [ebp - 0xc0]
movss xmm6, dword [ebp - 0xc4]
test cl, cl
jne 0x100358b4
mov eax, dword [ebp - 0x104]
sub eax, dword [ebp - 0xd8]
cmp eax, 0x200000
jge 0x10035924
movss xmm1, dword [0x10096ea4]
xor ecx, ecx
call fcn.100139a1
movss xmm0, dword [ebp - 0xe0]
lea ecx, [ebp - 0x38]
subss xmm0, dword [0x10096e24]
movss xmm2, dword [esi + 0x18d0]
subss xmm7, xmm6
xor edx, edx
cmp byte [ebp - 0xc0], dl
cmovne ecx, edx
movss dword [ebp - 0x1c], xmm0
push ecx
push ecx
and dword [esp], edx
push dword [ebp - 0x104]
movss dword [ebp - 0x20], xmm7
push dword [ebp - 0xd8]
push eax
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 0xf4]
push dword [esi + 0x18cc]
mov ecx, dword [eax + 0x278]
call fcn.100291bf
cmp byte [ebp - 0xaf], 0
je 0x10035aaf
movss xmm0, dword [esi + 0x18]
addss xmm0, dword [edi + 0xe60]
movss dword [edi + 0xe60], xmm0
cmp byte [esi + 0xb2], 0
je 0x1003598a
xorps xmm1, xmm1
comiss xmm1, xmm0
jae 0x1003598a
cvtps2pd xmm0, xmm0
movsd qword [ebp - 0x20], xmm0
fld qword [ebp - 0x20]
fld qword [0x10096ec8]
call fcn.1005fce0
movss xmm0, dword [0x10096e98]
fstp qword [ebp - 0x20]
movsd xmm1, qword [ebp - 0x20]
cvtpd2ps xmm1, xmm1
comiss xmm0, xmm1
jae 0x1003598a
xor eax, eax
jmp 0x1003598d
xor eax, eax
inc eax
movss xmm0, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x10c]
movss xmm3, dword [0x10096ea4]
addss xmm0, dword [ebp - 0xdc]
movss xmm6, dword [ecx]
addss xmm6, dword [ebp - 0x108]
subss xmm0, dword [0x10096e24]
subss xmm6, dword [ebp - 0xc4]
movss dword [ebp - 0xe0], xmm0
movaps xmm1, xmm0
movaps xmm5, xmm0
subss xmm1, dword [esi + 0x18d0]
movss dword [ebp - 0xd4], xmm6
movaps xmm2, xmm6
movss dword [ebp - 0x28], xmm6
addss xmm2, xmm3
subss xmm5, dword [0x10096eb8]
addss xmm1, dword [0x10096e74]
movss dword [ebp - 0x20], xmm2
movss dword [ebp - 0x1c], xmm5
movss dword [ebp - 0x24], xmm1
test al, al
je 0x10035a82
comiss xmm5, dword [ebp - 0x34]
jbe 0x10035a82
movss xmm0, dword [ebp - 0x2c]
comiss xmm0, xmm1
jbe 0x10035a7a
comiss xmm2, dword [ebp - 0x38]
jbe 0x10035a7a
movss xmm0, dword [ebp - 0x30]
comiss xmm0, xmm6
jbe 0x10035a7a
movaps xmm1, xmm3
xor ecx, ecx
call fcn.100139a1
push ecx
mov dword [esp], 0x3f800000
push eax
lea eax, [ebp - 0x50]
movss dword [ebp - 0x50], xmm6
push eax
lea eax, [ebp - 0x28]
movss dword [ebp - 0x4c], xmm5
push eax
mov eax, dword [ebp - 0xf4]
mov ecx, dword [eax + 0x278]
call fcn.10028eba
movss xmm6, dword [ebp - 0xd4]
movss xmm3, dword [0x10096ea4]
movss xmm0, dword [ebp - 0xe0]
cmp byte [ebp - 0xd0], 0
mov edi, dword [ebp - 0x104]
jne 0x10035ab5
subss xmm0, dword [esi + 0x18d0]
subss xmm6, xmm3
movss dword [esi + 0x2d88], xmm0
movss dword [esi + 0x2d84], xmm6
jmp 0x10035ab5
mov edi, dword [ebp - 0x104]
cmp byte [ebp - 0xc0], 0
je 0x10035afa
movss xmm0, dword [ebp - 0x110]
lea ecx, [ebp - 0x50]
addss xmm0, dword [0x10096e24]
movss dword [ebp - 0x50], xmm0
movss xmm0, dword [ebp - 0xc8]
addss xmm0, dword [esi + 0x18d0]
movss dword [ebp - 0x4c], xmm0
call fcn.100309cc
call fcn.10017739
call fcn.1001c3e4
mov eax, dword [ebp - 0x120]
test al, al
je 0x10035b0f
call fcn.1001b4a2
mov eax, dword [ebp - 0x120]
cmp byte [esi + 0x2dc0], 0
je 0x10035b2f
test al, al
jne 0x10035b2f
mov edx, dword [ebp - 0xd8]
lea ecx, [ebp - 0x12c]
push edi
call fcn.10020046
pop ecx
movss xmm0, dword [ebp - 0x134]
comiss xmm0, dword [0x10096e24]
jbe 0x10035b8a
movss xmm0, dword [ebp - 0x40]
xor eax, eax
addss xmm0, dword [esi + 0x1568]
mov ecx, dword [ebp - 0x138]
inc eax
xor edx, edx
movss dword [ebp - 0x134], xmm0
movss xmm0, dword [ebp - 0x44]
addss xmm0, dword [esi + 0x1554]
movss dword [ebp - 0x130], xmm0
push dword [ebp - 0x130]
push dword [ebp - 0x134]
push eax
call fcn.10013cb8
add esp, 0xc
cmp byte [ebp - 0xba], 0
mov eax, dword [ebx + 0x14]
je 0x10035bab
test eax, 0x200000
jne 0x10035bab
mov ecx, dword [ebp - 0xb8]
call fcn.10014d6e
mov eax, dword [ebx + 0x14]
movzx ecx, byte [ebp - 0xbb]
test al, 0x20
movzx eax, byte [ebp - 0xba]
cmovne eax, ecx
jmp 0x1003347c