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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1009a911
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1c8
mov eax, dword [0x100c4054]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x144], edi
cmp dword [edi + 0x4c], 0
lea eax, [edi + 0x4c]
mov dword [ebp - 0x14c], eax
jg 0x1004c86f
push 0x818
push 0x100b5ae0
push str.atlas__ConfigData.Size___0
call fcn.10077bd9
add esp, 0xc
cmp dword [edi + 0x458], 0
jge 0x1004c8e7
test byte [edi + 4], 2
lea eax, [ebp - 0x180]
mov dword [ebp - 0x17c], 0xffffffff
lea ecx, [edi + 0x40]
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0
push eax
mov dword [ebp - 0x180], 0x1b00d9
je 0x1004c8d8
mov dword [ebp - 0x180], 0x20002
call fcn.10051040
mov eax, dword [edi + 0x40]
dec eax
mov dword [edi + 0x458], eax
cmp dword [edi + 0x45c], 0
jge 0x1004c955
test byte [edi + 4], 4
jne 0x1004c955
lea eax, [ebp - 0x180]
mov dword [ebp - 0x17c], 0xffffffff
push eax
lea ecx, [edi + 0x40]
mov dword [ebp - 0x178], 0
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x180], 0x400041
call fcn.10051040
mov eax, dword [edi + 0x40]
dec eax
mov dword [edi + 0x45c], eax
mov ecx, edi
mov dword [edi + 8], 0
mov dword [edi + 0x20], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0
call fcn.1004c080
xor ecx, ecx
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x150], ecx
mov dword [ebp - 0x1c0], ecx
mov dword [ebp - 4], ecx
xor edi, edi
mov dword [ebp - 0x198], ecx
mov dword [ebp - 0x154], edi
mov dword [ebp - 0x194], edi
mov eax, dword [ebp - 0x14c]
lea ecx, [edi + 8]
mov byte [ebp - 4], 1
mov eax, dword [eax]
mov dword [ebp - 0x134], eax
test eax, eax
jle 0x1004ca1b
cmp eax, ecx
mov esi, eax
cmovl esi, ecx
test esi, esi
jle 0x1004ca1b
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004c9ef
inc dword [eax + 0x374]
imul eax, esi, 0xc4
push eax
call fcn.1007eac4
mov dword [ebp - 0x150], eax
add esp, 4
mov dword [ebp - 0x1c0], eax
mov ecx, 8
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x1c4], esi
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x144]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x120], eax
test eax, eax
jle 0x1004ca78
cmp eax, 8
mov esi, eax
cmovl esi, ecx
test esi, esi
jle 0x1004ca78
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004ca4f
inc dword [eax + 0x374]
lea eax, [esi + esi*2]
shl eax, 3
push eax
call fcn.1007eac4
mov edi, eax
mov dword [ebp - 0x198], esi
mov eax, dword [ebp - 0x120]
add esp, 4
mov dword [ebp - 0x154], edi
mov dword [ebp - 0x194], edi
imul ecx, dword [ebp - 0x134], 0xc4
mov dword [ebp - 0x19c], eax
push ecx
push 0
push dword [ebp - 0x150]
call fcn.10073770
mov eax, dword [ebp - 0x120]
add esp, 0xc
lea eax, [eax + eax*2]
shl eax, 3
push eax
push 0
push edi
call fcn.10073770
mov eax, dword [ebp - 0x14c]
xor esi, esi
add esp, 0xc
mov dword [ebp - 0x130], esi
cmp dword [eax], esi
jle 0x1004ce27
mov edi, dword [ebp - 0x150]
mov dword [ebp - 0x12c], esi
add edi, 0xa4
nop dword [eax]
test esi, esi
js 0x1004caec
cmp esi, dword [ebp - 0x134]
jl 0x1004cb09
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x14c]
add esp, 0xc
test esi, esi
js 0x1004cb11
cmp esi, dword [eax]
jl 0x1004cb2e
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x14c]
add esp, 0xc
mov eax, dword [eax + 8]
add eax, dword [ebp - 0x12c]
mov dword [ebp - 0x11c], eax
mov eax, dword [eax + 0x74]
test eax, eax
je 0x1004cb53
mov eax, dword [eax + 0x30]
test eax, eax
je 0x1004cb6a
cmp eax, dword [ebp - 0x144]
je 0x1004cb6a
push 0x830
push 0x100b5ae0
push str.cfg.DstFont____cfg.DstFont__IsLoaded____cfg.DstFont__ContainerAtlas__atlas_
call fcn.10077bd9
add esp, 0xc
mov eax, dword [ebp - 0x144]
xor esi, esi
mov dword [edi - 4], 0xffffffff
mov ecx, dword [eax + 0x34]
test ecx, ecx
jle 0x1004cbd9
or eax, 0xffffffff
mov edx, eax
cmp eax, 0xffffffff
jne 0x1004cbd4
test esi, esi
js 0x1004cb92
cmp esi, ecx
jl 0x1004cba9
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
add esp, 0xc
mov edx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x11c]
mov ecx, dword [edx + 0x3c]
mov eax, dword [eax + 0x74]
cmp eax, dword [ecx + esi*4]
jne 0x1004cbc7
mov dword [edi - 4], esi
mov eax, esi
jmp 0x1004cbca
mov eax, dword [edi - 4]
mov ecx, dword [edx + 0x34]
inc esi
mov edx, eax
cmp esi, ecx
jl 0x1004cb83
cmp edx, 0xffffffff
jne 0x1004cbfa
push 0x837
push 0x100b5ae0
push str.src_tmp.DstIndex____1
call fcn.10077bd9
add esp, 0xc
cmp dword [edi - 4], 0xffffffff
je 0x1004cea2
mov eax, dword [ebp - 0x11c]
mov edx, dword [eax]
mov esi, dword [eax + 0xc]
mov al, byte [edx]
cmp al, 0x31
jne 0x1004cc25
cmp byte [edx + 1], 0
jne 0x1004cd32
cmp byte [edx + 2], 0
jne 0x1004cd32
cmp byte [edx + 3], 0
jmp 0x1004cc94
cmp al, 0x74
jne 0x1004cc3f
cmp byte [edx + 1], 0x79
jne 0x1004cc80
cmp byte [edx + 2], 0x70
jne 0x1004cd32
cmp byte [edx + 3], 0x31
jmp 0x1004cc94
cmp al, 0x4f
jne 0x1004cc5c
cmp byte [edx + 1], 0x54
jne 0x1004cd32
cmp byte [edx + 2], 0x54
jne 0x1004cd32
cmp byte [edx + 3], al
jmp 0x1004cc94
test al, al
jne 0x1004cc78
cmp byte [edx + 1], 1
jne 0x1004cd32
cmp byte [edx + 2], al
jne 0x1004cd32
cmp byte [edx + 3], al
jmp 0x1004cc94
cmp al, 0x74
jne 0x1004cd32
cmp byte [edx + 1], 0x72
jne 0x1004cca3
cmp byte [edx + 2], 0x75
jne 0x1004cd32
cmp byte [edx + 3], 0x65
jne 0x1004cd32
neg esi
sbb esi, esi
jmp 0x1004cd2c
cmp byte [edx + 1], 0x74
jne 0x1004cd32
cmp byte [edx + 2], 0x63
jne 0x1004cd32
cmp byte [edx + 3], 0x66
jne 0x1004cd32
movzx eax, byte [edx + 4]
movzx ecx, byte [edx + 5]
shl eax, 8
add ecx, eax
movzx eax, byte [edx + 6]
shl ecx, 8
add ecx, eax
movzx eax, byte [edx + 7]
shl ecx, 8
add eax, ecx
cmp eax, 0x10000
je 0x1004cce6
cmp eax, 0x20000
jne 0x1004cd32
movzx ecx, byte [edx + 8]
movzx eax, byte [edx + 9]
shl ecx, 8
add ecx, eax
movzx eax, byte [edx + 0xa]
shl ecx, 8
add ecx, eax
movzx eax, byte [edx + 0xb]
shl ecx, 8
add ecx, eax
cmp esi, ecx
jge 0x1004cd32
movzx eax, byte [edx + esi*4 + 0xd]
lea ecx, [edx + esi*4]
movzx esi, byte [ecx + 0xc]
shl esi, 8
add esi, eax
movzx eax, byte [ecx + 0xe]
shl esi, 8
add esi, eax
movzx eax, byte [ecx + 0xf]
shl esi, 8
add esi, eax
test esi, esi
jns 0x1004cd4c
jmp 0x1004cd35
or esi, 0xffffffff
push 0x83d
push 0x100b5ae0
push str.font_offset___0___FontData_is_incorrect__or_FontNo_cannot_be_found._
call fcn.10077bd9
add esp, 0xc
push esi
mov esi, dword [ebp - 0x11c]
lea ecx, [edi - 0xa4]
mov edx, dword [esi]
call fcn.10042b40
add esp, 4
test eax, eax
je 0x1004cea2
mov eax, dword [edi - 4]
mov dword [ebp - 0x13c], eax
test eax, eax
js 0x1004cd80
cmp eax, dword [ebp - 0x120]
jl 0x1004cd9d
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x13c]
add esp, 0xc
lea ecx, [eax + eax*2]
mov edx, 0x100b694c
mov eax, dword [esi + 0x30]
test eax, eax
mov dword [ebp - 0x128], ecx
cmovne edx, eax
mov dword [edi - 8], edx
cmp word [edx], 0
je 0x1004cde1
nop dword [eax]
movzx eax, word [edx + 2]
test ax, ax
je 0x1004cddb
mov ecx, eax
cmp dword [edi], ecx
cmovge ecx, dword [edi]
add edx, 4
mov dword [edi], ecx
cmp word [edx], 0
jne 0x1004cdc0
mov ecx, dword [ebp - 0x128]
mov esi, dword [ebp - 0x154]
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0x14c]
inc dword [esi + ecx*8]
mov ecx, dword [edi]
cmp dword [esi + edx*8 + 4], ecx
cmovge ecx, dword [esi + edx*8 + 4]
add edi, 0xc4
add dword [ebp - 0x12c], 0x78
mov dword [esi + edx*8 + 4], ecx
mov esi, dword [ebp - 0x130]
inc esi
mov dword [ebp - 0x130], esi
cmp esi, dword [eax]
jl 0x1004cae0
xor ecx, ecx
mov dword [ebp - 0x160], ecx
mov dword [ebp - 0x130], ecx
cmp dword [ebp - 0x134], ecx
jle 0x1004d2c1
mov esi, dword [ebp - 0x150]
add esi, 0xa8
mov dword [ebp - 0x124], esi
mov edi, dword [esi - 8]
test edi, edi
js 0x1004ce62
cmp edi, dword [ebp - 0x120]
jl 0x1004ce79
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
add esp, 0xc
lea eax, [edi + edi*2]
mov edi, dword [esi - 4]
add edi, 0x20
mov dword [ebp - 0x158], eax
mov eax, dword [esi + 8]
sar edi, 5
cmp edi, eax
jle 0x1004cec3
test eax, eax
je 0x1004ceae
cdq
sub eax, edx
mov ecx, eax
sar ecx, 1
add ecx, dword [esi + 8]
jmp 0x1004ceb3
mov byte [ebp - 0x13d], 0
jmp 0x1004e27f
mov ecx, 8
cmp ecx, edi
mov eax, edi
cmovg eax, ecx
lea ecx, [esi + 4]
push eax
call fcn.10040830
lea eax, [edi*4]
mov dword [esi + 4], edi
push eax
push 0
push dword [esi + 0xc]
call fcn.10073770
mov edx, dword [ebp - 0x158]
add esp, 0xc
mov eax, dword [ebp - 0x154]
lea ecx, [edx*8 + 0xc]
add ecx, eax
mov dword [ebp - 0x148], ecx
cmp dword [ecx], 0
jne 0x1004cf51
mov edi, dword [eax + edx*8 + 4]
mov eax, dword [ecx + 4]
add edi, 0x20
sar edi, 5
cmp edi, eax
jle 0x1004cf34
test eax, eax
je 0x1004cf1c
cdq
sub eax, edx
mov edx, eax
sar edx, 1
add edx, dword [ecx + 4]
jmp 0x1004cf21
mov edx, 8
cmp edx, edi
mov eax, edi
cmovg eax, edx
push eax
call fcn.10040830
mov ecx, dword [ebp - 0x148]
lea eax, [edi*4]
mov dword [ecx], edi
push eax
push 0
push dword [ecx + 8]
call fcn.10073770
mov ecx, dword [ebp - 0x148]
add esp, 0xc
mov eax, dword [esi - 0xc]
mov dword [ebp - 0x11c], eax
movzx edx, word [eax]
test dx, dx
je 0x1004d0be
nop word [eax + eax]
movzx eax, word [eax + 2]
test ax, ax
je 0x1004d0b8
movzx edi, dx
cmp edi, eax
ja 0x1004d09d
mov eax, dword [ecx]
shl eax, 5
cmp edi, eax
jl 0x1004cfa8
push 0x1db
push 0x100b1780
push str.n____Storage.Size____5_
call fcn.10077bd9
add esp, 0xc
mov ecx, edi
mov edx, 1
and ecx, 0x1f
mov esi, edi
shl edx, cl
mov ecx, dword [ebp - 0x148]
sar esi, 5
mov dword [ebp - 0x128], edx
mov eax, dword [ecx + 8]
test dword [eax + esi*4], edx
jne 0x1004d08a
mov ecx, dword [ebp - 0x124]
mov edx, edi
lea ecx, [ecx - 0xa8]
call fcn.10043090
test eax, eax
je 0x1004d084
mov eax, dword [ebp - 0x124]
mov edx, dword [ebp - 0x158]
mov ecx, dword [ebp - 0x154]
inc dword [eax]
inc dword [ecx + edx*8 + 8]
mov eax, dword [eax + 4]
shl eax, 5
cmp edi, eax
jl 0x1004d02b
push 0x1dc
push 0x100b1780
push str.n____Storage.Size____5_
call fcn.10077bd9
mov edx, dword [ebp - 0x158]
add esp, 0xc
mov eax, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x128]
mov eax, dword [eax + 0xc]
or dword [eax + esi*4], ecx
mov eax, dword [ebp - 0x154]
mov eax, dword [eax + edx*8 + 0xc]
shl eax, 5
cmp edi, eax
jl 0x1004d071
push 0x1dc
push 0x100b1780
push str.n____Storage.Size____5_
call fcn.10077bd9
mov ecx, dword [ebp - 0x128]
add esp, 0xc
mov edx, dword [ebp - 0x158]
mov eax, dword [ebp - 0x154]
mov eax, dword [eax + edx*8 + 0x14]
or dword [eax + esi*4], ecx
inc dword [ebp - 0x160]
mov ecx, dword [ebp - 0x148]
mov eax, dword [ebp - 0x11c]
inc edi
movzx eax, word [eax + 2]
cmp edi, eax
jbe 0x1004cf88
mov eax, dword [ebp - 0x11c]
add eax, 4
mov dword [ebp - 0x11c], eax
movzx edx, word [eax]
test dx, dx
jne 0x1004cf70
mov esi, dword [ebp - 0x124]
mov eax, dword [ebp - 0x130]
add esi, 0xc4
inc eax
mov dword [ebp - 0x124], esi
mov dword [ebp - 0x130], eax
cmp eax, dword [ebp - 0x134]
jl 0x1004ce53
mov esi, dword [ebp - 0x150]
add esi, 0xb8
mov dword [ebp - 0x11c], 0
nop dword [eax]
mov edi, dword [esi - 0x10]
cmp edi, dword [esi + 4]
jle 0x1004d16f
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004d117
inc dword [eax + 0x374]
lea eax, [edi*4]
push eax
call fcn.1007eac4
mov edx, dword [esi + 8]
add esp, 4
mov dword [ebp - 0x13c], eax
test edx, edx
je 0x1004d169
mov ecx, dword [esi]
shl ecx, 2
push ecx
push edx
push eax
call fcn.10073140
mov ecx, dword [esi + 8]
add esp, 0xc
test ecx, ecx
je 0x1004d15a
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004d15a
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
mov eax, dword [ebp - 0x13c]
add esp, 4
mov dword [esi + 8], eax
mov dword [esi + 4], edi
mov ecx, dword [esi - 4]
mov eax, dword [esi - 0xc]
mov dword [ebp - 0x138], ecx
lea eax, [ecx + eax*4]
mov dword [ebp - 0x12c], eax
cmp ecx, eax
jae 0x1004d248
xor edi, edi
mov dword [ebp - 0x15c], edi
mov edx, dword [ecx]
mov dword [ebp - 0x13c], edx
test edx, edx
je 0x1004d22e
xor eax, eax
mov ecx, 1
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x130], ecx
test edx, ecx
je 0x1004d20e
mov edx, dword [esi]
and edi, 0xffffffe0
add edi, eax
mov eax, dword [esi + 4]
cmp edx, eax
jne 0x1004d1f4
lea ecx, [edx + 1]
test eax, eax
je 0x1004d1da
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 4]
jmp 0x1004d1df
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10040830
mov edx, dword [esi]
mov ecx, dword [ebp - 0x130]
mov eax, dword [esi + 8]
mov dword [eax + edx*4], edi
inc dword [esi]
mov eax, dword [ebp - 0x128]
mov edx, dword [ebp - 0x13c]
mov edi, dword [ebp - 0x15c]
inc eax
rol ecx, 1
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x130], ecx
cmp eax, 0x20
jb 0x1004d1b7
mov ecx, dword [ebp - 0x138]
mov eax, dword [ebp - 0x12c]
add ecx, 4
add edi, 0x20
mov dword [ebp - 0x138], ecx
mov dword [ebp - 0x15c], edi
cmp ecx, eax
jb 0x1004d194
mov ecx, dword [esi - 4]
test ecx, ecx
je 0x1004d27c
mov eax, dword [0x100c64cc]
mov dword [esi - 8], 0
mov dword [esi - 0xc], 0
test eax, eax
je 0x1004d26c
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
mov dword [esi - 4], 0
mov eax, dword [esi]
cmp eax, dword [esi - 0x10]
je 0x1004d29a
push 0x86c
push 0x100b5ae0
push str.src_tmp.GlyphsList.Size__src_tmp.GlyphsCount
call fcn.10077bd9
add esp, 0xc
mov eax, dword [ebp - 0x11c]
add esi, 0xc4
inc eax
mov dword [ebp - 0x11c], eax
cmp eax, dword [ebp - 0x134]
jl 0x1004d100
mov edi, dword [ebp - 0x160]
jmp 0x1004d2c9
xor edi, edi
mov dword [ebp - 0x160], edi
xor eax, eax
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x120], eax
jle 0x1004d334
mov esi, dword [ebp - 0x154]
mov edi, dword [ebp - 0x120]
add esi, 0x14
mov ecx, dword [esi]
test ecx, ecx
je 0x1004d320
mov eax, dword [0x100c64cc]
mov dword [esi - 4], 0
mov dword [esi - 8], 0
test eax, eax
je 0x1004d30b
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
mov eax, dword [ebp - 0x128]
add esp, 4
mov dword [esi], 0
inc eax
add esi, 0x18
mov dword [ebp - 0x128], eax
cmp eax, edi
jl 0x1004d2e8
mov edi, dword [ebp - 0x160]
mov ecx, dword [ebp - 0x154]
test ecx, ecx
je 0x1004d378
mov eax, dword [0x100c64cc]
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x19c], 0
test eax, eax
je 0x1004d361
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x154], ecx
mov dword [ebp - 0x194], ecx
xor eax, eax
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1cc], eax
mov byte [ebp - 4], 7
mov eax, 8
test edi, edi
jle 0x1004d3ee
cmp edi, eax
mov esi, edi
cmovl esi, eax
test esi, esi
jle 0x1004d3ee
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004d3c9
inc dword [eax + 0x374]
mov eax, esi
shl eax, 4
push eax
call fcn.1007eac4
mov dword [ebp - 0x148], eax
add esp, 4
mov dword [ebp - 0x1a0], eax
mov eax, 8
mov dword [ebp - 0x1a4], esi
mov dword [ebp - 0x1a8], edi
test edi, edi
jle 0x1004d43a
cmp edi, 8
mov esi, edi
cmovl esi, eax
test esi, esi
jle 0x1004d43a
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004d413
inc dword [eax + 0x374]
lea eax, [esi*8]
sub eax, esi
shl eax, 2
push eax
call fcn.1007eac4
add esp, 4
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x1cc], eax
mov dword [ebp - 0x1d0], esi
mov ecx, edi
mov dword [ebp - 0x1d4], edi
shl ecx, 4
push ecx
push 0
push dword [ebp - 0x148]
call fcn.10073770
add esp, 0xc
lea eax, [edi*8]
sub eax, edi
shl eax, 2
push eax
push 0
push dword [ebp - 0x158]
call fcn.10073770
xor eax, eax
xor edx, edx
add esp, 0xc
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x120], edx
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x134], eax
jle 0x1004d837
mov esi, dword [ebp - 0x150]
add esi, 0x98
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x12c], esi
xor ecx, ecx
nop word [eax + eax]
cmp dword [esi + 0x10], 0
mov eax, edi
mov dword [ebp - 0x13c], eax
je 0x1004d803
test edx, edx
js 0x1004d4e2
mov ecx, eax
mov dword [ebp - 0x160], ecx
cmp edx, eax
jl 0x1004d50b
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov ecx, dword [ebp - 0x13c]
add esp, 0xc
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x160], ecx
mov edi, dword [ebp - 0x124]
mov eax, edx
shl eax, 4
add eax, dword [ebp - 0x148]
mov dword [esi - 4], eax
test edi, edi
js 0x1004d527
cmp edi, ecx
jl 0x1004d53e
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
add esp, 0xc
mov ecx, dword [ebp - 0x158]
lea eax, [edi*8]
sub eax, edi
lea edx, [ecx + eax*4]
mov eax, dword [esi + 0x10]
add dword [ebp - 0x120], eax
add edi, eax
mov eax, dword [ebp - 0x14c]
mov ecx, edx
mov dword [ebp - 0x124], edi
mov edi, esi
mov dword [ebp - 0x138], eax
mov dword [edi], ecx
mov ecx, dword [ebp - 0x130]
mov edi, dword [ebp - 0x124]
cmp ecx, dword [eax]
jl 0x1004d5b4
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x120]
add esp, 0xc
mov edx, dword [esi]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x124], edi
mov ecx, dword [eax + 8]
add ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x15c], ecx
mov eax, dword [ecx + 0x10]
mov dword [esi - 0x1c], eax
mov eax, dword [esi + 0x28]
mov dword [esi - 0x14], eax
mov eax, dword [esi + 0x20]
mov dword [esi - 0x18], 0
mov dword [esi - 0x10], eax
mov dword [esi - 0xc], edx
mov al, byte [ecx + 0x14]
mov byte [esi - 8], al
mov al, byte [ecx + 0x18]
mov byte [esi - 7], al
movss xmm1, dword [ecx + 0x10]
comiss xmm1, dword [0x100b8abc]
jbe 0x1004d651
mov edi, dword [esi - 0x94]
mov eax, dword [esi - 0x7c]
movzx edx, byte [eax + edi + 7]
movzx ecx, byte [eax + edi + 6]
mov eax, 0x100
cwde
movsx ecx, cx
imul ecx, eax
add dx, cx
mov ecx, dword [ebp - 0x12c]
movsx esi, dx
mov eax, dword [ecx - 0x7c]
movzx edx, byte [eax + edi + 5]
movzx ecx, byte [eax + edi + 4]
mov eax, 0x100
cwde
movsx ecx, cx
imul ecx, eax
add dx, cx
movsx eax, dx
sub eax, esi
mov esi, dword [ebp - 0x12c]
movd xmm0, eax
jmp 0x1004d677
mov ecx, dword [esi - 0x84]
mov eax, dword [esi - 0x94]
xorps xmm1, xmmword [0x100b96e0]
movzx edx, byte [ecx + eax + 0x13]
movzx eax, byte [ecx + eax + 0x12]
shl eax, 8
add edx, eax
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mov eax, dword [ebp - 0x144]
xor edi, edi
mov eax, dword [eax + 0x10]
divss xmm1, xmm0
mov dword [ebp - 0x1b0], eax
mov eax, dword [esi + 0x20]
movss dword [ebp - 0x13c], xmm1
test eax, eax
jle 0x1004d7f1
mov dword [ebp - 0x138], edi
test edi, edi
js 0x1004d6b0
cmp edi, eax
jl 0x1004d6c7
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
add esp, 0xc
mov edx, dword [esi + 0x28]
lea ecx, [esi - 0x98]
mov edx, dword [edx + edi*4]
call fcn.10043090
mov dword [ebp - 0x1ac], eax
test eax, eax
jne 0x1004d6f9
push 0x89b
push 0x100b5ae0
push str.glyph_index_in_font___0
call fcn.10077bd9
add esp, 0xc
mov edx, dword [ebp - 0x1ac]
lea eax, [ebp - 0x164]
push eax
lea eax, [ebp - 0x1b8]
push eax
lea eax, [ebp - 0x1bc]
push eax
lea eax, [ebp - 0x1b4]
push eax
mov eax, dword [ebp - 0x15c]
lea ecx, [esi - 0x98]
sub esp, 8
movd xmm3, dword [eax + 0x18]
movd xmm2, dword [eax + 0x14]
cvtdq2ps xmm3, xmm3
mov dword [esp + 4], 0
mov dword [esp], 0
cvtdq2ps xmm2, xmm2
mulss xmm3, dword [ebp - 0x13c]
mulss xmm2, dword [ebp - 0x13c]
call fcn.10045a30
mov eax, dword [ebp - 0x1b0]
inc edi
movzx edx, ax
add esp, 0x18
mov eax, dword [ebp - 0x15c]
movzx ecx, word [eax + 0x14]
sub cx, word [ebp - 0x1b4]
mov eax, dword [esi - 4]
dec cx
add cx, word [ebp - 0x1b8]
mov esi, dword [ebp - 0x138]
add cx, dx
dec dx
mov word [esi + eax + 4], cx
mov eax, dword [ebp - 0x15c]
mov esi, dword [ebp - 0x12c]
movzx ecx, word [eax + 0x18]
sub cx, word [ebp - 0x1bc]
add cx, word [ebp - 0x164]
mov eax, dword [esi - 4]
add cx, dx
mov edx, dword [ebp - 0x138]
mov word [edx + eax + 6], cx
mov eax, dword [esi - 4]
movzx ecx, word [edx + eax + 6]
movzx eax, word [edx + eax + 4]
add edx, 0x10
imul ecx, eax
mov eax, dword [esi + 0x20]
mov dword [ebp - 0x138], edx
add dword [ebp - 0x128], ecx
cmp edi, eax
jl 0x1004d6a8
mov ecx, dword [ebp - 0x11c]
mov edx, dword [ebp - 0x120]
mov edi, dword [ebp - 0x160]
mov eax, dword [ebp - 0x130]
add esi, 0xc4
inc eax
mov dword [ebp - 0x12c], esi
add ecx, 0x78
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x11c], ecx
cmp eax, dword [ebp - 0x134]
jl 0x1004d4c0
mov eax, dword [ebp - 0x128]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
call fcn.10029ab0
mov esi, dword [ebp - 0x144]
cvttss2si ecx, xmm0
mov eax, dword [esi + 0xc]
mov dword [esi + 0x20], 0
inc ecx
test eax, eax
jg 0x1004d897
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
comiss xmm0, dword [0x100b8c8c]
jb 0x1004d873
mov eax, 0x1000
jmp 0x1004d897
comiss xmm0, dword [0x100b8c88]
jb 0x1004d883
mov eax, 0x800
jmp 0x1004d897
comiss xmm0, dword [0x100b8c7c]
mov eax, 0x200
mov ecx, 0x400
cmovae eax, ecx
push 0x2c
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x190]
push 0
push eax
call fcn.10073770
mov eax, dword [esi + 0x10]
add esp, 0xc
mov esi, dword [esi + 0x1c]
mov dword [ebp - 0x13c], eax
mov eax, dword [0x100c64cc]
mov dword [ebp - 0x164], esi
test eax, eax
je 0x1004d8ce
inc dword [eax + 0x374]
push 0x30
call fcn.1007eac4
sub esi, dword [ebp - 0x13c]
mov edi, eax
mov eax, dword [0x100c64cc]
add esp, 4
mov dword [ebp - 0x124], edi
test eax, eax
je 0x1004d8f5
inc dword [eax + 0x374]
lea eax, [esi*8]
push eax
call fcn.1007eac4
add esp, 4
test edi, edi
je 0x1004d97f
test eax, eax
je 0x1004d96d
mov ecx, dword [ebp - 0x13c]
mov edx, dword [ebp - 0x164]
push esi
push eax
mov dword [ebp - 0x168], eax
mov eax, 0x8000
sub eax, ecx
mov dword [ebp - 0x188], edx
mov dword [ebp - 0x17c], ecx
mov ecx, edi
mov dword [ebp - 0x180], edx
mov edx, esi
push eax
mov dword [ebp - 0x18c], edi
mov dword [ebp - 0x174], 1
mov dword [ebp - 0x170], 1
mov dword [ebp - 0x178], 0
call fcn.10041980
add esp, 0xc
jmp 0x1004d9a8
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004d97c
dec dword [eax + 0x374]
push edi
jmp 0x1004d994
test eax, eax
je 0x1004d99c
mov ecx, dword [0x100c64cc]
test ecx, ecx
je 0x1004d993
dec dword [ecx + 0x374]
push eax
call fcn.1007eaa9
add esp, 4
mov edi, dword [ebp - 0x18c]
mov dword [ebp - 0x124], edi
mov esi, dword [ebp - 0x144]
mov edx, edi
mov ecx, esi
call fcn.1004e2f0
mov ecx, dword [ebp - 0x134]
xor eax, eax
mov dword [ebp - 0x11c], eax
test ecx, ecx
jle 0x1004da83
mov esi, dword [ebp - 0x150]
add esi, 0xa8
nop dword [eax]
test eax, eax
js 0x1004d9e8
cmp eax, ecx
jl 0x1004da05
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x11c]
add esp, 0xc
mov ecx, dword [esi]
test ecx, ecx
je 0x1004da62
mov edx, dword [esi - 0x14]
push ecx
mov ecx, edi
call fcn.10041f60
xor edi, edi
add esp, 4
cmp dword [esi], edi
jle 0x1004da56
xor edx, edx
mov eax, dword [esi - 0x14]
cmp dword [eax + edx + 0xc], 0
je 0x1004da4e
movzx ecx, word [eax + edx + 0xa]
movzx eax, word [eax + edx + 6]
add ecx, eax
mov eax, dword [ebp - 0x144]
mov eax, dword [eax + 0x20]
cmp eax, ecx
cmovge ecx, eax
mov eax, dword [ebp - 0x144]
mov dword [eax + 0x20], ecx
inc edi
add edx, 0x10
cmp edi, dword [esi]
jl 0x1004da21
mov edi, dword [ebp - 0x124]
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x134]
inc eax
add esi, 0xc4
mov dword [ebp - 0x11c], eax
cmp eax, ecx
jl 0x1004d9e0
mov esi, dword [ebp - 0x144]
test byte [esi + 4], 1
mov eax, dword [esi + 0x20]
jne 0x1004dab1
lea ecx, [eax - 1]
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 eax, ecx
movss xmm1, dword [0x100b8b74]
lea ecx, [eax + 1]
mov eax, dword [esi + 0x1c]
movaps xmm2, xmm1
mov dword [esi + 0x20], ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm2, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
imul ecx, eax
divss xmm1, xmm0
mov eax, dword [0x100c64cc]
movss dword [esi + 0x24], xmm2
movss dword [esi + 0x28], xmm1
test eax, eax
je 0x1004daf7
inc dword [eax + 0x374]
push ecx
call fcn.1007eac4
mov ecx, dword [esi + 0x1c]
add esp, 4
imul ecx, dword [esi + 0x20]
mov dword [esi + 0x14], eax
push ecx
push 0
push eax
call fcn.10073770
mov eax, dword [esi + 0x14]
add esp, 0xc
mov edx, dword [ebp - 0x134]
mov dword [ebp - 0x16c], eax
mov eax, dword [esi + 0x20]
mov dword [ebp - 0x184], eax
xor eax, eax
mov dword [ebp - 0x11c], eax
test edx, edx
jle 0x1004dd64
mov edi, dword [ebp - 0x150]
xor ecx, ecx
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x15c], edi
mov esi, dword [ebp - 0x14c]
test eax, eax
js 0x1004db60
cmp eax, dword [esi]
jl 0x1004db89
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x11c]
add esp, 0xc
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x134]
mov esi, dword [esi + 8]
add esi, ecx
test eax, eax
js 0x1004db96
cmp eax, edx
jl 0x1004dbbf
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x11c]
add esp, 0xc
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x134]
cmp dword [edi + 0xa8], 0
je 0x1004dd3a
push dword [edi + 0x94]
lea eax, [edi + 0x7c]
mov edx, edi
push ecx
push eax
lea ecx, [ebp - 0x190]
call fcn.10048080
movss xmm1, dword [esi + 0x44]
add esp, 0xc
ucomiss xmm1, dword [0x100b8b74]
movss dword [ebp - 0x164], xmm1
lahf
test ah, 0x44
jnp 0x1004dd1e
xor esi, esi
nop word [eax + eax]
movd xmm0, esi
mov eax, esi
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100b9680]
cvtpd2ps xmm0, xmm0
mulss xmm0, xmm1
call fcn.10095120
movss xmm1, dword [ebp - 0x164]
mov edx, 0xff
cmp eax, edx
movzx ecx, al
cmovbe edx, ecx
mov byte [ebp + esi - 0x118], dl
inc esi
cmp esi, 0x100
jb 0x1004dc10
mov ecx, dword [edi + 0x94]
xor eax, eax
mov dword [ebp - 0x130], eax
cmp dword [edi + 0xa8], eax
jle 0x1004dd1e
add ecx, 6
mov dword [ebp - 0x138], ecx
nop dword [eax + eax]
cmp dword [ecx + 6], 0
je 0x1004dd02
mov eax, dword [ebp - 0x144]
movzx edx, word [ecx + 4]
movzx edi, word [ecx]
movzx esi, word [ecx - 2]
mov eax, dword [eax + 0x1c]
mov dword [ebp - 0x128], eax
movzx eax, word [ecx + 2]
imul edx, dword [ebp - 0x128]
mov ecx, dword [ebp - 0x144]
add edx, dword [ecx + 0x14]
mov ecx, dword [ebp - 0x138]
add edx, eax
test edi, edi
je 0x1004dcf6
mov eax, dword [ebp - 0x128]
xor ecx, ecx
test esi, esi
je 0x1004dce9
nop dword [eax]
movzx eax, byte [ecx + edx]
mov al, byte [ebp + eax - 0x118]
mov byte [ecx + edx], al
inc ecx
cmp ecx, esi
jl 0x1004dcd0
mov eax, dword [ebp - 0x128]
dec edi
add edx, eax
test edi, edi
jg 0x1004dcc6
mov ecx, dword [ebp - 0x138]
mov edi, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x130]
inc eax
add ecx, 0x10
mov dword [ebp - 0x130], eax
mov dword [ebp - 0x138], ecx
cmp eax, dword [edi + 0xa8]
jl 0x1004dc80
mov eax, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x12c]
mov edx, dword [ebp - 0x134]
mov dword [edi + 0x94], 0
inc eax
add ecx, 0x78
add edi, 0xc4
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x15c], edi
cmp eax, edx
jl 0x1004db52
mov edi, dword [ebp - 0x18c]
cmp dword [ebp - 0x168], 0
je 0x1004dd7c
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004dd7c
dec dword [eax + 0x374]
push dword [ebp - 0x168]
call fcn.1007eaa9
add esp, 4
test edi, edi
je 0x1004dd9d
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004dd9d
dec dword [eax + 0x374]
push edi
call fcn.1007eaa9
mov ecx, dword [ebp - 0x148]
add esp, 4
test ecx, ecx
je 0x1004ddea
mov eax, dword [0x100c64cc]
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1a8], 0
test eax, eax
je 0x1004ddd3
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x148], ecx
mov dword [ebp - 0x1a0], ecx
mov edx, dword [ebp - 0x134]
xor eax, eax
mov dword [ebp - 0x12c], eax
test edx, edx
jle 0x1004e1a2
mov edi, dword [ebp - 0x150]
xor ecx, ecx
add edi, 4
mov dword [ebp - 0x124], ecx
mov dword [ebp - 0x130], edi
test eax, eax
js 0x1004de1f
cmp eax, edx
jl 0x1004de48
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
mov eax, dword [ebp - 0x12c]
add esp, 0xc
mov ecx, dword [ebp - 0x124]
mov edx, dword [ebp - 0x134]
cmp dword [edi + 0xa4], 0
je 0x1004e17e
mov esi, dword [ebp - 0x14c]
test eax, eax
js 0x1004de63
cmp eax, dword [esi]
jl 0x1004de7a
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
add esp, 0xc
mov eax, dword [esi + 8]
xorps xmm3, xmm3
add eax, dword [ebp - 0x124]
mov esi, dword [ebp - 0x130]
mov edi, dword [edi + 0x18]
mov dword [ebp - 0x11c], eax
mov eax, dword [eax + 0x74]
mov esi, dword [esi]
mov dword [ebp - 0x128], eax
mov eax, 0x100
cwde
movzx ecx, byte [edi + esi + 6]
movzx edx, byte [edi + esi + 7]
movsx ecx, cx
imul ecx, eax
mov eax, 0x100
cwde
add dx, cx
movzx ecx, byte [edi + esi + 4]
movsx ecx, cx
imul ecx, eax
movzx eax, byte [edi + esi + 5]
movsx edx, dx
mov edi, dword [ebp - 0x128]
add cx, ax
movsx ecx, cx
mov eax, ecx
sub eax, edx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mov ecx, dword [ebp - 0x11c]
movd xmm0, eax
mov eax, dword [ebp - 0x11c]
cvtdq2ps xmm0, xmm0
movss xmm2, dword [eax + 0x10]
xor eax, eax
divss xmm2, xmm0
comiss xmm1, xmm3
mulss xmm1, xmm2
seta al
lea eax, [eax*2 - 1]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
movd xmm1, edx
cvtdq2ps xmm1, xmm1
cvttss2si eax, xmm0
movd xmm0, eax
xor eax, eax
comiss xmm1, xmm3
cvtdq2ps xmm0, xmm0
seta al
cmp byte [ecx + 0x3c], 0
mulss xmm1, xmm2
lea eax, [eax*2 - 1]
movss dword [ebp - 0x164], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
cvttss2si esi, xmm0
jne 0x1004dfa1
mov ecx, edi
call fcn.1004ee70
mov ecx, dword [ebp - 0x11c]
movss xmm0, dword [ebp - 0x164]
movd xmm1, esi
cvtdq2ps xmm1, xmm1
mov eax, dword [ecx + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [ebp - 0x144]
mov dword [edi + 0x30], eax
xor eax, eax
mov dword [edi + 0x34], ecx
movss dword [edi + 0x44], xmm0
movss dword [edi + 0x48], xmm1
jmp 0x1004dfaa
movzx eax, word [edi + 0x38]
movss xmm0, dword [edi + 0x44]
addss xmm0, dword [0x100b8b30]
inc eax
xor esi, esi
mov word [edi + 0x38], ax
mov edi, dword [ebp - 0x130]
movss xmm7, dword [ecx + 0x28]
cvttss2si eax, xmm0
movss dword [ebp - 0x138], xmm7
movd xmm6, eax
cvtdq2ps xmm6, xmm6
addss xmm6, dword [ecx + 0x2c]
movss dword [ebp - 0x13c], xmm6
cmp dword [edi + 0xa4], esi
jle 0x1004e16c
mov dword [ebp - 0x120], esi
test esi, esi
js 0x1004e002
cmp esi, dword [edi + 0xb4]
jl 0x1004e029
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
movss xmm6, dword [ebp - 0x13c]
add esp, 0xc
movss xmm7, dword [ebp - 0x138]
mov eax, dword [edi + 0xbc]
sub esp, 0x20
mov ecx, dword [edi + 0x94]
movss xmm1, dword [0x100b8b74]
movss xmm3, dword [0x100b8b74]
mov edx, dword [eax + esi*4]
mov eax, dword [ebp - 0x144]
movd xmm0, dword [eax + 0x1c]
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
movd xmm0, dword [eax + 0x20]
mov eax, dword [ebp - 0x120]
cvtdq2ps xmm0, xmm0
movzx eax, word [eax + ecx]
divss xmm3, xmm0
movd xmm5, eax
mov eax, dword [ebp - 0x120]
cvtdq2ps xmm5, xmm5
movzx eax, word [eax + ecx + 2]
mulss xmm5, xmm1
movd xmm4, eax
mov eax, dword [ebp - 0x120]
cvtdq2ps xmm4, xmm4
movzx eax, word [eax + ecx + 4]
mulss xmm4, xmm3
movd xmm2, eax
mov eax, dword [ebp - 0x120]
cvtdq2ps xmm2, xmm2
movzx eax, word [eax + ecx + 6]
mulss xmm2, xmm1
movd xmm1, eax
mov eax, dword [ebp - 0x120]
cvtdq2ps xmm1, xmm1
movss xmm0, dword [eax + ecx + 0x10]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [eax + ecx + 0x18]
mulss xmm1, xmm3
movss xmm3, dword [eax + ecx + 8]
movss dword [esp + 0x18], xmm1
xorps xmm1, xmm1
addss xmm0, xmm1
movss dword [esp + 0x14], xmm2
movss dword [esp + 0x10], xmm4
addss xmm3, xmm1
movss dword [esp + 0xc], xmm5
addss xmm0, xmm6
addss xmm3, xmm7
movss dword [esp + 8], xmm0
movss xmm0, dword [eax + ecx + 0x14]
addss xmm0, xmm1
addss xmm0, xmm7
movss dword [esp + 4], xmm0
movss xmm0, dword [eax + ecx + 0xc]
mov ecx, dword [ebp - 0x128]
addss xmm0, xmm1
addss xmm0, xmm6
movss dword [esp], xmm0
push edx
push dword [ebp - 0x11c]
call fcn.1004f4b0
add dword [ebp - 0x120], 0x1c
inc esi
movss xmm6, dword [ebp - 0x13c]
movss xmm7, dword [ebp - 0x138]
cmp esi, dword [edi + 0xa4]
jl 0x1004dff6
mov edx, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x124]
mov eax, dword [ebp - 0x12c]
inc eax
add edi, 0xc4
add ecx, 0x78
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x130], edi
mov dword [ebp - 0x124], ecx
cmp eax, edx
jl 0x1004de17
xor esi, esi
test edx, edx
jle 0x1004e229
mov edi, dword [ebp - 0x150]
add edi, 0xb4
test esi, esi
js 0x1004e1c0
cmp esi, edx
jl 0x1004e1d7
push 0x584
push 0x100b4e60
push str.i___0__i___Size
call fcn.10077bd9
add esp, 0xc
mov ecx, dword [edi + 0xc]
test ecx, ecx
je 0x1004e1f6
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004e1ed
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
mov ecx, dword [edi]
test ecx, ecx
je 0x1004e214
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004e20b
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
mov byte [ebp - 4], 7
inc esi
mov edx, dword [ebp - 0x134]
add edi, 0xc4
cmp esi, edx
jl 0x1004e1b8
mov ecx, dword [ebp - 0x144]
call fcn.1004e8d0
mov byte [ebp - 0x13d], 1
mov ecx, dword [ebp - 0x158]
test ecx, ecx
je 0x1004e25d
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004e254
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
mov ecx, dword [ebp - 0x148]
test ecx, ecx
je 0x1004e27f
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004e276
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
mov ecx, dword [ebp - 0x154]
test ecx, ecx
je 0x1004e2a1
mov eax, dword [0x100c64cc]
test eax, eax
je 0x1004e298
dec dword [eax + 0x374]
push ecx
call fcn.1007eaa9
add esp, 4
mov eax, dword [ebp - 0x150]
test eax, eax
je 0x1004e2c4
mov ecx, dword [0x100c64cc]
test ecx, ecx
je 0x1004e2bb
dec dword [ecx + 0x374]
push eax
call fcn.1007eaa9
add esp, 4
mov al, byte [ebp - 0x13d]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100715c3
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret