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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c4
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x100ed340
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
mov ebx, dword [0x10357698]
mov eax, dword [ebx + 0x1a18]
mov byte [eax + 0x7c], 1
mov edx, dword [ebx + 0x1a18]
cmp byte [edx + 0x7f], 0
je 0x100e2593
xor eax, eax
mov ecx, dword [ebp - 0x18]
mov dword fs:[0], ecx
add esp, 0x1c4
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp + 0x1c]
mov esi, dword [ebp + 8]
test eax, 0x8000
sete cl
mov dword [ebp - 0x80], ecx
and eax, 0x100000
mov dword [ebp - 0x30], eax
mov dword [ebp - 0xc4], edx
je 0x100e25bf
call fcn.100bb920
mov edx, dword [ebp - 0xc4]
mov edi, dword [ebp + 0x18]
mov ecx, edx
push 0
push esi
call fcn.100a9370
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x168]
push 0xbf800000
push 1
push 0
push esi
push eax
call fcn.100a82b0
add esp, 0x14
cmp dword [ebp - 0x30], 0
je 0x100e2600
movss xmm0, dword [ebx + 0x18e0]
mulss xmm0, dword [0x101566cc]
jmp 0x100e2608
movss xmm0, dword [ebp - 0x164]
movss xmm1, dword [ebx + 0x155c]
addss xmm1, xmm1
addss xmm1, xmm0
movss dword [ebp - 0x24], xmm1
call fcn.100bb790
movss xmm0, dword [edi]
movss xmm1, dword [edi + 4]
sub esp, 0x14
movss xmm2, dword [ebp - 0x24]
movss dword [esp + 0x10], xmm2
fstp dword [esp + 0xc]
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm0
lea eax, [ebp - 0x1d0]
mov dword [esp], eax
call fcn.100bb810
add esp, 0x14
movsd xmm0, qword [ebp - 0x1d0]
movups xmmword [ebp - 0x1b8], xmm0
movss xmm1, dword [ebp - 0x168]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jbe 0x100e2684
addss xmm1, dword [ebx + 0x1570]
movaps xmm0, xmm1
mov edi, dword [ebp - 0xc4]
mov eax, dword [edi + 0xc8]
mov ecx, dword [edi + 0xcc]
movsd xmm1, qword [edi + 0xc8]
mov dword [ebp - 0x11c], ecx
movd xmm2, ecx
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x120], eax
movd xmm3, eax
mov dword [ebp - 0x198], eax
lea eax, [ebx + 0x1558]
mov dword [ebp - 0x108], eax
movups xmm4, xmmword [ebp - 0x1b8]
movups xmmword [ebp - 0x60], xmm4
addss xmm0, xmm4
addps xmm1, xmm4
movlps qword [ebp - 0x118], xmm1
shufps xmm4, xmm4, 0x55
movups xmmword [ebp - 0x1c8], xmm4
addss xmm2, xmm4
addss xmm3, xmm0
movss dword [ebp - 0x190], xmm3
movss dword [ebp - 0x18c], xmm2
cmp dword [ebp - 0x30], 0
je 0x100e281b
lea eax, [ebp - 0x120]
lea edi, [ebp - 0x198]
push eax
mov esi, dword [ebp - 0x38]
push esi
push edi
call fcn.100b5a00
add esp, 0xc
test al, al
je 0x100e28f7
lea eax, [ebx + 0x164c]
push eax
push 3
call fcn.100a74f0
add esp, 8
movss xmm0, dword [ebx + 0x1560]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 6
call fcn.100a7680
add esp, 8
movss xmm0, dword [ebx + 0x1564]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 7
call fcn.100a7680
add esp, 8
push dword [ebp - 0x108]
push 1
call fcn.100a77c0
add esp, 8
movsd xmm0, qword [ebp - 0x120]
movsd xmm1, qword [ebp - 0x118]
subps xmm1, xmm0
movlps qword [ebp - 0xb4], xmm1
lea eax, [ebp - 0xb4]
push 0x10004
push 1
push eax
push esi
push dword [ebp + 8]
call fcn.100b5200
add esp, 0x14
mov edi, ebx
mov ebx, eax
push 3
call fcn.100a7900
add esp, 4
push 1
call fcn.100a7620
add esp, 4
test bl, bl
je 0x100e2915
mov ecx, dword [edi + 0x1a18]
mov eax, dword [ecx + 0x138]
or dword [ecx + 0x140], eax
mov dword [ebp - 0x4c], ecx
movss xmm0, dword [ecx + 0x70]
movups xmm1, xmmword [ebp - 0x60]
subss xmm1, xmm0
movups xmmword [ebp - 0x60], xmm1
movups xmmword [ebp - 0x150], xmm1
mov ebx, edi
mov esi, dword [ebp - 0x38]
jmp 0x100e286c
movss xmm0, dword [ebx + 0x155c]
sub esp, 8
movss dword [esp + 4], xmm0
lea eax, [ebp - 0x198]
mov dword [esp], eax
call fcn.100bb4b0
add esp, 8
lea eax, [ebp - 0x120]
xorps xmm0, xmm0
movups xmmword [ebp - 0x150], xmm0
push eax
mov esi, dword [ebp - 0x38]
push esi
lea eax, [ebp - 0x198]
push eax
call fcn.100b5a00
add esp, 0xc
mov dword [ebp - 0x4c], edi
test al, al
je 0x100e257c
lea eax, [ebp - 0x120]
push esi
push eax
call fcn.100a9e70
add esp, 8
mov byte [ebp - 0x28], al
test al, al
mov edi, esi
je 0x100e288f
mov dword [ebx + 0x1e0c], 1
mov esi, dword [0x10357698]
mov ecx, dword [esi + 0x1ee0]
add esi, 0x1ee0
xor eax, eax
mov dword [ebp - 0x40], ecx
cmp ecx, edi
mov dword [ebp - 0x130], 0
cmovne esi, eax
push edi
push dword [ebp - 0xc4]
call fcn.100aa170
add esp, 8
mov edx, eax
test al, al
je 0x100e28e2
mov ecx, dword [ebp - 0xc4]
cmp dword [ebx + 0x1c70], ecx
je 0x100e2924
mov dword [ebp - 0x130], 0
cmp byte [ebp - 0x28], 0
je 0x100e293f
cmp byte [ebx + 0x3e0], 0
setne al
mov dword [ebp - 0x3c], eax
jmp 0x100e2946
movss xmm0, dword [ebx + 0x155c]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], edi
call fcn.100bb4b0
add esp, 8
jmp 0x100e291a
call fcn.100b55b0
call fcn.100bbad0
jmp 0x100e257c
mov eax, dword [ebx + 0x1c78]
cmp eax, dword [ecx + 0x19c]
sete al
mov dword [ebp - 0x130], eax
cmp byte [ebp - 0x28], 0
jne 0x100e28e8
mov dword [ebp - 0x3c], 0
mov eax, ebx
mov ebx, dword [ebx + 0x1a50]
cmp ebx, edi
mov dword [ebp - 0x24], eax
jne 0x100e2961
mov dword [ebp - 0xd8], 0
jmp 0x100e298c
mov cl, 1
mov dword [ebp - 0xd8], ecx
cmp dword [eax + 0x1b68], edi
je 0x100e298c
mov eax, dword [ebp - 0x24]
cmp dword [eax + 0x1b5c], edi
jne 0x100e2955
cmp dword [eax + 0x1b80], 3
sete al
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0x30], 0
je 0x100e29b0
cmp dword [ebp - 0x40], edi
jne 0x100e29b0
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x20], esi
test ebx, ebx
je 0x100e29bb
mov dword [ebp - 0x70], 0
mov edi, dword [ebp - 0x24]
mov esi, dword [ebp - 0x4c]
jmp 0x100e29e3
mov dword [ebp - 0x70], 0
xor ecx, ecx
jmp 0x100e2a05
mov edi, dword [ebp - 0x24]
mov ebx, dword [edi + 0x1a8c]
mov esi, dword [ebp - 0x4c]
mov ecx, esi
push 0
push str.SCROLLY
call fcn.100a9660
cmp ebx, eax
sete al
mov dword [ebp - 0x70], eax
mov ebx, dword [edi + 0x1a50]
mov ecx, esi
push 0
push str.SCROLLY
call fcn.100a9660
cmp ebx, eax
sete cl
mov ebx, dword [edi + 0x1a50]
mov edi, dword [ebp - 0x38]
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x50], eax
cmp ebx, edi
jne 0x100e2a2c
or dl, byte [ebp - 0x3c]
or dl, byte [ebp - 0x70]
or dl, byte [ebp - 0xd8]
or dl, cl
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x2c], 0
jmp 0x100e2aad
cmp dword [ebp - 0x30], 0
sete bh
mov bl, dl
or bl, byte [ebp - 0x3c]
or bl, byte [ebp - 0x70]
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x20], ecx
mov ecx, eax
shr cl, 4
mov eax, dword [ebp - 0xd8]
or cl, al
and cl, bh
mov dword [ebp - 0x2c], ecx
mov ecx, dword [ebp - 0x20]
or bl, al
mov eax, ebx
or al, cl
cmp al, 1
jne 0x100e2aa6
mov byte [ebp - 0x70], bh
mov byte [ebp - 0x40], bl
mov dword [ebp - 0x34], edx
mov ebx, dword [ebp - 0x24]
mov dword [ebx + 0x2d40], 0xbe99999a
push dword [ebp + 0x10]
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea edx, [eax + 1]
mov ecx, dword [ebx + 0x1f08]
cmp ecx, eax
mov esi, dword [ebp + 0x14]
jg 0x100e2b43
test ecx, ecx
je 0x100e2add
mov edi, ecx
shr edi, 0x1f
add edi, ecx
sar edi, 1
add edi, ecx
jmp 0x100e2ae2
mov dword [ebp - 0x34], 0
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x1a50]
cmp dword [ebp - 0x40], edi
mov edx, dword [ebp + 0x1c]
je 0x100e2e56
cmp eax, edi
jne 0x100e2e56
mov dword [ebp - 0x20], ecx
mov esi, edx
call fcn.100a9cc0
mov edx, esi
xor esi, esi
jmp 0x100e2e4a
mov edi, 8
cmp edi, edx
cmovle edi, edx
cmp ecx, edi
mov ebx, dword [ebp - 0x24]
jge 0x100e2b43
mov dword [ebp - 0xc8], edx
push edi
call fcn.100a64d0
add esp, 4
mov ecx, dword [ebx + 0x1f0c]
test ecx, ecx
je 0x100e2b31
push dword [ebx + 0x1f04]
push ecx
push eax
mov dword [ebp - 0xe8], eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push dword [ebx + 0x1f0c]
call fcn.100a6500
mov eax, dword [ebp - 0xe8]
add esp, 4
mov dword [ebx + 0x1f0c], eax
mov dword [ebx + 0x1f08], edi
mov edx, dword [ebp - 0xc8]
mov dword [ebx + 0x1f04], edx
push edx
push dword [ebp + 0x10]
push dword [ebx + 0x1f0c]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [ebp - 0xb4], 0
lea ecx, [esi + 1]
mov eax, dword [ebx + 0x1ef0]
cmp eax, esi
jg 0x100e2be5
test eax, eax
je 0x100e2b83
mov edi, eax
shr edi, 0x1f
add edi, eax
sar edi, 1
add edi, eax
jmp 0x100e2b88
mov edi, 8
cmp edi, ecx
cmovle edi, ecx
cmp eax, edi
mov ebx, dword [ebp - 0x24]
jge 0x100e2be5
mov dword [ebp - 0xc8], ecx
lea eax, [edi + edi]
push eax
call fcn.100a64d0
add esp, 4
mov esi, eax
mov edx, dword [ebx + 0x1ef4]
test edx, edx
je 0x100e2bd3
mov ecx, dword [ebx + 0x1eec]
add ecx, ecx
push ecx
push edx
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push dword [ebx + 0x1ef4]
call fcn.100a6500
add esp, 4
mov dword [ebx + 0x1ef4], esi
mov dword [ebx + 0x1ef0], edi
mov ecx, dword [ebp - 0xc8]
mov dword [ebx + 0x1eec], ecx
cmp dword [ebx + 0x1efc], 0
jns 0x100e2c38
push 0
call fcn.100a64d0
add esp, 4
mov edi, eax
mov eax, dword [ebx + 0x1f00]
test eax, eax
je 0x100e2c28
push dword [ebx + 0x1ef8]
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push dword [ebx + 0x1f00]
call fcn.100a6500
add esp, 4
mov dword [ebx + 0x1f00], edi
mov dword [ebx + 0x1efc], 0
mov dword [ebx + 0x1ef8], 0
mov byte [ebx + 0x1f10], 0
lea eax, [ebp - 0xb4]
push eax
push 0
mov esi, dword [ebp + 0x10]
push esi
push dword [ebp + 0x14]
push dword [ebx + 0x1ef4]
call fcn.100a6960
add esp, 0x14
mov dword [ebx + 0x1ee4], eax
mov ecx, dword [ebp - 0xb4]
sub ecx, esi
mov dword [ebx + 0x1ee8], ecx
mov edi, dword [ebp - 0x38]
cmp dword [ebx + 0x1ee0], edi
jne 0x100e2cc6
movq xmm0, qword [ebx + 0x1f1c]
movd xmm1, eax
pshufd xmm1, xmm1, 0x50
movdqa xmm2, xmm1
pcmpgtd xmm2, xmm0
pand xmm0, xmm2
pandn xmm2, xmm1
por xmm2, xmm0
movq qword [ebx + 0x1f1c], xmm2
mov ecx, dword [ebx + 0x1f24]
cmp ecx, eax
cmovl eax, ecx
mov dword [ebx + 0x1f24], eax
jmp 0x100e2d41
cmp byte [ebp - 0x130], 0
movzx eax, byte [ebp - 0x2c]
mov ecx, 1
cmove ecx, eax
cmp dword [ebp - 0x30], 0
cmovne ecx, eax
mov dword [ebp - 0x2c], ecx
mov dword [ebx + 0x1ee0], edi
mov dword [ebx + 0x1f18], 0
mov dword [ebx + 0x2d32], 0x630000
movq xmm0, qword [0x10163680]
movq qword [ebx + 0x2d38], xmm0
mov dword [ebx + 0x1f24], 0
pxor xmm0, xmm0
movq qword [ebx + 0x1f1c], xmm0
mov dword [ebx + 0x1f30], 0
movzx eax, byte [ebp - 0x70]
mov byte [ebx + 0x1f2c], al
mov dword [ebx + 0x1f28], 0x10000
mov ecx, dword [ebp - 0xc4]
mov edx, dword [ebp - 0x34]
test dword [ebp + 0x1c], 0x2000
movzx ebx, byte [ebp - 0x40]
je 0x100e2d61
mov eax, dword [ebp - 0x24]
mov byte [eax + 0x1f28], 1
cmp dword [ebp - 0x30], 0
jne 0x100e2d8a
mov eax, dword [ebp - 0x130]
xor al, 1
and dl, al
jne 0x100e2d85
cmp byte [ebp - 0x3c], 0
je 0x100e2d8a
mov eax, dword [ebp - 0x24]
cmp byte [eax + 0x100], 0
je 0x100e2d8a
mov al, 1
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x24]
lea esi, [eax + 0x1ee0]
cmp dword [eax + 0x1a50], edi
je 0x100e2e42
mov al, 1
mov dword [ebp - 0x34], eax
xor bl, 1
jne 0x100e2e47
push ecx
push edi
mov ebx, ecx
call fcn.100a9bc0
add esp, 8
push ebx
push edi
call fcn.100bd2e0
add esp, 8
push ebx
call fcn.100ab0b0
add esp, 4
mov ebx, dword [ebp + 0x1c]
test ebx, 0x100080
mov eax, 3
mov ecx, 0xf
cmove ecx, eax
cmp dword [ebp - 0x30], 0
movd xmm0, ecx
mov edx, dword [ebp - 0x24]
movsd xmm1, qword [edx + 0x1a64]
movaps xmm2, xmmword [0x1015c570]
movss xmm2, xmm0
orps xmm2, xmm1
movlps qword [edx + 0x1a64], xmm2
mov ecx, 0x1e0
mov eax, 0x180
cmovne eax, ecx
mov ecx, dword [edx + 0x1a74]
or eax, dword [edx + 0x1a70]
mov dword [edx + 0x1a70], eax
test ebx, 0x440
je 0x100e2e47
or eax, 1
mov dword [edx + 0x1a74], ecx
mov dword [edx + 0x1a70], eax
jmp 0x100e2e47
mov al, 1
mov dword [ebp - 0x34], eax
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x1a50]
mov ecx, dword [ebp - 0x20]
cmp eax, edi
jne 0x100e2e7b
mov eax, dword [ebp - 0x24]
cmp byte [eax + 0x3e0], 0
sete al
or al, byte [ebp - 0x34]
mov byte [ebp - 0xe8], al
xor al, 1
mov dword [ebp - 0x70], eax
mov byte [ebp - 0x34], 1
jmp 0x100e2e93
test esi, esi
setne al
and al, cl
mov byte [ebp - 0x34], al
mov byte [ebp - 0xe8], 1
mov dword [ebp - 0x70], 0
test esi, esi
mov dword [ebp - 0x20], esi
je 0x100e2ee1
mov ebx, edx
mov eax, edx
shr eax, 0xe
mov ecx, dword [esi + 0x40]
cmp ecx, dword [esi + 0x44]
setne dl
movzx ecx, byte [ebp - 0x34]
and dl, cl
mov dword [ebp - 0x3c], edx
and al, cl
cmp al, 1
jne 0x100e2ee8
mov dword [ebp - 0xb4], 0
mov ecx, dword [ebp + 0x14]
lea edi, [ecx + 1]
mov eax, dword [esi + 0x10]
cmp eax, ecx
jg 0x100e2f40
test eax, eax
je 0x100e2ef2
mov ebx, eax
shr ebx, 0x1f
add ebx, eax
sar ebx, 1
add ebx, eax
jmp 0x100e2ef7
xor ecx, ecx
jmp 0x100e2fa4
mov ecx, dword [ebp - 0x3c]
mov edx, ebx
jmp 0x100e2fa4
mov ebx, 8
cmp ebx, edi
cmovle ebx, edi
cmp eax, ebx
jge 0x100e2f40
lea eax, [ebx + ebx]
push eax
call fcn.100a64d0
add esp, 4
mov edx, dword [esi + 0x14]
test edx, edx
je 0x100e2f3a
mov ecx, dword [esi + 0xc]
add ecx, ecx
push ecx
push edx
push eax
mov dword [ebp - 0xc4], eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push dword [esi + 0x14]
call fcn.100a6500
mov eax, dword [ebp - 0xc4]
add esp, 4
mov dword [esi + 0x14], eax
mov dword [esi + 0x10], ebx
mov dword [esi + 0xc], edi
lea eax, [ebp - 0xb4]
push eax
push 0
mov esi, dword [ebp + 0x10]
push esi
push edi
mov eax, dword [ebp - 0x20]
push dword [eax + 0x14]
call fcn.100a6960
add esp, 0x14
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0xb4]
sub ecx, esi
mov esi, dword [ebp - 0x20]
mov dword [esi + 8], ecx
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x40]
cmp edx, eax
cmovge edx, eax
mov dword [esi + 0x3c], edx
cmp ecx, eax
cmovge ecx, eax
mov dword [esi + 0x40], ecx
mov edx, dword [esi + 0x44]
cmp edx, eax
cmovl eax, edx
cmp ecx, eax
mov dword [esi + 0x44], eax
setne al
mov ecx, dword [ebp - 0x3c]
and cl, al
mov edx, dword [ebp + 0x1c]
mov edi, dword [ebp - 0x38]
movzx eax, byte [ebp - 0x34]
or al, cl
mov dword [ebp - 0x3c], ecx
je 0x100e2fcd
mov dword [ebp - 0xc4], 0
test esi, esi
mov ecx, dword [ebp + 0x10]
je 0x100e3270
mov eax, edx
and eax, 0x4000
jmp 0x100e2ff8
mov dword [ebp - 0xc4], 0
test esi, esi
je 0x100e3278
mov eax, edx
and eax, 0x4000
jne 0x100e3278
mov eax, dword [ebp - 0x24]
cmp dword [eax + 0x1a50], edi
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
jne 0x100e300e
cmp byte [esi + 0x30], 0
mov edi, edx
setne dl
mov dword [ebp - 0xc4], edx
mov edx, edi
test eax, eax
je 0x100e3028
mov eax, ecx
cmp byte [ebp - 0xc4], 0
je 0x100e3020
mov eax, dword [esi + 0x20]
cmp byte [eax], 0
sete cl
jmp 0x100e302a
xor ecx, ecx
test edx, 0x8000
sete al
mov dword [ebp - 0x40], ecx
or al, cl
mov byte [ebp - 0xc8], al
jne 0x100e30cd
mov esi, dword [ebp - 0x24]
mov ecx, dword [esi + 0x18dc]
push 0x2a
mov edi, edx
call fcn.100ce720
lea ecx, [esi + 0x2d54]
mov edx, dword [esi + 0x18dc]
movss xmm0, dword [edx + 0x10]
movss dword [esi + 0x2d64], xmm0
movss xmm0, dword [edx + 0x48]
movss dword [esi + 0x2d9c], xmm0
movsd xmm0, qword [edx + 0x30]
movsd qword [esi + 0x2d84], xmm0
movss xmm0, dword [edx + 0x4c]
movss dword [esi + 0x2da0], xmm0
movss xmm0, dword [edx + 0x50]
movss dword [esi + 0x2da4], xmm0
mov edx, dword [edx + 0x38]
mov dword [esi + 0x2d8c], edx
mov dword [esi + 0x2d80], eax
movss xmm0, dword [eax + 8]
movss dword [esi + 0x2d60], xmm0
mov esi, dword [ebp - 0x20]
push ecx
call fcn.100ba950
mov edx, edi
add esp, 4
mov dword [ebp - 0x130], 0
mov edi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
cmp dword [edi + 0x1a50], eax
movups xmm1, xmmword [ebp - 0x60]
jne 0x100e3482
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x34], eax
mov dword [esi + 0xe68], edx
mov eax, dword [ebp + 0x20]
mov dword [esi + 0xe6c], eax
mov eax, dword [ebp + 0x24]
mov dword [esi + 0xe70], eax
movzx eax, byte [edi + 0xf0]
mov ecx, eax
xor cl, 1
mov edx, dword [esi + 8]
mov dword [ebp - 0x130], edx
mov byte [edi + 0x1a5d], cl
mov dword [edi + 0x306c], 1
cmp dword [ebp - 0x30], 0
mov esi, edi
je 0x100e3155
movss xmm1, dword [esi + 0xec]
mov ecx, dword [ebp - 0x4c]
subss xmm1, dword [ecx + 0xcc]
subss xmm1, dword [esi + 0x155c]
jmp 0x100e3165
movss xmm1, dword [esi + 0x18e0]
mulss xmm1, dword [0x10154044]
mov dh, byte [esi + 0xb1]
cmp byte [ebp - 0x2c], 0
je 0x100e31dc
mov edi, dword [ebp - 0x20]
mov dword [edi + 0x40], 0
mov eax, dword [edi + 4]
mov dword [edi + 0x44], eax
mov dword [edi + 0x3c], eax
mov byte [edi + 0x4b], 0
mov byte [edi + 0xe65], 1
cmp byte [edi + 0xe65], 0
je 0x100e31ab
cmp byte [esi + 0xf0], 0
jne 0x100e31ab
mov eax, dword [ebp - 0x20]
mov byte [eax + 0xe65], 0
cmp byte [esi + 0x100], 0
movups xmm1, xmmword [ebp - 0x60]
je 0x100e3253
cmp byte [esi + 0x102], 0
sete bl
je 0x100e32fd
test dh, dh
mov esi, dword [ebp - 0x20]
jne 0x100e325e
jmp 0x100e3304
movss xmm0, dword [esi + 0xe8]
subss xmm0, dword [ebp - 0x120]
subss xmm0, dword [esi + 0x1558]
mov ecx, dword [ebp - 0x20]
addss xmm0, dword [ecx + 0x38]
test dh, dh
sete cl
and cl, byte [ebp - 0x28]
cmp cl, 1
jne 0x100e3216
cmp byte [esi + 0x3e5], 0
jne 0x100e3171
movzx ecx, byte [ebp - 0x28]
xor cl, 1
test dh, dh
sete dl
or dl, cl
jne 0x100e3283
cmp byte [esi + 0x3e5], 0
je 0x100e3283
mov edi, dword [ebp - 0x20]
mov ecx, edi
push 0x20000c
mov bl, dh
call fcn.100e5540
mov ecx, edi
push 0x60000d
call fcn.100e5540
mov dh, bl
jmp 0x100e318f
test dh, dh
mov esi, dword [ebp - 0x20]
je 0x100e3302
mov eax, dword [ebp - 0x24]
cmp byte [eax + 0x103], 0
setne bl
jmp 0x100e3304
mov eax, dword [ebp + 0xc]
jmp 0x100e300e
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
jmp 0x100e300e
cmp byte [esi + 0x3e0], 0
je 0x100e329c
mov ecx, dword [ebp - 0x20]
cmp byte [ecx + 0xe65], 0
je 0x100e3378
test al, al
mov edi, dword [ebp - 0x20]
je 0x100e318f
cmp byte [edi + 0xe65], 0
jne 0x100e318f
movss xmm3, dword [esi + 0x378]
xorps xmm2, xmm2
ucomiss xmm3, xmm2
jne 0x100e32d9
jp 0x100e32d9
movss xmm3, dword [esi + 0x37c]
ucomiss xmm3, xmm2
jne 0x100e32d9
jnp 0x100e318f
mov bl, dh
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100e6740
mov dh, bl
mov dword [edi + 0xe60], 0xbe99999a
mov byte [edi + 0xe64], 1
jmp 0x100e318f
mov esi, dword [ebp - 0x20]
jmp 0x100e3304
xor ebx, ebx
test dword [ebp + 0x1c], 0x400
je 0x100e33df
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x34]
test eax, eax
js 0x100e33df
push 1
push eax
call fcn.100b4f70
movups xmm1, xmmword [ebp - 0x60]
add esp, 8
xor al, 1
or al, bl
jne 0x100e33df
test dword [ebp + 0x1c], 0x4000
jne 0x100e33df
mov eax, dword [ebp - 0x24]
cmp byte [eax + 0x101], 0
jne 0x100e33df
mov eax, dword [ebp - 0x24]
mov ecx, dword [eax + 0x1510]
mov eax, dword [eax + 0x1518]
lea ecx, [eax + ecx*2]
cmp eax, ecx
jae 0x100e33a2
cmp word [eax], 9
lea eax, [eax + 2]
jne 0x100e3369
jmp 0x100e33df
cmp byte [ebp - 0x28], 0
mov edi, dword [ebp - 0x20]
je 0x100e318f
mov bl, dh
lea edx, [edi + 0x3c]
mov ecx, edi
call fcn.100e66f0
mov dh, bl
mov dword [edi + 0xe60], 0xbe99999a
jmp 0x100e318f
mov dword [ebp - 0xb4], 9
mov dword [ebp - 0x10], 0xffffffff
lea ecx, [ebp - 0xb4]
mov edx, dword [ebp + 0x1c]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
call fcn.100e6790
add esp, 8
test al, al
je 0x100e33db
mov ecx, esi
push dword [ebp - 0xb4]
call fcn.100e5540
movups xmm1, xmmword [ebp - 0x60]
mov eax, dword [ebp - 0x24]
cmp dword [eax + 0x1510], 0
jle 0x100e347c
mov eax, dword [ebp + 0x1c]
shr eax, 0xe
and eax, 1
or al, bl
or al, byte [ebp - 0xd8]
mov ebx, dword [ebp - 0x24]
je 0x100e3712
cmp dword [ebx + 0x1514], 0
mov edi, ebx
mov edx, dword [ebp + 0x1c]
jns 0x100e3469
mov ebx, edx
mov dword [ebp - 0x10], 0xffffffff
push 0
call fcn.100a64d0
add esp, 4
mov esi, eax
mov eax, dword [edi + 0x1518]
test eax, eax
je 0x100e3457
mov ecx, dword [edi + 0x1510]
add ecx, ecx
push ecx
push eax
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push dword [edi + 0x1518]
call fcn.100a6500
add esp, 4
mov dword [edi + 0x1518], esi
mov dword [edi + 0x1514], 0
mov edx, ebx
mov dword [edi + 0x1510], 0
mov esi, dword [ebp - 0x20]
movups xmm1, xmmword [ebp - 0x60]
jmp 0x100e3482
mov edx, dword [ebp + 0x1c]
mov edi, dword [ebp - 0x24]
mov ecx, dword [edi + 0x1a50]
xor ebx, ebx
cmp ecx, dword [ebp - 0x38]
jne 0x100e3517
cmp byte [edi + 0x1a5c], 0
jne 0x100e377b
cmp byte [ebp - 0xe8], 0
je 0x100e3779
mov eax, dword [ebp - 0x24]
movzx ecx, byte [eax + 0x101]
movzx ebx, byte [eax + 0xb1]
mov byte [ebp - 0x28], bl
test bl, bl
mov dword [ebp - 0x2c], ecx
je 0x100e3add
mov edi, dword [eax + 0x380]
cmp edi, 0xa
sete cl
mov dword [ebp - 0x48], ecx
lea ecx, [eax + 0x102]
mov dword [ebp - 0x178], ecx
lea ecx, [eax + 0x100]
movzx ebx, byte [eax + 0x102]
cmp byte [eax + 0x103], 0
mov dword [ebp - 0xe8], ecx
je 0x100e3b09
movzx eax, byte [ecx]
or al, bl
sete al
mov dword [ebp - 0x44], eax
jmp 0x100e3b10
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x38]
cmp ecx, eax
jne 0x100e4037
test edx, 0x4000
jne 0x100e36f6
mov eax, dword [ebp - 0x28]
xor al, 1
jne 0x100e36f6
mov ebx, dword [esi + 0x2c]
push ebx
push dword [ebp + 0x10]
mov edi, edx
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
mov edx, edi
movups xmm1, xmmword [ebp - 0x60]
add esp, 8
test eax, eax
je 0x100e36f6
mov edx, dword [esi + 0x24]
lea eax, [edx - 1]
xorps xmm0, xmm0
movlps qword [ebp - 0xb4], xmm0
mov dword [ebp - 0xac], 0
mov ecx, 0
mov edi, 0
cmp edx, 2
mov dword [ebp - 0xd8], ebx
mov dword [ebp - 0x80], eax
jl 0x100e35f5
mov dword [ebp - 0x48], edx
add eax, ebx
mov dword [ebp - 0x10], 1
mov dword [ebp - 0xe8], eax
push eax
push ebx
call fcn.100a69f0
add esp, 8
inc eax
lea ecx, [ebp - 0xb4]
push eax
call fcn.100e6680
push 0
push dword [ebp - 0xe8]
push dword [ebp - 0xd8]
push dword [ebp - 0xb4]
push dword [ebp - 0xac]
call fcn.100a6960
add esp, 0x14
mov edi, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xac]
mov esi, dword [ebp - 0x20]
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x140], ecx
dec edi
cmp edx, 2
mov eax, 0
cmovl edi, eax
mov ebx, esi
mov esi, dword [esi + 4]
lea ecx, [ebx + 0x54]
xor edx, edx
mov dword [ebp - 0xe8], edi
push edi
push esi
call fcn.100ea470
add esp, 8
test esi, esi
jle 0x100e3689
test eax, eax
je 0x100e3689
lea edi, [esi - 1]
mov ecx, esi
and ecx, 3
xor edx, edx
cmp edi, 3
jb 0x100e3676
and esi, 0xfffffffc
xor edx, edx
mov edi, dword [ebx + 0x14]
movzx edi, word [edi + edx*2]
mov word [eax + edx*2], di
mov edi, dword [ebx + 0x14]
movzx edi, word [edi + edx*2 + 2]
mov word [eax + edx*2 + 2], di
mov edi, dword [ebx + 0x14]
movzx edi, word [edi + edx*2 + 4]
mov word [eax + edx*2 + 4], di
mov edi, dword [ebx + 0x14]
movzx edi, word [edi + edx*2 + 6]
mov word [eax + edx*2 + 6], di
add edx, 4
cmp esi, edx
jne 0x100e363d
test ecx, ecx
je 0x100e3689
mov esi, dword [ebx + 0x14]
movzx esi, word [esi + edx*2]
mov word [eax + edx*2], si
inc edx
dec ecx
jne 0x100e367a
mov eax, dword [ebx + 4]
mov ecx, dword [ebx + 0x14]
mov dword [ebp - 0x44], eax
lea eax, [ecx + eax*2]
mov dword [ebp - 0x10], 1
push eax
mov dword [ebp - 0x48], ecx
push ecx
call fcn.100a6b20
add esp, 8
mov esi, dword [ebp - 0x20]
sub dword [esi + 8], eax
mov edx, dword [ebp - 0x44]
sub dword [esi + 4], edx
mov ecx, dword [esi + 0x14]
movzx eax, word [ecx + edx*2]
test ax, ax
je 0x100e3c53
lea ecx, [ecx + edx*2]
add ecx, 2
mov edi, dword [ebp - 0xe8]
mov edx, dword [ebp - 0x48]
nop word cs:[eax + eax]
mov word [edx], ax
add edx, 2
movzx eax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100e36e0
jmp 0x100e3c5c
xor ebx, ebx
mov dword [ebp - 0x80], 0
cmp byte [ebp - 0x28], 0
jne 0x100e3cc7
mov dword [ebp - 0x80], 0
jmp 0x100e3789
xor edi, edi
lea esi, [ebp - 0xb4]
jmp 0x100e3736
cmp byte [ebx + 0x101], 0
je 0x100e374b
inc edi
cmp edi, dword [ebx + 0x1510]
jge 0x100e3409
mov eax, dword [ebx + 0x1518]
movzx eax, word [eax + edi*2]
mov dword [ebp - 0xb4], eax
cmp eax, 9
je 0x100e3720
mov dword [ebp - 0x10], 0xffffffff
mov ecx, esi
mov edx, dword [ebp + 0x1c]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
call fcn.100e6790
add esp, 8
test al, al
je 0x100e3729
mov ecx, dword [ebp - 0x20]
push dword [ebp - 0xb4]
call fcn.100e5540
jmp 0x100e3729
xor ebx, ebx
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0xd8], ebx
test edx, 0x4000
jne 0x100e382e
mov byte [esi + 0x30], 1
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x1c]
lea edi, [ecx*4 + 1]
cmp eax, edi
jge 0x100e380a
test eax, eax
je 0x100e37c1
mov ebx, eax
shr ebx, 0x1f
add ebx, eax
sar ebx, 1
add ebx, eax
jmp 0x100e37c6
mov ebx, 8
cmp ebx, edi
cmovle ebx, edi
mov dword [ebp - 0x10], 0xffffffff
cmp eax, ebx
jge 0x100e380a
push ebx
call fcn.100a64d0
add esp, 4
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x100e3804
push dword [esi + 0x18]
push ecx
push eax
mov dword [ebp - 0x28], eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push dword [esi + 0x20]
call fcn.100a6500
mov eax, dword [ebp - 0x28]
add esp, 4
mov dword [esi + 0x20], eax
mov dword [esi + 0x1c], ebx
mov dword [esi + 0x18], edi
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x20]
mov dword [ebp - 0x10], 0xffffffff
push 0
push eax
push edi
push ecx
call fcn.100a6a50
add esp, 0x10
mov edx, dword [ebp + 0x1c]
movups xmm1, xmmword [ebp - 0x60]
test edx, 0x1c0
je 0x100e3a91
test dl, 0x40
je 0x100e3875
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x34]
test eax, eax
js 0x100e3875
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
mov edi, edx
call fcn.100b4f70
mov edx, edi
movups xmm1, xmmword [ebp - 0x60]
add esp, 8
test al, al
je 0x100e3875
mov eax, 0x40
xor ecx, ecx
jmp 0x100e38fe
test dl, 0x80
je 0x100e38e8
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x100e38b7
mov edi, edx
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e38ac
mov eax, 0x80
mov ecx, 3
mov edx, edi
jmp 0x100e38fe
mov eax, dword [0x10357698]
movups xmm1, xmmword [ebp - 0x60]
mov edx, edi
mov eax, dword [eax + 0x44]
test eax, eax
js 0x100e38e8
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
mov edi, edx
call fcn.100b4f70
mov edx, edi
movups xmm1, xmmword [ebp - 0x60]
add esp, 8
test al, al
je 0x100e38e8
mov eax, 0x80
mov ecx, 4
jmp 0x100e38fe
test edx, 0x100
je 0x100e3a91
mov eax, 0x100
mov ecx, 0x16
xorps xmm0, xmm0
movups xmmword [ebp - 0xa8], xmm0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], edx
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa4], ecx
mov eax, dword [esi + 0x20]
mov dword [ebp - 0xa0], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x9c], eax
mov eax, dword [esi + 0x34]
mov dword [ebp - 0x98], eax
mov byte [ebp - 0x94], 0
mov edi, esi
mov esi, dword [esi + 0x14]
mov eax, dword [edi + 0x3c]
lea eax, [esi + eax*2]
mov dword [ebp - 0x10], 0xffffffff
push eax
push esi
call fcn.100a6b20
add esp, 8
mov ebx, eax
mov dword [ebp - 0x90], eax
mov eax, dword [edi + 0x40]
lea eax, [esi + eax*2]
push eax
push esi
call fcn.100a6b20
add esp, 8
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x8c], eax
mov eax, dword [edi + 0x44]
lea eax, [esi + eax*2]
push eax
push esi
call fcn.100a6b20
add esp, 8
mov esi, eax
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0xb4]
push eax
call dword [ebp + 0x20]
add esp, 4
mov eax, dword [ebp - 0x90]
cmp eax, ebx
je 0x100e39e1
mov ecx, dword [ebp - 0xa0]
add eax, ecx
push eax
push ecx
call fcn.100a69f0
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 0x3c], eax
mov byte [ecx + 0xe64], 1
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0x28]
je 0x100e3a04
mov ecx, dword [ebp - 0xa0]
add eax, ecx
push eax
push ecx
call fcn.100a69f0
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 0x88]
cmp eax, esi
mov edx, dword [ebp + 0x1c]
mov esi, dword [ebp - 0x20]
je 0x100e3a2d
mov ecx, dword [ebp - 0xa0]
add eax, ecx
push eax
push ecx
mov edi, edx
call fcn.100a69f0
mov edx, edi
add esp, 8
mov dword [esi + 0x44], eax
cmp byte [ebp - 0x94], 0
movups xmm1, xmmword [ebp - 0x60]
je 0x100e3a91
mov edi, edx
test edx, 0x40000
je 0x100e3a5d
mov eax, dword [ebp - 0x9c]
sub eax, dword [ebp - 0x130]
jle 0x100e3a5d
lea ecx, [esi + 0xc]
add eax, dword [ecx]
push eax
call fcn.100e6680
push 0
push 0
push dword [ebp - 0xa0]
push dword [esi + 0xc]
push dword [esi + 0x14]
call fcn.100a6960
add esp, 0x14
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x9c]
mov dword [esi + 8], eax
mov dword [esi + 0xe60], 0xbe99999a
movups xmm1, xmmword [ebp - 0x60]
mov edx, edi
test edx, 0x4000
je 0x100e3aa4
mov ebx, dword [ebp - 0xd8]
jmp 0x100e3cd6
mov ebx, edx
mov edi, dword [esi + 0x20]
push dword [ebp + 0x10]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add esp, 8
test eax, eax
je 0x100e3acc
mov eax, dword [esi + 8]
mov dword [ebp - 0x80], eax
movups xmm1, xmmword [ebp - 0x60]
mov edx, ebx
mov ebx, edi
jmp 0x100e3cd6
movups xmm1, xmmword [ebp - 0x60]
mov edx, ebx
mov ebx, dword [ebp - 0xd8]
jmp 0x100e3cd6
lea ecx, [eax + 0x102]
mov dword [ebp - 0x178], ecx
lea ecx, [eax + 0x100]
mov dword [ebp - 0xe8], ecx
movzx ebx, byte [eax + 0x100]
mov edi, dword [eax + 0x380]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov byte [ebp - 0x140], bl
xor eax, eax
cmp edi, 1
sete al
xor ecx, ecx
cmp edi, 8
sete cl
cmp byte [ebp - 0x28], 0
cmove ecx, eax
mov dword [ebp - 0xd8], ecx
cmp cl, 1
jne 0x100e3b81
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x80]
test eax, eax
js 0x100e3b81
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
mov ebx, edx
call fcn.100b4f70
mov edx, ebx
add esp, 8
test al, al
je 0x100e3b81
test edx, 0xc000
sete al
mov dword [ebp - 0xf8], eax
jne 0x100e3c0e
cmp dword [ebp - 0x30], 0
jne 0x100e3bd6
jmp 0x100e3c0e
cmp edi, 2
jne 0x100e3bf7
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x5c]
test eax, eax
js 0x100e3bf7
movzx esi, dx
shr esi, 0xf
mov ebx, edx
shr ebx, 0xe
and ebx, 1
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
xor al, 1
mov ecx, esi
or al, cl
or al, bl
mov ecx, eax
xor cl, 1
mov dword [ebp - 0xf8], ecx
test al, al
jne 0x100e5020
cmp dword [ebp - 0x30], 0
mov edx, dword [ebp + 0x1c]
je 0x100e3c01
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x40]
cmp eax, dword [ecx + 0x44]
setne al
mov dword [ebp - 0xf8], eax
cmp byte [ebp - 0xd8], 0
je 0x100e3db7
jmp 0x100e3c0e
mov dword [ebp - 0xf8], 0
cmp byte [ebp - 0xd8], 0
je 0x100e3db7
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x78]
test eax, eax
js 0x100e3db7
mov ebx, edx
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e3db5
mov edx, ebx
mov eax, ebx
and eax, 0x108000
cmp eax, 0x100000
je 0x100e3df9
jmp 0x100e3e23
mov edi, dword [ebp - 0xe8]
mov edx, dword [ebp - 0x48]
mov word [edx], 0
test edi, edi
jle 0x100e3c93
mov dword [ebp - 0x10], 1
mov ecx, esi
xor edx, edx
push edi
push dword [ebp - 0x140]
call fcn.100e9cf0
add esp, 8
test al, al
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0xe8]
je 0x100e3c93
mov dword [esi + 0x3c], eax
mov byte [esi + 0x4b], 0
mov eax, dword [ebp - 0xac]
test eax, eax
je 0x100e3cb0
mov dword [ebp - 0x10], 0
push eax
call fcn.100a6500
mov esi, dword [ebp - 0x20]
add esp, 4
cmp byte [ebp - 0x28], 0
mov edx, dword [ebp + 0x1c]
movups xmm1, xmmword [ebp - 0x60]
mov ebx, dword [ebp - 0xd8]
je 0x100e3789
test dl, 0x20
je 0x100e3cd6
cmp byte [ebp - 0x2c], 0
jne 0x100e3789
test ebx, ebx
setne al
mov dword [ebp - 0x28], eax
je 0x100e3d92
mov dword [ebp - 0x10], 0xffffffff
test edx, 0x40000
jne 0x100e3cfe
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
mov edi, dword [ebp - 0x80]
jmp 0x100e3d7a
xorps xmm0, xmm0
movups xmmword [ebp - 0xa8], xmm0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x88], 0
mov dword [ebp - 0xb4], 0x40000
mov dword [ebp - 0xb0], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xa0], eax
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x9c], ecx
inc ecx
mov eax, dword [ebp + 0x14]
cmp eax, ecx
cmovg ecx, eax
mov dword [ebp - 0x98], ecx
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0xac], eax
lea eax, [ebp - 0xb4]
push eax
call dword [ebp + 0x20]
add esp, 4
mov ecx, dword [ebp - 0xa0]
mov eax, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x98]
lea edi, [edx - 1]
cmp eax, edi
cmovl edi, eax
inc edi
cmp edi, edx
cmovge edi, edx
push edi
push ebx
mov dword [ebp - 0x50], ecx
push ecx
call fcn.100a64a0
add esp, 0xc
movups xmm1, xmmword [ebp - 0x60]
mov dword [esi + 0xe68], 0
xorps xmm0, xmm0
movlps qword [esi + 0xe6c], xmm0
cmp byte [ebp - 0x70], 0
jne 0x100e4044
jmp 0x100e4062
mov edx, ebx
cmp edi, 1
jne 0x100e3e13
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x58]
test eax, eax
js 0x100e3e13
test edx, 0x8000
sete bl
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
and al, bl
cmp dword [ebp - 0x30], 0
mov dword [ebp - 0x80], eax
je 0x100e5035
test al, al
mov edx, dword [ebp + 0x1c]
je 0x100e3e1a
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x40]
cmp eax, dword [ecx + 0x44]
setne al
mov dword [ebp - 0x80], eax
cmp byte [ebp - 0xd8], 0
je 0x100e3e49
jmp 0x100e3e23
mov dword [ebp - 0x80], 0
cmp byte [ebp - 0xd8], 0
je 0x100e3e49
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x7c]
test eax, eax
js 0x100e3e49
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
mov ebx, edx
call fcn.100b4f70
mov edx, ebx
add esp, 8
test al, al
jne 0x100e3e78
cmp edi, 2
jne 0x100e3e89
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x58]
test eax, eax
js 0x100e3e89
mov edi, edx
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e4fa9
mov edx, edi
test edx, 0x4000
sete al
mov dword [ebp - 0x84], eax
jmp 0x100e3e93
mov dword [ebp - 0x84], 0
cmp byte [ebp - 0xd8], 0
mov edi, dword [ebp - 0xe8]
je 0x100e3ed1
mov ebx, dword [0x10357698]
mov ecx, dword [ebx + 0x88]
mov esi, edi
test ecx, ecx
js 0x100e3edd
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
mov edx, dword [ebp + 0x1c]
add esp, 8
mov ebx, dword [0x10357698]
jmp 0x100e3edf
mov dword [ebp - 0x1a8], 0
jmp 0x100e3f1d
xor eax, eax
test edx, 0x14000
sete cl
and al, cl
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebx + 0x84]
test eax, eax
js 0x100e3f1b
mov edi, ecx
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
test al, al
mov ebx, edi
mov edi, esi
mov esi, dword [ebp - 0x2c]
je 0x100e3f20
jmp 0x100e3f59
mov edi, esi
mov esi, dword [ebp - 0x2c]
cmp byte [ebp - 0x48], 0
je 0x100e3f57
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x88]
test eax, eax
js 0x100e3f57
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e3f57
test dword [ebp + 0x1c], 0x14000
sete bl
jmp 0x100e3f59
xor ebx, ebx
shl esi, 0x16
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x38]
test ecx, ecx
js 0x100e3fa2
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e3f9d
cmp byte [ebp - 0x140], 0
mov eax, 0x200000
mov ecx, 0x20000c
cmove ecx, eax
cmp byte [ebp - 0x44], 0
mov eax, 0x200004
jmp 0x100e3fe4
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
js 0x100e4ec9
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e4ec4
cmp byte [ebp - 0x140], 0
mov eax, 0x200001
mov ecx, 0x20000d
cmove ecx, eax
cmp byte [ebp - 0x44], 0
mov eax, 0x200005
cmove eax, ecx
or eax, esi
mov esi, dword [ebp - 0x20]
mov ecx, esi
push eax
call fcn.100e5540
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x70]
movups xmm1, xmmword [ebp - 0x60]
mov ecx, dword [esi + 0x40]
cmp ecx, dword [esi + 0x44]
setne cl
and cl, byte [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
or dl, cl
mov dword [ebp - 0x3c], edx
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ecx + 0x1a50]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x38]
mov edx, dword [ebp + 0x1c]
cmp ecx, eax
je 0x100e3530
mov dword [ebp - 0x28], 0
cmp byte [ebp - 0x70], 0
je 0x100e4062
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x38]
cmp dword [eax + 0x1a50], ecx
jne 0x100e4062
mov dword [ebp - 0x10], 0xffffffff
call fcn.100a9cc0
movups xmm1, xmmword [ebp - 0x60]
cmp dword [ebp - 0x30], 0
jne 0x100e40d3
mov dword [ebp - 0x10], 0xffffffff
push 1
push dword [ebp - 0x38]
lea eax, [ebp - 0x120]
push eax
call fcn.100a89d0
add esp, 0xc
mov eax, dword [ebp - 0x24]
movss xmm0, dword [eax + 0x1560]
movss dword [ebp - 0x80], xmm0
push 0x3f800000
push 7
call fcn.100a72f0
add esp, 8
movups xmm0, xmmword [ebp - 0x120]
sub esp, 0x1c
movss xmm1, dword [ebp - 0x80]
movss dword [esp + 0x18], xmm1
mov dword [esp + 0x10], eax
movups xmmword [esp], xmm0
mov dword [esp + 0x14], 1
call fcn.100a8430
movups xmm1, xmmword [ebp - 0x60]
add esp, 0x1c
movsd xmm2, qword [ebp - 0x120]
movups xmm0, xmmword [ebp - 0x1b8]
movss xmm0, xmm1
addps xmm0, xmm2
movaps xmm3, xmm2
movups xmmword [ebp - 0x1b8], xmm0
movlhps xmm3, xmm0
movups xmmword [ebp - 0xe8], xmm3
movups xmmword [ebp - 0x188], xmm3
cmp dword [ebp - 0x30], 0
je 0x100e4133
mov edx, dword [ebp - 0x4c]
mov eax, dword [edx + 0xc8]
mov ecx, dword [edx + 0xcc]
movsd xmm0, qword [edx + 0xc8]
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], ecx
jmp 0x100e414b
mov eax, dword [ebp - 0x108]
movsd xmm0, qword [eax]
addps xmm0, xmm2
movups xmmword [ebp - 0x80], xmm0
movlps qword [ebp - 0x110], xmm0
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp + 0xc]
cmp byte [ebp - 0xc4], 0
je 0x100e4160
mov eax, dword [esi + 0x20]
mov dword [ebp - 0x50], eax
test cl, cl
movups xmmword [ebp - 0x130], xmm2
je 0x100e4194
push edx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov edx, dword [ebp + 0xc]
add esp, 4
mov ebx, eax
add ebx, edx
movzx eax, byte [ebp - 0x34]
or al, byte [ebp - 0x3c]
je 0x100e42b9
mov dword [ebp - 0x48], ebx
movups xmm2, xmmword [ebp - 0x130]
jmp 0x100e41ae
movzx eax, byte [ebp - 0x34]
or al, byte [ebp - 0x3c]
cmp al, 1
jne 0x100e42ce
mov eax, dword [esi + 8]
mov edx, dword [ebp - 0x50]
add eax, edx
mov dword [ebp - 0x48], eax
mov esi, dword [esi + 0x14]
mov dword [ebp - 0xc4], 0
mov ebx, 0xfffffc18
mov dword [ebp - 0x108], 0
mov edi, 0xfffffc18
mov ecx, 0
cmp byte [ebp - 0x34], 0
je 0x100e41f3
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
lea eax, [esi + eax*2]
mov dword [ebp - 0x108], eax
mov ecx, 1
mov edi, 0xffffffff
movups xmm0, xmmword [ebp - 0x1b8]
shufps xmm0, xmm0, 0x55
movaps xmm1, xmm2
shufps xmm1, xmm2, 0x55
cmp byte [ebp - 0x3c], 0
mov dword [ebp - 0x50], edx
je 0x100e422b
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + 0x40]
mov edx, dword [edx + 0x44]
cmp eax, edx
cmovl edx, eax
lea eax, [esi + edx*2]
mov dword [ebp - 0xc4], eax
inc ecx
mov ebx, 0xffffffff
mov edx, esi
mov eax, dword [ebp - 0x30]
shr eax, 0x14
add eax, ecx
xor esi, esi
mov dword [ebp - 0x44], edx
mov ecx, edx
jmp 0x100e4245
mov esi, edx
add ecx, 2
movzx edx, word [ecx]
cmp edx, 0xa
je 0x100e4260
test edx, edx
je 0x100e434d
add ecx, 2
jmp 0x100e4245
mov edx, esi
inc edx
cmp edi, 0xffffffff
jne 0x100e4290
mov edi, 0xffffffff
cmp ecx, dword [ebp - 0x108]
jb 0x100e4290
cmp eax, 2
jl 0x100e4343
dec eax
mov edi, edx
nop word cs:[eax + eax]
cmp ebx, 0xffffffff
jne 0x100e4240
mov ebx, 0xffffffff
cmp ecx, dword [ebp - 0xc4]
jae 0x100e42a9
mov esi, edx
add ecx, 2
jmp 0x100e4245
cmp eax, 2
jl 0x100e4349
dec eax
mov esi, edx
mov ebx, edx
jmp 0x100e4255
xorps xmm0, xmm0
cmp dword [ebp - 0x30], 0
movups xmm1, xmmword [ebp - 0x60]
mov ecx, dword [ebp - 0x40]
jne 0x100e42d7
jmp 0x100e462e
cmp dword [ebp - 0x30], 0
je 0x100e431f
mov edx, dword [ebp - 0x50]
xor eax, eax
mov ebx, edx
nop dword [eax + eax]
movzx ecx, byte [ebx]
inc ebx
test ecx, ecx
je 0x100e42f0
cmp ecx, 0xa
jne 0x100e42e0
inc eax
jmp 0x100e42e0
inc eax
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
dec ebx
mov eax, dword [ebp - 0x24]
mulss xmm0, dword [eax + 0x18e0]
xor esi, esi
movlhps xmm0, xmm1
shufps xmm0, xmm1, 0xe2
cmp dword [ebp - 0x30], 0
mov ecx, dword [ebp - 0x40]
je 0x100e462e
jmp 0x100e4643
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x38]
cmp dword [eax + 0x1a50], edx
jne 0x100e4616
mov ebx, dword [esi + 8]
mov eax, dword [ebp - 0x50]
add ebx, eax
xorps xmm0, xmm0
mov edx, eax
jmp 0x100e462e
mov esi, edx
mov edi, edx
jmp 0x100e434d
mov esi, edx
mov ebx, edx
movups xmmword [ebp - 0xd8], xmm1
movups xmmword [ebp - 0x1a8], xmm0
inc esi
cmp edi, 0xffffffff
cmove edi, esi
mov dword [ebp - 0x84], edi
cmp ebx, 0xffffffff
mov dword [ebp - 0xf8], esi
cmove ebx, esi
mov dword [ebp - 0x10], 0xffffffff
push dword [ebp - 0x44]
mov edi, dword [ebp - 0x108]
push edi
call fcn.100a6530
add esp, 8
xorps xmm6, xmm6
xorps xmm2, xmm2
xorps xmm4, xmm4
xorps xmm3, xmm3
cmp eax, edi
jae 0x100e4419
mov edx, dword [0x10357698]
mov ecx, dword [edx + 0x18dc]
movss xmm0, dword [edx + 0x18e0]
divss xmm0, dword [ecx + 0x10]
lea edx, [ecx + 0xc]
mov dword [ebp - 0x70], edx
xorps xmm3, xmm3
xorps xmm4, xmm4
xorps xmm2, xmm2
jmp 0x100e43f0
lea esi, [edx*4]
add esi, dword [ecx + 8]
cmp dword [ecx], edx
cmovle esi, dword [ebp - 0x70]
movss xmm1, dword [esi]
mulss xmm1, xmm0
addss xmm3, xmm1
cmp eax, edi
jae 0x100e4419
movzx edx, word [eax]
add eax, 2
cmp edx, 0xd
je 0x100e43ec
cmp edx, 0xa
jne 0x100e43d0
movaps xmm2, xmm3
cmpless xmm2, xmm4
andps xmm4, xmm2
andnps xmm2, xmm3
orps xmm2, xmm4
xorps xmm3, xmm3
movaps xmm4, xmm2
jmp 0x100e43ec
cmpltss xmm4, xmm3
mov eax, dword [ebp - 0x24]
movss xmm5, dword [eax + 0x18e0]
movaps xmm1, xmm5
xorps xmm7, xmm7
test ebx, ebx
mov eax, dword [ebp - 0xf8]
js 0x100e453f
movups xmmword [ebp - 0x178], xmm2
movups xmmword [ebp - 0x70], xmm3
movups xmmword [ebp - 0x140], xmm5
movups xmmword [ebp - 0x108], xmm4
mov dword [ebp - 0x10], 0xffffffff
push dword [ebp - 0x44]
mov esi, dword [ebp - 0xc4]
push esi
call fcn.100a6530
add esp, 8
xorps xmm0, xmm0
xorps xmm6, xmm6
xorps xmm1, xmm1
cmp eax, esi
jae 0x100e44fc
mov edx, dword [0x10357698]
mov ecx, dword [edx + 0x18dc]
movss xmm2, dword [edx + 0x18e0]
divss xmm2, dword [ecx + 0x10]
lea edi, [ecx + 0xc]
xorps xmm1, xmm1
xorps xmm6, xmm6
xorps xmm0, xmm0
jmp 0x100e44d3
lea esi, [edx*4]
add esi, dword [ecx + 8]
cmp dword [ecx], edx
cmovle esi, edi
movss xmm3, dword [esi]
mulss xmm3, xmm2
addss xmm1, xmm3
cmp eax, dword [ebp - 0xc4]
jae 0x100e44fc
movzx edx, word [eax]
add eax, 2
cmp edx, 0xd
je 0x100e44cb
cmp edx, 0xa
jne 0x100e44b0
movaps xmm0, xmm1
cmpless xmm0, xmm6
andps xmm6, xmm0
andnps xmm0, xmm1
orps xmm0, xmm6
xorps xmm1, xmm1
movaps xmm6, xmm0
jmp 0x100e44cb
cmpltss xmm6, xmm1
andps xmm1, xmm6
xorps xmm7, xmm7
cvtsi2ss xmm7, ebx
andnps xmm6, xmm0
orps xmm6, xmm1
mov eax, dword [ebp - 0x24]
movss xmm1, dword [eax + 0x18e0]
mulss xmm7, xmm1
movups xmm4, xmmword [ebp - 0x108]
movups xmm5, xmmword [ebp - 0x140]
mov eax, dword [ebp - 0xf8]
movups xmm3, xmmword [ebp - 0x70]
movups xmm2, xmmword [ebp - 0x178]
andps xmm3, xmm4
andnps xmm4, xmm2
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [ebp - 0x84]
cmp dword [ebp - 0x30], 0
jne 0x100e4562
xorps xmm1, xmm1
movups xmmword [ebp - 0xf8], xmm1
jmp 0x100e4577
movaps xmm2, xmm1
xorps xmm1, xmm1
cvtsi2ss xmm1, eax
mulss xmm2, xmm1
movups xmmword [ebp - 0xf8], xmm2
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x4c]
movups xmm1, xmmword [ebp - 0x60]
mov edi, dword [ebp - 0x44]
orps xmm4, xmm3
mulss xmm5, xmm0
movups xmm0, xmmword [ebp - 0x80]
shufps xmm0, xmm0, 0x55
movups xmmword [ebp - 0x60], xmm0
cmp byte [ebp - 0x34], 0
movups xmmword [ebp - 0x108], xmm4
movups xmmword [ebp - 0x140], xmm5
je 0x100e476b
mov esi, dword [ebp - 0x20]
cmp byte [esi + 0xe64], 0
je 0x100e476b
test eax, 0x1000
jne 0x100e4607
movss xmm0, dword [0x1015613c]
mulss xmm0, xmm1
movaps xmm3, xmm1
mov eax, dword [ebp - 0x20]
movss xmm1, dword [eax + 0x38]
ucomiss xmm1, xmm4
jbe 0x100e46e4
movaps xmm1, xmm4
subss xmm1, xmm0
xorps xmm0, xmm0
movaps xmm2, xmm1
cmpless xmm2, xmm0
andnps xmm2, xmm1
cvttps2dq xmm0, xmm2
jmp 0x100e46f8
mov eax, dword [ebp - 0x20]
mov dword [eax + 0x38], 0
jmp 0x100e4703
mov esi, dword [ebp - 0x50]
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
mov ecx, dword [ebp - 0x40]
add esp, 4
mov ebx, eax
add ebx, esi
xorps xmm0, xmm0
mov edx, esi
mov eax, ebx
sub eax, edx
cmp eax, 0x1fffff
jg 0x100e46c6
lea esi, [ebp - 0x188]
movups xmmword [ebp - 0x150], xmm0
movzx eax, cl
mov dword [ebp - 0x10], 0xffffffff
push 0x3f800000
push eax
mov edi, edx
call fcn.100a72f0
add esp, 8
mov ecx, dword [ebp - 0x4c]
mov ecx, dword [ecx + 0x290]
mov edx, dword [ebp - 0x24]
movss xmm0, dword [edx + 0x18e0]
mov edx, dword [edx + 0x18dc]
sub esp, 0x20
mov dword [esp + 0x1c], esi
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x110]
mov dword [esp + 8], eax
mov dword [esp], edx
mov dword [ebp - 0x48], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edi
movss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
call fcn.100c3660
movups xmm3, xmmword [ebp - 0x150]
mov dword [ebp - 0x50], edi
mov esi, dword [ebp + 8]
jmp 0x100e4db5
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x50], edx
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0x38]
cmp byte [ebp - 0xc8], 0
je 0x100e4da7
jmp 0x100e4dcb
movaps xmm2, xmm4
subss xmm2, xmm3
ucomiss xmm2, xmm1
jb 0x100e4703
addss xmm0, xmm2
cvttps2dq xmm0, xmm0
cvtdq2ps xmm0, xmm0
mov eax, dword [ebp - 0x20]
movss dword [eax + 0x38], xmm0
cmp dword [ebp - 0x30], 0
je 0x100e4761
movss xmm0, dword [edx + 0x54]
movaps xmm2, xmm5
subss xmm2, dword [ecx + 0x18e0]
ucomiss xmm0, xmm2
jbe 0x100e472e
xorps xmm3, xmm3
movaps xmm1, xmm2
cmpless xmm1, xmm3
andnps xmm1, xmm2
jmp 0x100e4744
movaps xmm2, xmm5
subss xmm2, dword [ebp - 0x1c8]
ucomiss xmm2, xmm0
movaps xmm1, xmm0
jb 0x100e4744
movaps xmm1, xmm2
subss xmm0, xmm1
movups xmm2, xmmword [ebp - 0x60]
addss xmm2, xmm0
movups xmmword [ebp - 0x60], xmm2
movss dword [ebp - 0x10c], xmm2
movss dword [edx + 0x54], xmm1
mov eax, dword [ebp - 0x20]
mov byte [eax + 0xe64], 0
mov eax, dword [ebp - 0x20]
movss xmm0, dword [eax + 0x38]
movups xmmword [ebp - 0xc4], xmm0
cmp byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
je 0x100e4a43
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x40]
mov esi, dword [ecx + 0x44]
cmp eax, esi
mov ebx, esi
cmovl ebx, eax
cmovg esi, eax
cmp byte [ebp - 0x34], 0
movups xmmword [ebp - 0x178], xmm6
movups xmmword [ebp - 0x70], xmm7
jne 0x100e47b5
movss xmm0, dword [0x1015c768]
jmp 0x100e47bd
movss xmm0, dword [0x10154df4]
mov dword [ebp - 0x10], 0xffffffff
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0x2a
call fcn.100a72f0
add esp, 8
mov dword [ebp - 0x44], eax
xorps xmm0, xmm0
movss dword [ebp - 0x3c], xmm0
cmp dword [ebp - 0x30], 0
jne 0x100e47fa
movss xmm0, dword [0x10154cc8]
movss dword [ebp - 0x3c], xmm0
cmp ebx, esi
mov ecx, dword [ebp - 0x40]
movups xmm6, xmmword [ebp - 0x1a8]
movups xmm4, xmmword [ebp - 0x178]
movups xmm7, xmmword [ebp - 0x70]
jge 0x100e4a43
xorps xmm1, xmm1
cmp dword [ebp - 0x30], 0
jne 0x100e4828
movss xmm1, dword [0x10156168]
lea esi, [edi + esi*2]
lea ebx, [edi + ebx*2]
addss xmm4, dword [ebp - 0x80]
addss xmm7, dword [ebp - 0x60]
mov eax, dword [ebp - 0x24]
movss xmm0, dword [eax + 0x18e0]
shufps xmm1, xmm1, 0
movups xmmword [ebp - 0x1c8], xmm1
jmp 0x100e4860
addss xmm7, xmm0
movups xmm4, xmmword [ebp - 0x80]
cmp ebx, esi
jae 0x100e4a43
movaps xmm1, xmm6
addss xmm1, xmm0
ucomiss xmm7, xmm1
ja 0x100e4a43
movups xmm1, xmmword [ebp - 0xd8]
ucomiss xmm1, xmm7
jbe 0x100e4893
nop dword [eax]
cmp ebx, esi
jae 0x100e4850
lea eax, [ebx + 2]
cmp word [ebx], 0xa
mov ebx, eax
jne 0x100e4880
mov ebx, eax
jmp 0x100e4850
xorps xmm2, xmm2
cmp ebx, esi
jae 0x100e48f3
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x18dc]
movss xmm2, dword [eax + 0x18e0]
divss xmm2, dword [ecx + 0x10]
lea edx, [ecx + 0xc]
xorps xmm1, xmm1
jmp 0x100e48c7
lea ebx, [eax + 2]
cmp ebx, esi
jae 0x100e48f8
mov eax, ebx
movzx ebx, word [ebx]
cmp ebx, 0xd
je 0x100e48c0
cmp ebx, 0xa
je 0x100e4902
lea edi, [ebx*4]
add edi, dword [ecx + 8]
cmp dword [ecx], ebx
cmovle edi, edx
movss xmm3, dword [edi]
mulss xmm3, xmm2
addss xmm1, xmm3
jmp 0x100e48c0
xorps xmm1, xmm1
jmp 0x100e491b
add eax, 2
xorps xmm2, xmm2
mov ebx, eax
jmp 0x100e4918
xorps xmm3, xmm3
movaps xmm2, xmm1
cmpless xmm2, xmm3
andnps xmm2, xmm1
add eax, 2
mov ebx, eax
xorps xmm1, xmm1
mov ecx, dword [ebp - 0x40]
maxss xmm1, xmm2
xorps xmm2, xmm2
ucomiss xmm2, xmm1
jb 0x100e4955
mov eax, dword [ebp - 0x24]
mov eax, dword [eax + 0x18dc]
mov ecx, dword [eax + 8]
sub ecx, 0xffffff80
lea edx, [eax + 0xc]
cmp dword [eax], 0x21
cmovge edx, ecx
mov ecx, dword [ebp - 0x40]
movss xmm1, dword [edx]
mulss xmm1, dword [0x10154044]
cvttps2dq xmm1, xmm1
cvtdq2ps xmm1, xmm1
subss xmm4, dword [ebp - 0xc4]
movss xmm3, dword [ebp - 0x3c]
subss xmm3, xmm0
xorps xmm2, xmm2
movss xmm2, xmm3
movaps xmm3, xmm7
movlhps xmm3, xmm4
movups xmm5, xmmword [ebp - 0x1c8]
shufps xmm4, xmm5, 0x30
shufps xmm3, xmm4, 0x82
unpcklps xmm1, xmm7
shufps xmm2, xmm1, 0x41
addps xmm2, xmm3
movups xmm4, xmmword [ebp - 0xe8]
movaps xmm3, xmm4
cmpleps xmm3, xmm2
movaps xmm1, xmm2
cmpltps xmm1, xmm4
movsd xmm1, xmm3
andps xmm2, xmm1
andnps xmm1, xmm4
orps xmm1, xmm2
pshufd xmm2, xmm1, 0xff
ucomiss xmm2, dword [ebp - 0xd8]
movups xmmword [ebp - 0xb4], xmm1
jbe 0x100e4850
pshufd xmm2, xmm1, 0x55
ucomiss xmm6, xmm2
jbe 0x100e4850
pshufd xmm2, xmm1, 0xee
ucomiss xmm2, dword [ebp - 0x130]
jbe 0x100e4850
movups xmm2, xmmword [ebp - 0x1b8]
ucomiss xmm2, xmm1
jbe 0x100e4850
mov eax, dword [ebp - 0x4c]
mov ecx, dword [eax + 0x290]
mov dword [ebp - 0x10], 0xffffffff
push 0xf
push 0
push dword [ebp - 0x44]
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0xb4]
push eax
movups xmmword [ebp - 0x70], xmm7
call fcn.100c2520
movups xmm7, xmmword [ebp - 0x70]
movups xmm6, xmmword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
movss xmm0, dword [eax + 0x18e0]
jmp 0x100e4850
xor esi, esi
cmp dword [ebp - 0x30], 0
mov edi, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x4c]
jne 0x100e4a76
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0x50]
cmp eax, 0x1fffff
movups xmm3, xmmword [ebp - 0x150]
movups xmm0, xmmword [ebp - 0xf8]
jg 0x100e4b09
lea esi, [ebp - 0x188]
movzx eax, cl
mov dword [ebp - 0x10], 0xffffffff
push 0x3f800000
push eax
call fcn.100a72f0
add esp, 8
mov ecx, dword [ebx + 0x290]
movups xmm0, xmmword [ebp - 0x80]
subss xmm0, dword [ebp - 0xc4]
movss dword [ebp - 0xb4], xmm0
movups xmm0, xmmword [ebp - 0x60]
movss dword [ebp - 0xb0], xmm0
movss xmm0, dword [edi + 0x18e0]
mov edx, dword [edi + 0x18dc]
sub esp, 0x20
mov dword [esp + 0x1c], esi
mov dword [esp + 0xc], eax
lea eax, [ebp - 0xb4]
mov dword [esp + 8], eax
mov dword [esp], edx
mov eax, dword [ebp - 0x48]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x50]
mov dword [esp + 0x10], eax
movss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
call fcn.100c3660
movups xmm3, xmmword [ebp - 0x150]
movups xmm0, xmmword [ebp - 0xf8]
unpcklps xmm3, xmm0
cmp byte [ebp - 0x34], 0
mov esi, dword [ebp + 8]
je 0x100e4db5
movss xmm0, dword [edi + 0x18]
mov eax, dword [ebp - 0x20]
addss xmm0, dword [eax + 0xe60]
movss dword [eax + 0xe60], xmm0
cmp byte [edi + 0xb2], 0
movups xmm1, xmmword [ebp - 0x80]
movups xmm2, xmmword [ebp - 0x60]
movlhps xmm2, xmm1
shufps xmm2, xmm1, 0xe2
mov al, 1
mov edi, dword [ebp + 0x1c]
je 0x100e4ba8
xorps xmm1, xmm1
ucomiss xmm1, xmm0
jae 0x100e4ba8
cvtss2sd xmm0, xmm0
sub esp, 0x10
movsd qword [esp], xmm0
mov dword [esp + 0xc], 0x3ff33333
mov dword [esp + 8], 0x40000000
movups xmmword [ebp - 0x150], xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_fmod
movups xmm3, xmmword [ebp - 0x150]
add esp, 0x10
fstp dword [ebp - 0x15c]
movss xmm0, dword [0x1015c58c]
ucomiss xmm0, dword [ebp - 0x15c]
setae al
movsd xmm2, qword [ebp - 0x110]
movups xmm4, xmmword [ebp - 0x108]
movups xmm0, xmmword [ebp - 0x140]
unpcklps xmm4, xmm0
addps xmm4, xmm2
movaps xmm5, xmm4
shufps xmm5, xmm4, 0x55
movss xmm6, dword [0x10163690]
addss xmm6, xmm5
mov ecx, dword [ebp - 0x24]
movss xmm0, dword [ecx + 0x18e0]
movups xmm1, xmmword [ebp - 0xc4]
unpcklps xmm1, xmm0
subps xmm4, xmm1
movaps xmm0, xmmword [0x101636a0]
addps xmm0, xmm4
movss dword [ebp - 0xb4], xmm4
movaps xmm1, xmm0
shufps xmm1, xmm0, 0xe1
movlps qword [ebp - 0xb0], xmm1
movss dword [ebp - 0xa8], xmm6
test al, al
mov ebx, dword [ebp - 0x38]
je 0x100e4ceb
ucomiss xmm6, dword [ebp - 0x184]
jbe 0x100e4ceb
movss xmm1, dword [ebp - 0x17c]
movaps xmm2, xmm0
shufps xmm2, xmm0, 0x55
ucomiss xmm1, xmm2
jbe 0x100e4ceb
ucomiss xmm0, dword [ebp - 0x188]
jbe 0x100e4ceb
movss xmm0, dword [ebp - 0x180]
ucomiss xmm0, xmm4
jbe 0x100e4ceb
mov eax, dword [ebp - 0x4c]
mov edi, dword [eax + 0x290]
mov dword [ebp - 0x10], 0xffffffff
push 0x3f800000
push 0
movups xmmword [ebp - 0x150], xmm3
movups xmmword [ebp - 0x108], xmm4
movups xmmword [ebp - 0xc4], xmm5
movss dword [ebp - 0x20], xmm6
call fcn.100a72f0
add esp, 8
movups xmm0, xmmword [ebp - 0x108]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x20]
movss dword [ebp - 0x154], xmm0
lea edx, [ebp - 0x158]
lea esi, [ebp - 0xb4]
mov ecx, edi
mov ebx, dword [ebp - 0x38]
push 0x3f800000
push eax
push edx
push esi
mov esi, dword [ebp + 8]
call fcn.100c22c0
movups xmm5, xmmword [ebp - 0xc4]
movups xmm4, xmmword [ebp - 0x108]
mov edi, dword [ebp + 0x1c]
movups xmm3, xmmword [ebp - 0x150]
test edi, 0x4000
je 0x100e4e92
cmp dword [ebp - 0x30], 0
je 0x100e4dc2
mov eax, dword [ebp - 0x24]
movd xmm0, dword [eax + 0x18e0]
movq xmm0, xmm0
xorps xmm1, xmm1
shufps xmm0, xmm1, 0xe2
addps xmm3, xmm0
movlps qword [ebp - 0x158], xmm3
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x1a18]
mov byte [ecx + 0x7c], 1
mov eax, dword [eax + 0x1a18]
cmp byte [eax + 0x7f], 0
mov dword [ebp - 0x10], 0xffffffff
jne 0x100e4d94
mov ecx, dword [eax + 0xc8]
mov edx, dword [eax + 0xcc]
movsd xmm0, qword [eax + 0xc8]
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xb0], edx
addps xmm3, xmm0
movlps qword [ebp - 0xac], xmm3
lea eax, [ebp - 0x158]
push 0xbf800000
push eax
call fcn.100b5830
add esp, 8
lea eax, [ebp - 0xb4]
push 0
push 0
push eax
call fcn.100b5a00
add esp, 0xc
call fcn.100b55b0
call fcn.100bbad0
cmp byte [ebp - 0xc8], 0
jne 0x100e4dcb
mov dword [ebp - 0x10], 0xffffffff
call fcn.100baae0
jmp 0x100e4df3
mov ebx, dword [ebp - 0x38]
cmp dword [ebp - 0x30], 0
jne 0x100e4d01
cmp byte [ebp - 0xc8], 0
je 0x100e4da7
mov eax, dword [ebp - 0x24]
cmp byte [eax + 0x2e48], 0
je 0x100e4df3
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x110]
push dword [ebp - 0x48]
push dword [ebp - 0x50]
push eax
call fcn.100a7bd0
add esp, 0xc
movss xmm0, dword [ebp - 0x168]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jbe 0x100e4e57
movss xmm0, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x24]
addss xmm0, dword [eax + 0x155c]
movss xmm1, dword [ebp - 0x118]
addss xmm1, dword [eax + 0x1570]
mov dword [ebp - 0x10], 0xffffffff
sub esp, 0x14
mov dword [esp + 8], esi
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0
call fcn.100a79f0
add esp, 0x14
mov edx, dword [ebp + 0x1c]
mov eax, edx
shr eax, 0x15
and eax, 1
mov ecx, dword [ebp - 0x28]
xor cl, 1
or cl, al
jne 0x100e4e7f
mov dword [ebp - 0x10], 0xffffffff
push ebx
call fcn.100a9d60
mov edx, dword [ebp + 0x1c]
add esp, 4
test dl, 0x20
movzx ecx, byte [ebp - 0x28]
movzx eax, byte [ebp - 0x2c]
cmove eax, ecx
jmp 0x100e257e
mov eax, dword [ebp - 0x24]
subss xmm5, dword [eax + 0x18e0]
addss xmm4, dword [0x10154cc8]
movss dword [eax + 0x2e0c], xmm4
movss dword [eax + 0x2e10], xmm5
cmp dword [ebp - 0x30], 0
jne 0x100e4d01
jmp 0x100e4dc2
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x40]
test ecx, ecx
js 0x100e4f26
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
cmp dword [ebp - 0x30], 0
je 0x100e4f21
test al, al
je 0x100e4f21
cmp byte [edi], 0
je 0x100e504a
mov ecx, dword [ebp - 0x4c]
movss xmm0, dword [ecx + 0x54]
mov eax, dword [ebp - 0x24]
subss xmm0, dword [eax + 0x18e0]
xorps xmm1, xmm1
cmpless xmm1, xmm0
andps xmm1, xmm0
sub esp, 8
mov dword [esp], ecx
movss dword [esp + 4], xmm1
jmp 0x100e4f88
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x44]
test ecx, ecx
js 0x100e4fbf
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
cmp dword [ebp - 0x30], 0
je 0x100e4fba
test al, al
je 0x100e4fba
cmp byte [edi], 0
je 0x100e5090
call fcn.100bc0c0
fstp dword [ebp - 0x160]
mov ecx, dword [ebp - 0x4c]
movss xmm0, dword [ecx + 0x54]
mov eax, dword [ebp - 0x24]
addss xmm0, dword [eax + 0x18e0]
minss xmm0, dword [ebp - 0x160]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], ecx
call fcn.100bc0d0
add esp, 8
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x70]
mov esi, dword [ebp - 0x20]
jmp 0x100e4005
mov dword [ebp - 0x84], 0
mov edx, edi
jmp 0x100e3e93
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x50]
test ecx, ecx
js 0x100e4ff2
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e4fed
movzx eax, byte [edi]
add eax, eax
or eax, esi
or eax, 0x200004
jmp 0x100e3fe9
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x54]
test ecx, ecx
js 0x100e5062
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e505d
movzx eax, byte [edi]
add eax, eax
or eax, esi
or eax, 0x200005
jmp 0x100e3fe9
mov edx, dword [ebp + 0x1c]
cmp byte [ebp - 0xd8], 0
je 0x100e3db7
jmp 0x100e3c0e
mov edx, dword [ebp + 0x1c]
cmp byte [ebp - 0xd8], 0
je 0x100e3e49
jmp 0x100e3e23
movzx eax, byte [ebp - 0x44]
shl eax, 2
or eax, esi
or eax, 0x200002
jmp 0x100e3fe9
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x5c]
test ecx, ecx
js 0x100e50a8
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test dword [ebp + 0x1c], 0x4000
jne 0x100e50a3
test al, al
je 0x100e50a3
or esi, 0x200008
jmp 0x100e50fa
movzx eax, byte [ebp - 0x44]
shl eax, 2
or eax, esi
or eax, 0x200003
jmp 0x100e3fe9
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x60]
test ecx, ecx
js 0x100e510a
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test dword [ebp + 0x1c], 0x4000
jne 0x100e5105
test al, al
je 0x100e5105
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x40]
cmp eax, dword [ecx + 0x44]
jne 0x100e50f4
mov eax, 0x60000c
cmp byte [ebp - 0x140], 0
je 0x100e5309
mov ecx, dword [ebp - 0x20]
push eax
call fcn.100e5540
or esi, 0x200009
mov ecx, dword [ebp - 0x20]
push esi
mov esi, ecx
jmp 0x100e3fef
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x68]
test ecx, ecx
mov esi, dword [ebp - 0x20]
js 0x100e512f
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test al, al
jne 0x100e514c
mov eax, dword [0x10357698]
mov ecx, dword [eax + 0x70]
test ecx, ecx
js 0x100e51b3
mov dword [ebp - 0x10], 0xffffffff
push 1
push ecx
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e51ae
cmp dword [ebp - 0x30], 0
je 0x100e519b
movzx ecx, byte [edi]
movzx eax, byte [ebp - 0x70]
mov edi, dword [ebp + 0x1c]
test edi, 0x800
movups xmm1, xmmword [ebp - 0x60]
jne 0x100e52a6
test cl, cl
mov edx, 1
cmovne eax, edx
mov dword [ebp - 0x28], 0
test edi, 0x4000
jne 0x100e53e8
mov edx, ecx
mov dword [ebp - 0x2c], edx
test cl, cl
je 0x100e52d3
jmp 0x100e4009
mov al, 1
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], 0
mov al, 1
jmp 0x100e4005
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x6c]
test eax, eax
js 0x100e51e3
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e51e3
mov al, 1
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], 0
mov al, 1
jmp 0x100e4005
mov eax, dword [ebp - 0x1a8]
or bl, al
cmp bl, 1
jne 0x100e5215
movzx eax, al
xor eax, 0x20000b
mov dword [ebp - 0x10], 0xffffffff
mov ecx, esi
push eax
call fcn.100e5540
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x44], eax
mov dword [esi + 0x40], eax
jmp 0x100e3ff4
cmp byte [ebp - 0xd8], 0
je 0x100e5260
mov eax, dword [0x10357698]
mov eax, dword [eax + 0x74]
test eax, eax
js 0x100e5260
mov dword [ebp - 0x10], 0xffffffff
push 1
push eax
call fcn.100b4f70
add esp, 8
test al, al
je 0x100e5260
mov dword [esi + 0x40], 0
mov eax, dword [esi + 4]
mov dword [esi + 0x44], eax
mov dword [esi + 0x3c], eax
mov byte [esi + 0x4b], 0
mov byte [esi + 0xe64], 1
jmp 0x100e3ff4
mov eax, dword [ebp - 0x80]
or al, byte [ebp - 0xf8]
cmp al, 1
jne 0x100e5345
mov eax, dword [ebp - 0x24]
cmp dword [eax + 0xd4], 0
je 0x100e5455
mov ecx, dword [ebp - 0x20]
mov eax, dword [ecx + 0x40]
mov ebx, dword [ecx + 0x44]
cmp eax, ebx
jne 0x100e53f0
mov eax, dword [ebp - 0x20]
mov ebx, dword [eax + 4]
mov dword [ebp - 0x10], 0xffffffff
xor edx, edx
jmp 0x100e5401
mov edx, ecx
xor dl, 1
mov dword [ebp - 0x2c], edx
test cl, cl
mov edx, 1
cmove eax, edx
mov dword [ebp - 0x28], 0
test edi, 0x4000
jne 0x100e4009
test cl, cl
je 0x100e4009
mov dword [ebp - 0xb4], 0xa
lea ecx, [ebp - 0xb4]
mov edx, dword [ebp + 0x1c]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
call fcn.100e6790
add esp, 8
test al, al
je 0x100e3ff4
mov ecx, esi
push dword [ebp - 0xb4]
jmp 0x100e3fef
cmp byte [ebp - 0x28], 0
je 0x100e50f4
mov eax, dword [ebp - 0x24]
cmp byte [eax + 0x103], 0
je 0x100e50f4
mov eax, dword [ebp - 0x178]
cmp byte [eax], 0
jne 0x100e50f4
cmp byte [edi], 0
jne 0x100e50f4
mov eax, 0x600004
jmp 0x100e50eb
mov dword [ebp - 0x28], 0
cmp byte [ebp - 0x84], 0
je 0x100e4f97
mov dword [ebp - 0x10], 0xffffffff
call fcn.100aa320
test eax, eax
je 0x100e4f90
mov edi, eax
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
add eax, eax
add eax, 2
push eax
call fcn.100a64d0
add esp, 4
mov dword [ebp - 0x80], eax
cmp byte [edi], 0
je 0x100e54ef
xor esi, esi
lea ebx, [ebp - 0xb4]
jmp 0x100e53a5
cmp byte [edi], 0
je 0x100e54c5
push 0
push edi
push ebx
call fcn.100a6240
add esp, 0xc
cmp dword [ebp - 0xb4], 0
je 0x100e54c5
add edi, eax
mov ecx, ebx
mov edx, dword [ebp + 0x1c]
push dword [ebp + 0x24]
push dword [ebp + 0x20]
call fcn.100e6790
add esp, 8
test al, al
je 0x100e539c
movzx eax, word [ebp - 0xb4]
mov ecx, dword [ebp - 0x80]
mov word [ecx + esi*2], ax
inc esi
jmp 0x100e539c
mov dword [ebp - 0x2c], ecx
jmp 0x100e4009
mov ecx, ebx
cmovl ecx, eax
mov edx, ecx
cmovg ebx, eax
mov dword [ebp - 0x10], 0xffffffff
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x14]
lea ecx, [eax + ebx*2]
mov dword [ebp - 0x80], edx
lea eax, [eax + edx*2]
push ecx
push eax
call fcn.100a6b20
add esp, 8
mov edi, eax
inc edi
push edi
call fcn.100a64d0
add esp, 4
mov esi, eax
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x14]
lea ecx, [eax + ebx*2]
mov edx, dword [ebp - 0x80]
lea eax, [eax + edx*2]
push ecx
push eax
push edi
push esi
call fcn.100a6a50
add esp, 0x10
push esi
call fcn.100aa350
add esp, 4
push esi
call fcn.100a6500
add esp, 4
mov dword [ebp - 0x28], 0
cmp byte [ebp - 0xf8], 0
je 0x100e4f97
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + 0x40]
mov eax, dword [eax + 0x44]
cmp ecx, eax
jne 0x100e548f
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 0x40], 0
mov eax, dword [ecx + 4]
mov dword [ecx + 0x44], eax
mov dword [ecx + 0x3c], eax
mov byte [ecx + 0x4b], 0
xor ecx, ecx
mov edx, dword [ebp - 0x20]
mov byte [edx + 0xe64], 1
mov dword [ebp - 0x28], 0
cmp ecx, eax
je 0x100e4f97
mov esi, dword [ebp - 0x20]
lea edx, [esi + 0x3c]
mov dword [ebp - 0x10], 0xffffffff
mov ecx, esi
call fcn.100e9e50
mov byte [esi + 0x4b], 0
jmp 0x100e3ff4
mov eax, dword [ebp - 0x80]
mov word [eax + esi*2], 0
test esi, esi
jle 0x100e54f7
mov edi, dword [ebp - 0x20]
lea edx, [edi + 0x3c]
mov ecx, edi
push esi
push dword [ebp - 0x80]
call fcn.100e6900
add esp, 8
mov byte [edi + 0xe64], 1
jmp 0x100e54f7
mov eax, dword [ebp - 0x80]
mov word [eax], 0
push dword [ebp - 0x80]
call fcn.100a6500
add esp, 4
jmp 0x100e4f90