Function at 0x10027370
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x17c
mov eax, dword [0x1005500c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push esi
push edi
mov dword [ebp - 0x110], ebx
cmp dword [ebx + 0x44], 0
jg 0x100273ac
push 0x67d
push str.D:_sources_src_2depsimguiimgui_draw.cpp
push str.atlas__ConfigData.Size___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
cmp dword [ebx + 0x50], 0
jge 0x1002740e
lea eax, [ebp - 0x160]
mov dword [ebp - 0x158], 0xffffffff
push eax
lea ecx, [ebx + 0x38]
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x160], 0x80000000
mov dword [ebp - 0x15c], 0x1b00b5
call fcn.1002a210
mov eax, dword [ebx + 0x38]
dec eax
mov dword [ebx + 0x50], eax
mov eax, dword [ebx + 0xc]
mov dword [ebx], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x1c], 0
mov dword [ebx + 0x20], 0
mov dword [ebx + 0x24], 0
mov dword [ebx + 0x28], 0
test eax, eax
je 0x1002745a
push dword [0x100561a0]
dec dword [0x10056360]
push eax
call fcn.10002e10
add esp, 8
mov eax, dword [ebx + 0x10]
test eax, eax
je 0x10027476
push dword [0x100561a0]
dec dword [0x10056360]
push eax
call fcn.10002e10
add esp, 8
mov ecx, dword [ebp - 0x110]
xor edi, edi
mov dword [ebx + 0xc], 0
xor esi, esi
mov dword [ebx + 0x10], 0
xor ebx, ebx
mov dword [ebp - 0x11c], edi
mov eax, dword [ecx + 0x44]
mov dword [ebp - 0x128], esi
test eax, eax
jle 0x1002753b
xor ecx, ecx
mov dword [ebp - 0x118], ecx
cmp ebx, eax
jl 0x100274d1
push 0x45d
push str.D:_sources_src_2depsimguiimgui.h
push str.i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov ecx, dword [ebp - 0x118]
add esp, 0xc
mov eax, dword [ebp - 0x110]
mov eax, dword [eax + 0x4c]
mov edx, dword [eax + ecx + 0x30]
test edx, edx
jne 0x100274ef
mov dword [eax + ecx + 0x30], 0x1004da08
mov edx, 0x1004da08
cmp word [edx], 0
je 0x10027524
movzx eax, word [edx + 2]
test ax, ax
je 0x10027512
mov ecx, eax
inc edi
movzx eax, word [edx]
inc esi
add edx, 4
sub ecx, eax
add edi, ecx
cmp word [edx], 0
jne 0x100274f5
mov ecx, dword [ebp - 0x118]
mov dword [ebp - 0x128], esi
mov dword [ebp - 0x11c], edi
mov eax, dword [ebp - 0x110]
inc ebx
add ecx, 0x64
mov dword [ebp - 0x118], ecx
mov eax, dword [eax + 0x44]
cmp ebx, eax
jl 0x100274d1
mov eax, dword [ebp - 0x110]
mov ebx, dword [eax + 4]
test ebx, ebx
jg 0x10027579
cmp edi, 0xfa0
jle 0x10027557
mov ebx, 0x1000
jmp 0x10027579
cmp edi, 0x7d0
jle 0x10027566
mov ebx, 0x800
jmp 0x10027579
cmp edi, 0x3e8
mov ebx, 0x200
mov ecx, 0x400
cmovg ebx, ecx
push dword [0x100561a0]
inc dword [0x10056360]
xorps xmm0, xmm0
mov dword [eax + 0x14], ebx
mov dword [eax + 0x18], 0
mov eax, dword [eax + 8]
push 0x30
movlpd qword [ebp - 0x16c], xmm0
movlpd qword [ebp - 0x164], xmm0
movlpd qword [ebp - 0x15c], xmm0
movlpd qword [ebp - 0x14c], xmm0
mov dword [ebp - 0x118], eax
call fcn.10002df0
push dword [0x100561a0]
inc dword [0x10056360]
mov dword [ebp - 0x124], eax
mov eax, ebx
sub eax, dword [ebp - 0x118]
mov dword [ebp - 0x120], eax
lea ecx, [eax*8]
push ecx
call fcn.10002df0
mov ecx, dword [ebp - 0x124]
add esp, 0x10
test ecx, ecx
je 0x10027655
test eax, eax
je 0x1002764c
mov edx, dword [ebp - 0x118]
mov dword [ebp - 0x158], edx
mov edx, dword [ebp - 0x120]
push edx
push eax
mov dword [ebp - 0x148], eax
mov eax, 0x8000
sub eax, dword [ebp - 0x118]
push eax
mov dword [ebp - 0x164], ebx
mov dword [ebp - 0x160], 0x8000
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x15c], ebx
call fcn.1001d630
add esp, 0xc
jmp 0x1002766e
push dword [0x100561a0]
push ecx
jmp 0x10027660
test eax, eax
je 0x1002766e
push dword [0x100561a0]
push eax
dec dword [0x10056360]
call fcn.10002e10
add esp, 8
mov ebx, dword [ebp - 0x110]
mov eax, 1
mov edx, dword [ebp - 0x168]
mov ecx, ebx
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
call fcn.10028320
imul eax, dword [ebx + 0x44], 0x88
push dword [0x100561a0]
inc dword [0x10056360]
push eax
call fcn.10002df0
mov edx, eax
add esp, 8
mov eax, dword [ebp - 0x110]
xor ebx, ebx
mov dword [ebp - 0x118], edx
mov ecx, dword [eax + 0x44]
test ecx, ecx
jle 0x100277be
xor eax, eax
mov dword [ebp - 0x138], edx
mov dword [ebp - 0x10c], eax
cmp ebx, ecx
jl 0x100276f9
push 0x45d
push str.D:_sources_src_2depsimguiimgui.h
push str.i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [ebp - 0x10c]
add esp, 0xc
mov ecx, dword [ebp - 0x110]
mov esi, dword [ecx + 0x4c]
add esi, eax
mov eax, dword [esi + 0x60]
test eax, eax
je 0x10027716
mov eax, dword [eax + 0x44]
test eax, eax
je 0x1002772e
cmp eax, ecx
je 0x1002772e
push 0x6af
push str.D:_sources_src_2depsimguiimgui_draw.cpp
push str.cfg.DstFont____cfg.DstFont__IsLoaded____cfg.DstFont__ContainerAtlas__atlas_
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov eax, dword [esi]
mov ecx, eax
mov edx, dword [esi + 0xc]
mov dword [ebp - 0x130], eax
call fcn.10024080
mov dword [ebp - 0x134], eax
test eax, eax
jns 0x1002776c
push 0x6b2
push str.D:_sources_src_2depsimguiimgui_draw.cpp
push str.font_offset___0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov edx, dword [esi]
add esp, 0xc
mov eax, dword [ebp - 0x134]
jmp 0x10027772
mov edx, dword [ebp - 0x130]
mov esi, dword [ebp - 0x138]
mov ecx, esi
push eax
call fcn.1001e740
add esp, 4
test eax, eax
je 0x10027b1a
mov ecx, dword [ebp - 0x110]
inc ebx
mov eax, dword [ebp - 0x10c]
add esi, 0x88
add eax, 0x64
mov dword [ebp - 0x138], esi
mov dword [ebp - 0x10c], eax
mov ecx, dword [ecx + 0x44]
cmp ebx, ecx
jl 0x100276f9
mov esi, dword [ebp - 0x128]
push dword [0x100561a0]
inc dword [0x10056360]
lea ebx, [edi*8]
sub ebx, edi
mov dword [ebp - 0x10c], 0
shl ebx, 2
push ebx
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x174], 0
call fcn.10002df0
push dword [0x100561a0]
inc dword [0x10056360]
shl edi, 4
push edi
mov dword [ebp - 0x178], eax
call fcn.10002df0
push dword [0x100561a0]
inc dword [0x10056360]
lea esi, [esi + esi*2]
shl esi, 3
push esi
mov dword [ebp - 0x13c], eax
call fcn.10002df0
push ebx
push 0
push dword [ebp - 0x178]
mov dword [ebp - 0x138], eax
call sub.VCRUNTIME140.dll_memset
add esp, 0x24
push edi
push 0
push dword [ebp - 0x13c]
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
push esi
push 0
push dword [ebp - 0x138]
call sub.VCRUNTIME140.dll_memset
mov edi, dword [ebp - 0x110]
xor edx, edx
add esp, 0xc
mov dword [ebp - 0x130], edx
mov ecx, dword [edi + 0x44]
test ecx, ecx
jle 0x10027b6e
mov ebx, dword [ebp - 0x118]
xor esi, esi
mov dword [ebp - 0x134], esi
cmp edx, ecx
jl 0x100278af
push 0x45d
push str.D:_sources_src_2depsimguiimgui.h
push str.i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov ecx, dword [edi + 0x4c]
xor edi, edi
add ecx, esi
mov dword [ebp - 0x12c], edi
xor esi, esi
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0x144], esi
mov edx, dword [ecx + 0x30]
movzx eax, word [edx]
test ax, ax
je 0x10027904
movzx ecx, word [edx + 2]
test cx, cx
je 0x100278f2
add edx, 4
movzx eax, ax
sub ecx, eax
inc edi
add edi, ecx
inc esi
movzx eax, word [edx]
test ax, ax
jne 0x100278d5
mov ecx, dword [ebp - 0x114]
mov dword [ebp - 0x12c], edi
mov dword [ebp - 0x144], esi
mov edx, dword [ebp - 0x174]
mov edi, dword [ebp - 0x138]
mov dword [ebx + 0x84], esi
lea eax, [edx + edx*2]
add edx, esi
lea eax, [edi + eax*8]
mov dword [ebp - 0x174], edx
xor edi, edi
mov dword [ebx + 0x80], eax
test esi, esi
jle 0x100279a5
xor eax, eax
mov dword [ebp - 0x140], eax
nop dword [eax + eax]
mov edx, dword [ecx + 0x30]
mov esi, dword [ebx + 0x80]
add esi, eax
mov eax, dword [ecx + 0x10]
mov dword [esi], eax
movzx eax, word [edx + edi*4]
mov dword [esi + 4], eax
movzx eax, word [edx + edi*4]
movzx ecx, word [edx + edi*4 + 2]
inc edi
mov edx, dword [ebp - 0x10c]
sub ecx, eax
inc ecx
add dword [ebp - 0x10c], ecx
mov dword [esi + 0xc], ecx
mov ecx, dword [ebp - 0x114]
lea eax, [edx*8]
sub eax, edx
mov edx, dword [ebp - 0x178]
lea eax, [edx + eax*4]
mov dword [esi + 0x10], eax
mov eax, dword [ebp - 0x140]
add eax, 0x18
mov dword [ebp - 0x140], eax
cmp edi, dword [ebp - 0x144]
jl 0x10027940
mov ecx, dword [ebp - 0x170]
mov eax, ecx
mov edi, dword [ebp - 0x12c]
add ecx, edi
shl eax, 4
add eax, dword [ebp - 0x13c]
mov dword [ebx + 0x78], eax
mov eax, dword [ebp - 0x114]
mov dword [ebx + 0x7c], edi
mov dword [ebp - 0x170], ecx
mov esi, dword [eax + 0x18]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x12c], eax
cmp eax, 8
jbe 0x100279f9
push 0xd63
push str.D:_sources_src_2depsimgui_stb_truetype.h
push str.h_oversample___8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
cmp esi, 8
jbe 0x10027a16
push 0xd64
push str.D:_sources_src_2depsimgui_stb_truetype.h
push str.v_oversample___8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
cmp dword [ebp - 0x12c], 8
lea ecx, [ebp - 0x16c]
push dword [ebx + 0x78]
mov eax, dword [ebp - 0x124]
mov edx, ebx
cmovbe eax, dword [ebp - 0x12c]
cmp esi, 8
push dword [ebx + 0x84]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x120]
push dword [ebx + 0x80]
cmovbe eax, esi
mov dword [ebp - 0x150], eax
call fcn.10023870
mov esi, eax
add esp, 0xc
cmp esi, edi
je 0x10027a7f
push 0x6e3
push str.D:_sources_src_2depsimguiimgui_draw.cpp
push str.n__font_glyphs_count
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov edx, dword [ebx + 0x78]
mov ecx, dword [ebp - 0x168]
push esi
call fcn.1001dbd0
add esp, 4
test esi, esi
jle 0x10027ace
xor edx, edx
nop word [eax + eax]
mov eax, dword [ebx + 0x78]
cmp dword [eax + edx + 0xc], 0
je 0x10027ac6
movzx ecx, word [eax + edx + 0xa]
mov edi, dword [ebp - 0x110]
movzx eax, word [eax + edx + 6]
add ecx, eax
cmp dword [edi + 0x18], ecx
cmovge ecx, dword [edi + 0x18]
mov dword [edi + 0x18], ecx
add edx, 0x10
sub esi, 1
jne 0x10027aa0
mov edi, dword [ebp - 0x110]
add ebx, 0x88
mov edx, dword [ebp - 0x130]
mov esi, dword [ebp - 0x134]
inc edx
add esi, 0x64
mov dword [ebp - 0x130], edx
mov ecx, dword [edi + 0x44]
mov dword [ebp - 0x134], esi
cmp edx, ecx
jge 0x10027b60
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x154]
mov dword [ebp - 0x124], eax
jmp 0x10027893
mov eax, dword [ebp - 0x110]
mov dword [eax + 0x18], 0
mov dword [eax + 0x14], 0
mov eax, dword [ebp - 0x118]
test eax, eax
je 0x10027b3e
dec dword [0x10056360]
push dword [0x100561a0]
push eax
call fcn.10002e10
add esp, 8
xor al, al
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100401be
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x150]
mov ebx, dword [ebp - 0x154]
jmp 0x10027b75
mov ebx, 1
mov edi, ebx
mov esi, dword [ebp - 0x11c]
cmp dword [ebp - 0x170], esi
je 0x10027b9b
push 0x6eb
push str.D:_sources_src_2depsimguiimgui_draw.cpp
push str.buf_rects_n__total_glyphs_count
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
cmp dword [ebp - 0x10c], esi
mov esi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
je 0x10027bbd
push 0x6ec
push str.D:_sources_src_2depsimguiimgui_draw.cpp
push str.buf_packedchars_n__total_glyphs_count
call esi
add esp, 0xc
mov eax, dword [ebp - 0x174]
cmp eax, dword [ebp - 0x128]
je 0x10027bdf
push 0x6ed
push str.D:_sources_src_2depsimguiimgui_draw.cpp
push str.buf_ranges_n__total_ranges_count
call esi
add esp, 0xc
mov esi, dword [ebp - 0x110]
movss xmm1, dword [0x1004feb0]
movaps xmm2, xmm1
inc dword [0x10056360]
push dword [0x100561a0]
mov ecx, dword [esi + 0x18]
dec ecx
mov eax, ecx
sar eax, 1
or ecx, eax
mov eax, ecx
sar eax, 2
or ecx, eax
mov eax, ecx
sar eax, 4
or ecx, eax
mov eax, ecx
sar eax, 8
or ecx, eax
mov eax, ecx
sar eax, 0x10
or ecx, eax
mov eax, dword [esi + 0x14]
inc ecx
mov dword [esi + 0x18], ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
imul eax, ecx
divss xmm2, xmm0
push eax
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [esi + 0x1c], xmm2
divss xmm1, xmm0
movss dword [esi + 0x20], xmm1
call fcn.10002df0
mov ecx, dword [esi + 0x14]
imul ecx, dword [esi + 0x18]
mov dword [esi + 0xc], eax
push ecx
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esi + 0xc]
xor edx, edx
mov dword [ebp - 0x14c], eax
add esp, 0x14
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x160], eax
mov eax, dword [esi + 0x44]
mov dword [ebp - 0x124], edx
test eax, eax
jle 0x10027eb4
mov ecx, dword [ebp - 0x118]
add ecx, 0x7c
mov dword [ebp - 0x128], edx
mov dword [ebp - 0x10c], ecx
cmp edx, eax
jl 0x10027cbe
push 0x45d
push str.D:_sources_src_2depsimguiimgui.h
push str.i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov esi, dword [esi + 0x4c]
add esi, dword [ebp - 0x128]
mov ecx, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x120], ecx
cmp ecx, 8
jbe 0x10027cfc
push 0xd63
push str.D:_sources_src_2depsimgui_stb_truetype.h
push str.h_oversample___8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [ebp - 0x11c]
add esp, 0xc
cmp eax, 8
jbe 0x10027d1f
push 0xd64
push str.D:_sources_src_2depsimgui_stb_truetype.h
push str.v_oversample___8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [ebp - 0x11c]
add esp, 0xc
cmp dword [ebp - 0x120], 8
cmovbe ebx, dword [ebp - 0x120]
cmp eax, 8
mov dword [ebp - 0x154], ebx
cmovbe edi, eax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x150], edi
push dword [eax - 4]
lea ecx, [eax - 0x7c]
push dword [eax + 8]
mov dword [ebp - 0x114], ecx
mov edx, ecx
push dword [eax + 4]
lea ecx, [ebp - 0x16c]
call fcn.10023a60
movss xmm1, dword [esi + 0x3c]
add esp, 0xc
ucomiss xmm1, dword [0x1004feb0]
movss dword [ebp - 0x11c], xmm1
lahf
test ah, 0x44
jnp 0x10027e6b
xor esi, esi
nop word [eax + eax]
movd xmm0, esi
mov eax, esi
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x10050430]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.10044330
movss xmm1, dword [ebp - 0x11c]
mov edx, 0xff
cmp eax, edx
movzx ecx, al
cmovbe edx, ecx
mov byte [ebp + esi - 0x108], dl
inc esi
cmp esi, 0x100
jb 0x10027d90
mov eax, dword [ebp - 0x114]
mov ebx, dword [eax + 0x78]
mov eax, dword [ebp - 0x10c]
mov eax, dword [eax]
shl eax, 4
add eax, ebx
cmp ebx, eax
je 0x10027e6b
mov ecx, dword [ebp - 0x15c]
mov edx, dword [ebp - 0x114]
nop
cmp dword [ebx + 0xc], 0
je 0x10027e56
movzx eax, word [ebx + 0xa]
movzx edx, word [ebx + 8]
movzx edi, word [ebx + 6]
movzx esi, word [ebx + 4]
imul eax, ecx
add eax, dword [ebp - 0x14c]
add edx, eax
test edi, edi
je 0x10027e50
xor ecx, ecx
test esi, esi
je 0x10027e43
nop dword [eax + eax]
movzx eax, byte [ecx + edx]
mov al, byte [ebp + eax - 0x108]
mov byte [ecx + edx], al
inc ecx
cmp ecx, esi
jl 0x10027e30
mov ecx, dword [ebp - 0x15c]
dec edi
add edx, ecx
test edi, edi
jg 0x10027e25
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp - 0x10c]
add ebx, 0x10
mov eax, dword [eax]
shl eax, 4
add eax, dword [edx + 0x78]
cmp ebx, eax
jne 0x10027e00
mov eax, dword [ebp - 0x114]
mov esi, dword [ebp - 0x110]
mov edx, dword [ebp - 0x124]
add dword [ebp - 0x128], 0x64
inc edx
add dword [ebp - 0x10c], 0x88
mov dword [eax + 0x78], 0
mov eax, dword [esi + 0x44]
mov dword [ebp - 0x124], edx
cmp edx, eax
jge 0x10027eb4
mov edi, dword [ebp - 0x150]
mov ebx, dword [ebp - 0x154]
jmp 0x10027ca2
cmp dword [ebp - 0x148], 0
je 0x10027ec3
dec dword [0x10056360]
push dword [0x100561a0]
push dword [ebp - 0x148]
call fcn.10002e10
add esp, 8
cmp dword [ebp - 0x168], 0
je 0x10027ee6
dec dword [0x10056360]
push dword [0x100561a0]
push dword [ebp - 0x168]
call fcn.10002e10
mov eax, dword [ebp - 0x13c]
add esp, 8
test eax, eax
je 0x10027f0a
dec dword [0x10056360]
push dword [0x100561a0]
push eax
call fcn.10002e10
mov eax, dword [esi + 0x44]
xor ecx, ecx
add esp, 8
mov dword [ebp - 0x130], ecx
test eax, eax
jle 0x100282a8
mov edi, dword [ebp - 0x118]
xor ebx, ebx
add edi, 4
mov dword [ebp - 0x12c], ebx
mov dword [ebp - 0x114], edi
cmp ecx, eax
jl 0x10027f5f
push 0x45d
push str.D:_sources_src_2depsimguiimgui.h
push str.i___Size
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
add esp, 0xc
mov eax, dword [esi + 0x4c]
mov esi, dword [ebp - 0x114]
add eax, ebx
mov edi, dword [edi + 0x18]
mov dword [ebp - 0x124], eax
mov esi, dword [esi]
mov ebx, dword [eax + 0x60]
mov eax, 0x100
cwde
movzx ecx, byte [edi + esi + 6]
movzx edx, byte [edi + esi + 7]
movsx ecx, cx
imul ecx, eax
add dx, cx
movzx ecx, byte [edi + esi + 4]
movsx eax, dx
movzx edx, byte [edi + esi + 5]
mov esi, dword [ebp - 0x124]
mov dword [ebp - 0x11c], eax
mov eax, 0x100
cwde
movsx ecx, cx
movss xmm1, dword [esi + 0x10]
imul ecx, eax
add dx, cx
movsx edi, dx
mov eax, edi
sub eax, dword [ebp - 0x11c]
cmp byte [esi + 0x34], 0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
movss dword [ebp - 0x120], xmm1
jne 0x10028028
mov ecx, ebx
call fcn.10028b80
movd xmm0, dword [ebp - 0x11c]
mov eax, dword [esi + 0x10]
movd xmm1, edi
cvtdq2ps xmm1, xmm1
mov dword [ebx], eax
mov eax, dword [ebp - 0x110]
mov dword [ebx + 0x40], esi
mov dword [ebx + 0x44], eax
cvtdq2ps xmm0, xmm0
mulss xmm1, dword [ebp - 0x120]
mulss xmm0, dword [ebp - 0x120]
movss dword [ebx + 0x48], xmm1
movss dword [ebx + 0x4c], xmm0
jmp 0x1002802d
movss xmm1, dword [ebx + 0x48]
addss xmm1, dword [0x1004fe78]
inc word [ebx + 0x3e]
xor edx, edx
mov edi, dword [ebp - 0x114]
movss xmm7, dword [esi + 0x28]
movss dword [ebp - 0x128], xmm7
cvttss2si eax, xmm1
mov dword [ebp - 0x120], edx
movd xmm6, eax
cvtdq2ps xmm6, xmm6
addss xmm6, dword [esi + 0x2c]
movss dword [ebp - 0x13c], xmm6
cmp dword [edi + 0x80], edx
jle 0x1002826f
xor ecx, ecx
mov dword [ebp - 0x134], ecx
mov eax, dword [edi + 0x7c]
add eax, ecx
xor ecx, ecx
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x10c], ecx
cmp dword [eax + 0xc], ecx
jle 0x1002824d
xor esi, esi
nop
mov edx, dword [eax + 0x10]
movzx eax, word [edx + esi]
mov edi, eax
mov dword [ebp - 0x140], edi
test ax, ax
jne 0x100280cd
cmp word [edx + esi + 4], ax
jne 0x100280cd
cmp word [edx + esi + 2], ax
jne 0x100280cd
cmp word [edx + esi + 6], ax
je 0x10028228
mov edi, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x124]
mov edi, dword [edi + 4]
add edi, ecx
cmp byte [eax + 0x34], 0
je 0x1002812b
movzx eax, di
mov dword [ebp - 0x144], eax
cmp eax, dword [ebx + 0x28]
jge 0x10028120
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebx + 0x30]
movzx eax, word [eax + ecx*2]
mov ecx, 0xffff
cmp ax, cx
mov ecx, dword [ebp - 0x10c]
je 0x10028120
lea ecx, [eax + eax*4]
mov eax, dword [ebx + 0x18]
lea eax, [eax + ecx*8]
mov ecx, dword [ebp - 0x10c]
jmp 0x10028123
mov eax, dword [ebx + 0x34]
test eax, eax
jne 0x10028228
mov eax, dword [ebp - 0x110]
sub esp, 0x1c
movss xmm1, dword [0x1004feb0]
mov ecx, ebx
movss xmm3, dword [0x1004feb0]
movd xmm0, dword [eax + 0x14]
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, dword [eax + 0x18]
mov eax, dword [ebp - 0x140]
cvtdq2ps xmm0, xmm0
movzx eax, ax
movd xmm5, eax
movzx eax, word [edx + esi + 2]
divss xmm3, xmm0
movss xmm0, dword [edx + esi + 0x10]
movd xmm4, eax
movzx eax, word [edx + esi + 4]
cvtdq2ps xmm5, xmm5
movd xmm2, eax
movzx eax, word [edx + esi + 6]
cvtdq2ps xmm2, xmm2
mulss xmm5, xmm1
mulss xmm2, xmm1
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [esp + 0x18], xmm0
movss xmm0, dword [edx + esi + 0x18]
mulss xmm1, xmm3
cvtdq2ps xmm4, xmm4
movss dword [esp + 0x14], xmm1
xorps xmm1, xmm1
addss xmm0, xmm1
mulss xmm4, xmm3
movss xmm3, dword [edx + esi + 0xc]
movss dword [esp + 0x10], xmm2
addss xmm3, xmm1
movss xmm2, dword [edx + esi + 8]
addss xmm0, xmm6
movss dword [esp + 0xc], xmm4
movss dword [esp + 8], xmm5
addss xmm2, xmm1
addss xmm3, xmm6
movss dword [esp + 4], xmm0
movss xmm0, dword [edx + esi + 0x14]
addss xmm2, xmm7
addss xmm0, xmm1
addss xmm0, xmm7
movss dword [esp], xmm0
push edi
call fcn.100291b0
movss xmm6, dword [ebp - 0x13c]
movss xmm7, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0x11c]
inc ecx
add esi, 0x1c
mov dword [ebp - 0x10c], ecx
cmp ecx, dword [eax + 0xc]
jl 0x100280a0
mov edx, dword [ebp - 0x120]
mov edi, dword [ebp - 0x114]
mov ecx, dword [ebp - 0x134]
inc edx
add ecx, 0x18
mov dword [ebp - 0x120], edx
mov dword [ebp - 0x134], ecx
cmp edx, dword [edi + 0x80]
jl 0x10028080
mov esi, dword [ebp - 0x110]
add edi, 0x88
mov ecx, dword [ebp - 0x130]
mov ebx, dword [ebp - 0x12c]
inc ecx
add ebx, 0x64
mov dword [ebp - 0x130], ecx
mov eax, dword [esi + 0x44]
mov dword [ebp - 0x12c], ebx
mov dword [ebp - 0x114], edi
cmp ecx, eax
jl 0x10027f5f
mov eax, dword [ebp - 0x178]
test eax, eax
je 0x100282b8
dec dword [0x10056360]
push dword [0x100561a0]
push eax
call fcn.10002e10
mov eax, dword [ebp - 0x138]
add esp, 8
test eax, eax
je 0x100282d7
dec dword [0x10056360]
push dword [0x100561a0]
push eax
call fcn.10002e10
mov eax, dword [ebp - 0x118]
add esp, 8
test eax, eax
je 0x100282f6
dec dword [0x10056360]
push dword [0x100561a0]
push eax
call fcn.10002e10
add esp, 8
mov ecx, esi
call fcn.10028840
mov ecx, dword [ebp - 4]
mov al, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100401be
mov esp, ebp
pop ebp
ret