Function at 0x100ea410
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using base64
Encode data using xor
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100fd03d
mov eax, dword fs:[0]
push eax
sub esp, 0x370
mov eax, dword [0x101110c0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
xor eax, eax
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x2c4], eax
mov dword [ebp - 0x238], ebx
mov eax, dword [ebx + 8]
lea ecx, [ebx + 8]
mov eax, dword [eax + 0x28]
call eax
mov edx, eax
imul ecx, edx, 0xe8
mov dword [ebp - 0x2f8], edx
lea eax, [ecx + 0x10147598]
mov dword [ebp - 0x26c], eax
test eax, eax
je 0x100ee16f
imul eax, edx, 0x2c
lea edi, [edx*4 + 0x10146234]
mov edx, dword [0x101ae838]
add edx, 0xffffffd5
xor edx, 0x2f303c6b
add eax, 0x1014640c
mov dword [ebp - 0x270], eax
mov eax, dword [0x101ae65c]
mov ecx, dword [edx + ebx]
movss xmm0, dword [eax + 0x14]
mov eax, dword [0x10130e2c]
mulss xmm0, dword [0x10105ecc]
movss dword [ebp - 0x28], xmm0
cmp ecx, dword [edx + eax]
je 0x100ea4d3
mov byte [ebp - 0x1fe], 1
jmp 0x100ea4e9
mov ecx, dword [0x101ae6d4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
setne byte [ebp - 0x1fe]
mov eax, dword [ebx + 8]
lea ecx, [ebx + 8]
mov eax, dword [eax + 0x24]
call eax
cmp byte [0x1013b4c0], 0
mov dh, al
mov byte [ebp - 0x1fd], dh
je 0x100ea523
cmp byte [ebp - 0x1fe], 0
je 0x100ea523
test dh, dh
jne 0x100ea523
mov eax, dword [0x101ae8b8]
add eax, 0xffffffb5
xor eax, 0x2f303c8b
mov byte [eax + ebx], 1
mov eax, dword [0x101ae860]
xorps xmm1, xmm1
add eax, 0xffffffcb
movss dword [ebp - 0x260], xmm1
xor eax, 0x2f303c75
cmp dword [eax + ebx], 0
je 0x100ea5c5
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x20], 1
push eax
mov ecx, 0x10137498
call fcn.10031b10
mov ecx, 0x10137498
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x10137498
push eax
call fcn.10031b10
mov ecx, dword [esi]
movss xmm1, dword [ebp - 0x260]
cmp ecx, dword [eax]
je 0x100ea5b4
movss xmm0, dword [edi]
subss xmm0, dword [ebp - 0x28]
mov dh, byte [ebp - 0x1fd]
movss dword [edi], xmm0
jmp 0x100ea5dd
mov dh, byte [ebp - 0x1fd]
movaps xmm0, xmm1
mov dword [edi], 0
jmp 0x100ea5dd
movss xmm0, dword [edi]
test dh, dh
je 0x100ea5d4
subss xmm0, dword [ebp - 0x28]
jmp 0x100ea5d9
addss xmm0, dword [ebp - 0x28]
movss dword [edi], xmm0
comiss xmm0, dword [0x10105df4]
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x3f800000
cmovbe eax, edi
cmp byte [ebp - 0x1fe], 0
movss xmm0, dword [eax]
maxss xmm0, xmm1
movss dword [edi], xmm0
je 0x100ea613
cmp byte [0x10137514], 0
je 0x100ea613
mov dl, 1
jmp 0x100ea615
xor dl, dl
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x100ea626
test dl, dl
je 0x100ee16f
mov ecx, dword [0x101ae894]
mov eax, dword [0x101ae65c]
add ecx, 0xffffffbe
xor ecx, 0x2f303c82
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [ecx + ebx]
test dh, dh
je 0x100ea655
comiss xmm2, dword [0x10105ef4]
ja 0x100ee16f
mulss xmm0, dword [0x10105f84]
cmp byte [ebp - 0x1fe], 0
mov eax, dword [0x101373f8]
cmovne eax, dword [0x10137368]
mov dword [ebp - 0x30], eax
cvttss2si ecx, xmm0
mov dword [ebp - 0x274], ecx
mov ebx, ecx
mov dword [ebp - 0x20c], ebx
test dh, dh
je 0x100ea700
test dl, dl
je 0x100ea700
movss xmm0, dword [0x10105ed4]
mov ecx, 0x70
comiss xmm2, xmm0
mov ebx, 0x50
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x20c], ebx
jbe 0x100ea6f3
subss xmm2, xmm0
movss xmm0, dword [0x10105f70]
movaps xmm1, xmm2
mulss xmm2, dword [0x10105f00]
mulss xmm1, dword [0x10105f14]
subss xmm0, xmm1
cvttss2si ecx, xmm0
movss xmm0, dword [0x10105f58]
subss xmm0, xmm2
mov dword [ebp - 0x274], ecx
cvttss2si ebx, xmm0
mov dword [ebp - 0x20c], ebx
mov dword [ebp - 0x18], 0xff828282
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x30], eax
mov byte [ebp - 0x2d], cl
lea edx, [ebp - 0x1fc]
mov ecx, dword [0x101ae5fc]
push edx
push dword [ebp - 0x2f8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x100ee16f
push dword [ebp - 0x274]
mov edi, dword [ebp - 0x238]
mov ecx, 0x10146238
push edi
call fcn.100e9f00
lea eax, [ebp - 0x40]
mov ecx, 0x10146238
push eax
push edi
call fcn.100eee40
test al, al
je 0x100ee16f
push edi
mov ecx, 0x10146238
call fcn.100effc0
cmp byte [ebp - 0x1fe], 0
lea eax, [ebp - 0x1c]
mov ecx, 0x10137f38
push eax
je 0x100ea7bb
mov dword [ebp - 0x20], 0
call fcn.10031b10
mov ecx, 0x10137f38
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x10137f38
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x100ea804
jmp 0x100ea81e
mov dword [ebp - 0x20], 1
call fcn.10031b10
mov ecx, 0x10137f38
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x10137f38
push eax
call fcn.10031b10
mov edx, dword [esi]
cmp edx, dword [eax]
je 0x100ea875
push dword [ebp - 0x274]
mov ecx, 0x10146238
push edi
call fcn.100ef1c0
cmp byte [ebp - 0x1fe], 0
je 0x100ea875
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push eax
mov ecx, 0x101372d0
call fcn.10031b10
mov ecx, 0x101372d0
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x101372d0
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x100ea8cb
jmp 0x100ea949
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x20], 1
push eax
mov ecx, 0x101372d0
call fcn.10031b10
mov ecx, 0x101372d0
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x101372d0
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100eaa0d
push dword [ebp - 0x30]
mov ecx, dword [ebp - 0x3c]
mov edx, ecx
mov eax, dword [ebp - 0x38]
mov edi, dword [ebp - 0x40]
mov byte [ebp - 0x15], bl
mov ebx, dword [ebp - 0x34]
mov dword [ebp - 0x44], ecx
mov ecx, edi
push ebx
push eax
mov word [ebp - 0x18], 0xa0a
mov byte [ebp - 0x16], 0xa
mov dword [ebp - 0x20], eax
call fcn.100dfe90
mov esi, dword [ebp - 0x18]
lea eax, [ebx + 2]
mov edx, dword [ebp - 0x44]
lea ecx, [edi - 1]
add esp, 0xc
dec edx
push esi
push eax
mov eax, dword [ebp - 0x20]
add eax, 2
push eax
call fcn.100dfe90
mov edx, dword [ebp - 0x44]
lea eax, [ebx - 2]
add esp, 0xc
lea ecx, [edi + 1]
lea edx, [edx + 1]
push esi
push eax
mov eax, dword [ebp - 0x20]
add eax, 0xfffffffe
push eax
call fcn.100dfe90
mov edi, dword [ebp - 0x238]
add esp, 0xc
cmp byte [ebp - 0x1fe], 0
je 0x100eaa0d
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push eax
mov ecx, 0x101376e0
call fcn.10031b10
mov ecx, 0x101376e0
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x101376e0
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x100eaa63
mov ebx, dword [ebp - 0x20c]
cmp byte [ebp - 0x1fe], 0
lea eax, [ebp - 0x1c]
mov ecx, 0x10137818
push eax
je 0x100eabbe
mov dword [ebp - 0x20], 0
call fcn.10031b10
mov ecx, 0x10137818
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x10137818
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x100eac0b
jmp 0x100eaf9e
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x20], 1
push eax
mov ecx, 0x101376e0
call fcn.10031b10
mov ecx, 0x101376e0
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x101376e0
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100ea99f
lea eax, [ebp - 0x1ec]
push eax
lea ecx, [ebp - 0xa4]
call fcn.10032790
lea eax, [ebp - 0x233]
mov dword [ebp - 4], 0
push eax
push 0xc
push 0
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0x74]
call fcn.1004ebb0
mov eax, 0x200000
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x2c4], eax
mov eax, dword [ebp - 0x26c]
mov byte [ebp - 4], 1
cmp dword [eax + 0x34], 2
jne 0x100eaae1
push dword [eax + 0x50]
lea eax, [ebp - 0x250]
mov ecx, 0x10130c20
push eax
call fcn.1003eed0
push eax
lea ecx, [ebp - 0x74]
call fcn.10042370
lea ecx, [ebp - 0x250]
call fcn.100326f0
jmp 0x100eab52
mov eax, dword [ebp - 0x64]
cmp eax, dword [ebp - 0x94]
jae 0x100eab52
push 0x2e
lea ecx, [ebp - 0x24]
call fcn.10033df0
push 0x2e
lea ecx, [ebp - 0x24]
mov byte [ebp - 0x24], al
call fcn.10033df0
push 0x2e
lea ecx, [ebp - 0x24]
mov byte [ebp - 0x23], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x24]
mov byte [ebp - 0x22], al
call fcn.10033df0
mov byte [ebp - 0x21], al
xor esi, esi
push esi
lea ecx, [ebp - 0x24]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x24]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 4
jb 0x100eab22
lea ecx, [ebp - 0x24]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x74]
call fcn.1004d3c0
cmp byte [ebp - 0x1fd], 0
mov eax, dword [0x10137778]
mov dword [ebp - 0x18], eax
je 0x100eab6d
mov word [ebp - 0x18], 0x8282
mov byte [ebp - 0x16], 0x82
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x74]
push 2
push eax
mov eax, dword [ebp - 0x3c]
mov ecx, 0x101b13b0
sub eax, dword [0x101b1394]
mov byte [ebp - 0x15], bl
push dword [ebp - 0x18]
push eax
mov eax, dword [ebp - 0x38]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x40]
push eax
call fcn.100e0400
lea ecx, [ebp - 0x74]
call fcn.100326f0
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0xffffffff
call fcn.100326f0
jmp 0x100ea9a5
mov dword [ebp - 0x20], 1
call fcn.10031b10
mov ecx, 0x10137818
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x10137818
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100eaf9e
mov eax, dword [ebp - 0x3c]
mov ecx, 0x10137498
mov ebx, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x18], eax
add ebx, 0xfffffffe
mov eax, dword [0x101ae86c]
add eax, 0xffffffc8
mov dword [ebp - 0x264], ebx
xor eax, 0x2f303c78
mov dword [ebp - 0x20], 1
add eax, edi
mov edi, 0x64
cmp dword [eax], edi
cmovl edi, dword [eax]
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x284], edi
call fcn.10031b10
mov ecx, 0x10137498
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x10137498
push eax
call fcn.10031b10
mov ecx, dword [esi]
movd xmm3, edi
cvtdq2ps xmm3, xmm3
cmp ecx, dword [eax]
mov eax, dword [ebp - 0x2f8]
movaps xmm2, xmm3
je 0x100eacc0
movss xmm0, dword [eax*4 + 0x10146334]
subss xmm2, xmm0
mulss xmm2, dword [ebp - 0x28]
addss xmm2, xmm0
movss dword [eax*4 + 0x10146334], xmm2
jmp 0x100eacc9
movss dword [eax*4 + 0x10146334], xmm3
mov eax, dword [0x101378b0]
mov ecx, eax
movss xmm4, dword [0x10105d20]
shr ecx, 8
mov dword [ebp - 0x20], ecx
mov ecx, dword [0x10137940]
mov edx, ecx
shr edx, 8
mov dword [ebp - 0x30], edx
mov edx, dword [ebp - 0x274]
movzx edi, dl
shl edi, 0x18
cmp byte [ebp - 0x1fd], 0
je 0x100ead0c
or edi, 0x828282
jmp 0x100eada5
movzx esi, byte [0x10137942]
movzx edx, byte [0x101378b2]
sub edx, esi
mov ebx, dword [ebp - 0x30]
mulss xmm3, xmm4
movzx eax, al
movd xmm0, esi
movd xmm1, edx
cvtdq2ps xmm1, xmm1
movzx esi, bl
movzx ecx, cl
sub eax, ecx
cvtdq2ps xmm0, xmm0
mulss xmm1, xmm3
addss xmm1, xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
cvttss2si edx, xmm1
mov dword [ebp - 0x44], edx
mov edx, dword [ebp - 0x20]
movzx edx, dl
sub edx, esi
movd xmm1, edx
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm3
addss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
cvttss2si ebx, xmm1
movd xmm1, eax
mov eax, dword [ebp - 0x44]
cvtdq2ps xmm1, xmm1
movzx edx, al
shl edx, 8
movzx eax, bl
mov ebx, dword [ebp - 0x264]
or edx, eax
shl edx, 8
mulss xmm1, xmm3
addss xmm1, xmm0
cvttss2si ecx, xmm1
movzx eax, cl
or edx, eax
or edi, edx
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
push ecx
mov dword [ebp - 0x44], edi
mulss xmm0, xmm2
mulss xmm0, xmm4
movss dword [ebp - 0x20], xmm0
fld dword [ebp - 0x20]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
add esp, 4
mov dword [ebp - 0x20], 0
lea eax, [ebp - 0x1c]
mov ecx, 0x10137498
fstp dword [ebp - 0x2c0]
push eax
call fcn.10031b10
mov ecx, 0x10137498
mov esi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x20]
lea ecx, [ebp - 0x22c]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x230]
mov ecx, 0x10137498
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100eaecb
movd xmm0, dword [ebp - 0x274]
add ebx, 4
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x18]
cvtdq2ps xmm0, xmm0
push 1
mov dword [ebp - 0x30], edi
lea ecx, [ecx - 2]
mov dword [ebp - 0x20], edi
add edx, 0xfffffffe
mov byte [ebp - 0x1d], 0
mov edi, dword [ebp - 0x20]
mulss xmm0, dword [0x10105d94]
push edi
cvttss2si eax, xmm0
mov byte [ebp - 0x2d], al
mov esi, dword [ebp - 0x30]
push esi
push ebx
push 2
call fcn.100e0370
mov ecx, dword [ebp - 0x40]
add esp, 0x14
push 1
push esi
push edi
push ebx
mov ebx, dword [ebp - 0x18]
lea ecx, [ecx - 8]
push 2
lea edx, [ebx - 2]
call fcn.100e0370
mov ecx, dword [ebp - 0x40]
add esp, 0x14
mov edx, dword [ebp - 0x264]
add edx, 2
add edx, ebx
push 0
push edi
push esi
push 2
push 6
lea ecx, [ecx - 7]
call fcn.100e0370
mov ecx, dword [ebp - 0x40]
add esp, 0x14
add ecx, 0xfffffff9
push 0
push esi
push edi
mov esi, ebx
push 2
push 6
lea edx, [esi - 4]
call fcn.100e0370
mov edi, dword [ebp - 0x44]
add esp, 0x14
jmp 0x100eaece
mov esi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x20c]
lea edx, [esi - 2]
push ecx
mov eax, esp
mov word [eax], 0xa0a
mov byte [eax + 2], 0xa
mov byte [eax + 3], bl
mov eax, dword [ebp - 0x264]
mov ecx, dword [ebp - 0x40]
add eax, 4
push eax
push 4
lea ecx, [ecx - 6]
call fcn.100dfed0
cvttss2si ecx, dword [ebp - 0x2c0]
mov edx, dword [ebp - 0x264]
add esp, 0xc
push edi
sub edx, ecx
dec edx
add edx, esi
lea eax, [ecx + 2]
mov ecx, dword [ebp - 0x40]
push eax
push 2
lea ecx, [ecx - 5]
call fcn.100dfe90
mov edx, dword [ebp - 0x284]
add esp, 0xc
cmp byte [0x101379b4], 0
je 0x100eaf3c
cmp edx, 0x5d
jge 0x100eaf9e
lea ecx, [ebp - 0x250]
call fcn.1002a580
cmp byte [ebp - 0x1fd], 0
je 0x100eaf68
push 1
push eax
push ecx
mov eax, esp
mov dword [ebp - 4], 2
mov word [eax], 0x8282
mov byte [eax + 2], 0x82
jmp 0x100eaf7e
push 1
push eax
push ecx
mov eax, esp
mov dword [ebp - 4], 3
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
mov byte [eax + 3], bl
mov ecx, 0x101b1380
mov eax, dword [ebp - 0x40]
push esi
add eax, 0xfffffff6
push eax
call fcn.100e0400
lea ecx, [ebp - 0x250]
call fcn.100326f0
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
lea ecx, [ebp - 0x50]
movq qword [ebp - 0x50], xmm0
call fcn.10031e50
mov edi, dword [ebp - 0x26c]
mov dword [ebp - 4], 4
mov eax, dword [edi + 0x34]
test eax, eax
je 0x100eb3ed
sub eax, 1
je 0x100eb2ec
sub eax, 1
je 0x100eb10c
push 0x55
lea ecx, [ebp - 0x25c]
call fcn.10033df0
push 0x4e
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x25c], al
call fcn.10033df0
push 0x44
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x25b], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x25a], al
call fcn.10033df0
push 0x46
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x259], al
call fcn.10033df0
push 0x49
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x258], al
call fcn.10033df0
push 0x4e
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x257], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x256], al
call fcn.10033df0
push 0x44
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x255], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x254], al
call fcn.10033df0
mov byte [ebp - 0x253], al
xor esi, esi
nop
push esi
lea ecx, [ebp - 0x25c]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x25c]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 0xa
jb 0x100eb0a0
lea ecx, [ebp - 0x25c]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x74]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 5
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x18], 0xffff
mov byte [ebp - 0x16], 0xff
mov byte [ebp - 0x15], bl
call fcn.100f0550
mov byte [ebp - 4], 6
jmp 0x100eb3c7
cmp byte [edi + 0x38], 0
jne 0x100eb20c
cmp byte [0x1013480c], 0
jne 0x100eb20c
push 0x47
lea ecx, [ebp - 0x208]
call fcn.10033df0
push 0x4f
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x208], al
call fcn.10033df0
push 0x4f
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x207], al
call fcn.10033df0
push 0x46
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x206], al
call fcn.10033df0
push 0x59
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x205], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x204], al
call fcn.10033df0
mov byte [ebp - 0x203], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x208]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x208]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 6
jb 0x100eb1a0
lea ecx, [ebp - 0x208]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x74]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x18], 0xffff
mov byte [ebp - 0x16], 0xff
mov byte [ebp - 0x15], bl
call fcn.100f0550
mov byte [ebp - 4], 0xc
jmp 0x100eb3c7
push 0x47
lea ecx, [ebp - 0x208]
call fcn.10033df0
push 0x4f
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x208], al
call fcn.10033df0
push 0x4f
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x207], al
call fcn.10033df0
push 0x46
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x206], al
call fcn.10033df0
push 0x59
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x205], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x204], al
call fcn.10033df0
mov byte [ebp - 0x203], al
xor esi, esi
push esi
lea ecx, [ebp - 0x208]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x208]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 6
jb 0x100eb280
lea ecx, [ebp - 0x208]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x74]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 9
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x18], 0xc896
mov byte [ebp - 0x16], 0x3c
mov byte [ebp - 0x15], bl
call fcn.100f0550
mov byte [ebp - 4], 0xa
jmp 0x100eb3c7
push 0x4c
lea ecx, [ebp - 0x208]
call fcn.10033df0
push 0x4f
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x208], al
call fcn.10033df0
push 0x53
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x207], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x206], al
call fcn.10033df0
push 0x52
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x205], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x208]
mov byte [ebp - 0x204], al
call fcn.10033df0
mov byte [ebp - 0x203], al
xor esi, esi
push esi
lea ecx, [ebp - 0x208]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x208]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 6
jb 0x100eb360
lea ecx, [ebp - 0x208]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x74]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x18]
push eax
mov byte [ebp - 4], 7
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x18], 0xffff
mov byte [ebp - 0x16], 0xff
mov byte [ebp - 0x15], bl
call fcn.100f0550
mov byte [ebp - 4], 8
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 4
call fcn.100326f0
cmp byte [ebp - 0x1fe], 0
xorps xmm0, xmm0
movq qword [ebp - 0x80], xmm0
mov dword [ebp - 0x78], 0
je 0x100eb42c
push 0x10137a68
lea ecx, [ebp - 0x68]
call fcn.1003a870
mov ecx, dword [ebp - 0x268]
lea eax, [ebp - 0x68]
or ecx, 0x400000
or ecx, 1
mov dword [ebp - 0x268], ecx
jmp 0x100eb44c
push 0x10137b10
lea ecx, [ebp - 0x98]
call fcn.1003a870
or dword [ebp - 0x268], 0x800002
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x80]
call fcn.100f0260
mov dword [ebp - 4], 0xe
mov eax, dword [ebp - 0x268]
test al, 2
je 0x100eb480
and eax, 0xfffffffd
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x268], eax
call fcn.10031a70
mov eax, dword [ebp - 0x268]
mov byte [ebp - 4], 0xf
test al, 1
je 0x100eb499
and eax, 0xfffffffe
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x268], eax
call fcn.10031a70
lea eax, [ebp - 0x80]
mov dword [ebp - 0x24], 0
push eax
push dword [ebp - 0x80]
lea ecx, [ebp - 0x24]
call fcn.100329c0
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x7c]
lea ecx, [ebp - 0x20]
call fcn.100329c0
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x20]
je 0x100ed13f
jmp 0x100eb4d6
mov ebx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x24]
mov esi, dword [ebp - 0x238]
cmp dword [eax], 0
jne 0x100eb5b6
mov eax, dword [0x101ae870]
lea ecx, [ebp - 0x250]
add eax, 0xffffffc7
xor eax, 0x2f303c79
add eax, esi
cmp byte [ebp - 0x1fd], 0
push eax
je 0x100eb54b
lea edx, [ebp - 0x32c]
mov dword [ebp - 0x32c], 0x692524
call fcn.10033320
add esp, 4
push eax
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x10
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x11
jmp 0x100eb58d
lea edx, [ebp - 0x328]
mov dword [ebp - 0x328], 0x692524
call fcn.10033320
add esp, 4
push eax
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x12
call fcn.100327d0
mov word [ebp - 0x210], 0xc896
mov byte [ebp - 0x20e], 0x3c
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov eax, dword [ebp - 0x24]
cmp dword [eax], 1
jne 0x100eb822
mov eax, dword [0x101ae8a4]
add eax, 0xffffffba
xor eax, 0x2f303c86
cmp byte [eax + esi], 0
mov eax, dword [0x101ae8c0]
je 0x100eb74c
add eax, 0xffffffb3
lea ecx, [ebp - 0x250]
xor eax, 0x2f303c8d
cmp dword [eax + esi], 0
jle 0x100eb6a1
cmp byte [ebp - 0x1fd], 0
je 0x100eb650
lea eax, [ebp - 0x310]
mov word [ebp - 0x310], 0x4b48
push eax
mov byte [ebp - 0x30e], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x15
jmp 0x100eb7f9
lea eax, [ebp - 0x30c]
mov word [ebp - 0x30c], 0x4b48
push eax
mov byte [ebp - 0x30a], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xffff
mov byte [ebp - 0x20e], 0xff
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x17
jmp 0x100eb7f9
cmp byte [ebp - 0x1fd], 0
je 0x100eb6fb
lea eax, [ebp - 0x300]
mov word [ebp - 0x300], 0x4b48
push eax
mov byte [ebp - 0x2fe], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x19
jmp 0x100eb7f9
lea eax, [ebp - 0x308]
mov word [ebp - 0x308], 0x4b48
push eax
mov byte [ebp - 0x306], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xffff
mov byte [ebp - 0x20e], 0xff
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x1b
jmp 0x100eb7f9
add eax, 0xffffffb3
xor eax, 0x2f303c8d
cmp dword [eax + esi], 0
jle 0x100eb822
cmp byte [ebp - 0x1fd], 0
lea ecx, [ebp - 0x250]
je 0x100eb7b4
lea eax, [ebp - 0x234]
mov word [ebp - 0x234], 0x4b
push eax
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x1d
jmp 0x100eb7f9
lea eax, [ebp - 0x2fc]
mov word [ebp - 0x2fc], 0x4b
push eax
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xffff
mov byte [ebp - 0x20e], 0xff
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov eax, dword [ebp - 0x24]
cmp dword [eax], 2
jne 0x100eb99a
cmp dword [0x1013465c], 0
je 0x100eb99a
mov eax, dword [ebp - 0x2f8]
lea edx, [ebp - 0x22c]
mov byte [ebp - 0x2bc], 0
lea ecx, [ebp - 0x2c]
push dword [ebp - 0x2bc]
mov dword [ebp - 0x230], 0x43480000
movss xmm0, dword [eax*8 + 0x10130c28]
subss xmm0, dword [eax*8 + 0x10130c24]
lea eax, [ebp - 0x230]
mov dword [ebp - 0x22c], 0
push eax
movss dword [ebp - 0x2c], xmm0
call fcn.1003de30
movzx esi, bl
add esp, 8
shl esi, 0x18
cmp byte [ebp - 0x1fd], 0
movss xmm1, dword [eax]
je 0x100eb8ac
or esi, 0x828282
jmp 0x100eb8d8
mulss xmm1, dword [0x10105e10]
movss xmm0, dword [0x10105fa0]
subss xmm0, xmm1
cvttss2si eax, xmm0
movzx ecx, al
shl ecx, 0x10
mov eax, ecx
bswap eax
or esi, eax
or esi, ecx
or esi, 0xff
mov eax, dword [ebp - 0x2f8]
push ecx
movss xmm0, dword [eax*8 + 0x10130c28]
movss dword [ebp - 0x22c], xmm0
fld dword [ebp - 0x22c]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
fstp dword [ebp - 0x22c]
cvttss2si edx, dword [ebp - 0x22c]
add esp, 4
lea ecx, [ebp - 0x250]
call fcn.1002a580
cmp byte [ebp - 0x1fd], 0
je 0x100eb94b
or dword [ebp - 0x268], 0x80000
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
call fcn.10032740
mov dword [ebp - 0x210], esi
mov byte [ebp - 4], 0x21
jmp 0x100eb971
or dword [ebp - 0x268], 0x100000
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
call fcn.10032740
mov dword [ebp - 0x210], esi
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x238]
cmp dword [eax], 3
jne 0x100ebaaf
mov eax, dword [0x101ae8b0]
add eax, 0xffffffb7
xor eax, 0x2f303c89
cmp byte [eax + ecx], 0
je 0x100ebaaf
cmp byte [ebp - 0x1fd], 0
lea ecx, [ebp - 0x250]
je 0x100eba2a
lea eax, [ebp - 0x370]
mov dword [ebp - 0x370], 0x504f4353
push eax
mov word [ebp - 0x36c], 0x4445
mov byte [ebp - 0x36a], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x25
jmp 0x100eba80
lea eax, [ebp - 0x350]
mov dword [ebp - 0x350], 0x504f4353
push eax
mov word [ebp - 0x34c], 0x4445
mov byte [ebp - 0x34a], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x26
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xb43c
mov byte [ebp - 0x20e], 0xe1
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov ecx, dword [ebp - 0x238]
mov eax, dword [ebp - 0x24]
movss xmm1, dword [ebp - 0x260]
cmp dword [eax], 4
jne 0x100ebbc0
mov eax, dword [0x101ae8cc]
add eax, 0xffffffb0
xor eax, 0x2f303c90
movss xmm0, dword [eax + ecx]
comiss xmm0, xmm1
jbe 0x100ebbc0
cmp byte [ebp - 0x1fd], 0
lea ecx, [ebp - 0x250]
je 0x100ebb3f
lea eax, [ebp - 0x378]
mov dword [ebp - 0x378], 0x53414c46
push eax
mov dword [ebp - 0x374], 0x444548
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x28
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x29
jmp 0x100ebb8f
lea eax, [ebp - 0x2f4]
mov dword [ebp - 0x2f4], 0x53414c46
push eax
mov dword [ebp - 0x2f0], 0x444548
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x2a
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xb43c
mov byte [ebp - 0x20e], 0xe1
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
movss xmm1, dword [ebp - 0x260]
mov eax, dword [ebp - 0x24]
mov edx, dword [ebp - 0x238]
cmp dword [eax], 5
jne 0x100ebd50
mov eax, dword [0x101ae788]
mov ecx, dword [edx + eax]
movss xmm0, dword [ecx + 0x58]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100ebd50
mov esi, dword [ecx + 0x50]
mov ecx, dword [0x101ae7a0]
mov edi, dword [0x101ae744]
cmp dword [edx + ecx], 0
jne 0x100ebc10
mov eax, dword [0x101ae720]
mov ecx, edx
call eax
mov ecx, dword [0x101ae7a0]
mov edx, esi
mov esi, dword [ebp - 0x238]
mov ecx, dword [esi + ecx]
call edi
cmp eax, 0x3c7
jne 0x100ebd48
cmp byte [ebp - 0x1fd], 0
lea ecx, [ebp - 0x250]
je 0x100ebcc1
lea eax, [ebp - 0x358]
mov dword [ebp - 0x358], 0x4f4c4552
push eax
mov word [ebp - 0x354], 0x4441
mov byte [ebp - 0x352], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x2d
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov edx, esi
jmp 0x100ebd4a
lea eax, [ebp - 0x360]
mov dword [ebp - 0x360], 0x4f4c4552
push eax
mov word [ebp - 0x35c], 0x4441
mov byte [ebp - 0x35a], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x2e
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xb43c
mov byte [ebp - 0x20e], 0xe1
mov byte [ebp - 0x20d], bl
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov edx, dword [ebp - 0x238]
jmp 0x100ebd4a
mov edx, esi
mov edi, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x24]
cmp dword [eax], 6
jne 0x100ebe3f
mov eax, dword [0x101ae750]
mov ecx, edx
call eax
test al, al
je 0x100ebe3f
cmp byte [ebp - 0x1fd], 0
lea ecx, [ebp - 0x250]
je 0x100ebdca
lea eax, [ebp - 0x304]
mov word [ebp - 0x304], 0x3443
push eax
mov byte [ebp - 0x302], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x30
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0x8282
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x31
jmp 0x100ebe16
lea eax, [ebp - 0x288]
mov word [ebp - 0x288], 0x3443
push eax
mov byte [ebp - 0x286], 0
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x32
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xff
mov byte [ebp - 0x20e], 0
mov byte [ebp - 0x20d], bl
mov byte [ebp - 4], 0x33
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov eax, dword [ebp - 0x24]
cmp dword [eax], 7
jne 0x100eca5f
cmp byte [ebp - 0x1fe], 0
je 0x100eca5f
cmp dword [edi + 0x18], 0
je 0x100ed120
lea ecx, [edi + 8]
push 0
call fcn.10031f30
mov edi, dword [eax + 0x84]
cmp edi, 7
je 0x100eca54
cmp edi, 6
je 0x100eca54
cmp byte [ebp - 0x1fd], 0
mov eax, dword [ebp - 0x26c]
mov eax, dword [eax + 0xc4]
je 0x100ec23a
sub eax, 1
je 0x100ebfde
sub eax, 1
jne 0x100ec132
push 0x55
lea ecx, [ebp - 0x2d0]
call fcn.10033df0
push 0x4e
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2d0], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cf], al
call fcn.10033df0
push 0x49
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2ce], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cd], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cc], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2cb], al
call fcn.10033df0
push 0x59
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2ca], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 0x2c9], al
call fcn.10033df0
mov byte [ebp - 0x2c8], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x2d0]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x2d0]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 9
jb 0x100ebf60
lea ecx, [ebp - 0x2d0]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov eax, dword [ebp - 0x20c]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x36
mov byte [ebp - 0x321], al
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x250]
mov word [ebp - 0x324], 0xff
push eax
mov byte [ebp - 0x322], 0
call fcn.100f0550
mov byte [ebp - 4], 0x37
jmp 0x100ec109
push 0x55
lea ecx, [ebp - 0x2dc]
call fcn.10033df0
push 0x4e
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2dc], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2db], al
call fcn.10033df0
push 0x49
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2da], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2d9], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2d8], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2d7], al
call fcn.10033df0
push 0x59
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2d6], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x2dc]
mov byte [ebp - 0x2d5], al
call fcn.10033df0
mov byte [ebp - 0x2d4], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x2dc]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x2dc]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 9
jb 0x100ec090
lea ecx, [ebp - 0x2dc]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov eax, dword [ebp - 0x20c]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x34
mov byte [ebp - 0x315], al
lea eax, [ebp - 0x318]
push eax
lea eax, [ebp - 0x250]
mov word [ebp - 0x318], 0xffff
push eax
mov byte [ebp - 0x316], 0
call fcn.100f0550
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
push 0x46
lea ecx, [ebp - 0x2b8]
call fcn.10033df0
push 0x41
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 0x2b8], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 0x2b7], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 0x2b6], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 0x2b5], al
call fcn.10033df0
mov byte [ebp - 0x2b4], al
xor esi, esi
push esi
lea ecx, [ebp - 0x2b8]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x2b8]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 5
jb 0x100ec193
lea ecx, [ebp - 0x2b8]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x320]
push eax
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x320], 0x8282
mov byte [ebp - 0x31e], 0x82
mov byte [ebp - 0x31d], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100eca65
sub eax, 1
je 0x100ec37e
sub eax, 1
jne 0x100ec4d2
push 0x55
lea ecx, [ebp - 0x2e8]
call fcn.10033df0
push 0x4e
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e8], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e7], al
call fcn.10033df0
push 0x49
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e6], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e5], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e4], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e3], al
call fcn.10033df0
push 0x59
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e2], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x2e8]
mov byte [ebp - 0x2e1], al
call fcn.10033df0
mov byte [ebp - 0x2e0], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x2e8]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x2e8]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 9
jb 0x100ec300
lea ecx, [ebp - 0x2e8]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov eax, dword [ebp - 0x20c]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x3c
mov byte [ebp - 0x319], al
lea eax, [ebp - 0x31c]
push eax
lea eax, [ebp - 0x250]
mov word [ebp - 0x31c], 0xff
push eax
mov byte [ebp - 0x31a], 0
call fcn.100f0550
mov byte [ebp - 4], 0x3d
jmp 0x100ec4a9
push 0x55
lea ecx, [ebp - 0x25c]
call fcn.10033df0
push 0x4e
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x25c], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x25b], al
call fcn.10033df0
push 0x49
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x25a], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x259], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x258], al
call fcn.10033df0
push 0x4c
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x257], al
call fcn.10033df0
push 0x59
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x256], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x25c]
mov byte [ebp - 0x255], al
call fcn.10033df0
mov byte [ebp - 0x254], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x25c]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x25c]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 9
jb 0x100ec430
lea ecx, [ebp - 0x25c]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov eax, dword [ebp - 0x20c]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x3a
mov byte [ebp - 0x311], al
lea eax, [ebp - 0x314]
push eax
lea eax, [ebp - 0x250]
mov word [ebp - 0x314], 0xffff
push eax
mov byte [ebp - 0x312], 0
call fcn.100f0550
mov byte [ebp - 4], 0x3b
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov eax, dword [ebp - 0x26c]
mov ecx, 0x10147665
push eax
movss xmm2, dword [eax + 0x74]
call fcn.100e1540
mov eax, dword [ebp - 0x26c]
cmp byte [eax + 0x54], 0
je 0x100ec607
push 0x46
lea ecx, [ebp - 0x2a8]
call fcn.10033df0
push 0x41
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 0x2a8], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 0x2a7], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 0x2a6], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x2a8]
mov byte [ebp - 0x2a5], al
call fcn.10033df0
mov byte [ebp - 0x2a4], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x2a8]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x2a8]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 5
jb 0x100ec560
lea ecx, [ebp - 0x2a8]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x340]
push eax
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x340], 0xff
mov byte [ebp - 0x33e], 0
mov byte [ebp - 0x33d], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x3f
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100eca65
cmp edi, 5
jne 0x100ec718
push 0x46
lea ecx, [ebp - 0x2a0]
call fcn.10033df0
push 0x41
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 0x2a0], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 0x29f], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 0x29e], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x2a0]
mov byte [ebp - 0x29d], al
call fcn.10033df0
mov byte [ebp - 0x29c], al
xor esi, esi
push esi
lea ecx, [ebp - 0x2a0]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x2a0]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 5
jb 0x100ec671
lea ecx, [ebp - 0x2a0]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x338]
push eax
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x338], 0xc896
mov byte [ebp - 0x336], 0x3c
mov byte [ebp - 0x335], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x41
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100eca65
cmp edi, 2
jne 0x100ec829
push 0x46
lea ecx, [ebp - 0x298]
call fcn.10033df0
push 0x41
lea ecx, [ebp - 0x298]
mov byte [ebp - 0x298], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x298]
mov byte [ebp - 0x297], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x298]
mov byte [ebp - 0x296], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x298]
mov byte [ebp - 0x295], al
call fcn.10033df0
mov byte [ebp - 0x294], al
xor esi, esi
push esi
lea ecx, [ebp - 0x298]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x298]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 5
jb 0x100ec782
lea ecx, [ebp - 0x298]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x334]
push eax
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x334], 0xffff
mov byte [ebp - 0x332], 0
mov byte [ebp - 0x331], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x43
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100eca65
cmp edi, 3
je 0x100ec947
cmp edi, 1
je 0x100ec947
push 0x46
lea ecx, [ebp - 0x290]
call fcn.10033df0
push 0x41
lea ecx, [ebp - 0x290]
mov byte [ebp - 0x290], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x290]
mov byte [ebp - 0x28f], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x290]
mov byte [ebp - 0x28e], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x290]
mov byte [ebp - 0x28d], al
call fcn.10033df0
mov byte [ebp - 0x28c], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x290]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x290]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 5
jb 0x100ec8a0
lea ecx, [ebp - 0x290]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x330]
push eax
mov byte [ebp - 4], 0x46
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x330], 0xffff
mov byte [ebp - 0x32e], 0xff
mov byte [ebp - 0x32d], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x47
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100eca65
push 0x46
lea ecx, [ebp - 0x2b0]
call fcn.10033df0
push 0x41
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2b0], al
call fcn.10033df0
push 0x4b
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2af], al
call fcn.10033df0
push 0x45
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2ae], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x2b0]
mov byte [ebp - 0x2ad], al
call fcn.10033df0
mov byte [ebp - 0x2ac], al
xor esi, esi
nop dword [eax + eax]
push esi
lea ecx, [ebp - 0x2b0]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x2b0]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 5
jb 0x100ec9b0
lea ecx, [ebp - 0x2b0]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x33c]
push eax
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x33c], 0x9cf3
mov byte [ebp - 0x33a], 0x12
mov byte [ebp - 0x339], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x45
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100eca65
mov edi, dword [ebp - 0x26c]
jmp 0x100ed120
mov ebx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x24]
mov cl, byte [ebp - 0x1fd]
mov edi, dword [ebp - 0x26c]
cmp dword [eax], 8
jne 0x100ecb20
cmp byte [0x10130e30], 0
je 0x100ecb20
test cl, cl
jne 0x100ecb20
cmp dword [edi + 0xdc], 1
jne 0x100ecb20
lea eax, [ebp - 0x348]
mov byte [ebp - 0x344], cl
push eax
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x348], 0x4d494142
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xc896
mov byte [ebp - 0x20e], 0x3c
mov byte [ebp - 0x20d], bl
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x49
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov cl, byte [ebp - 0x1fd]
mov eax, dword [ebp - 0x24]
cmp dword [eax], 9
jne 0x100ecbd2
cmp byte [0x10130e30], 0
je 0x100ecbd2
test cl, cl
jne 0x100ecbd2
cmp dword [edi + 0xdc], 2
jne 0x100ecbd2
lea eax, [ebp - 0x368]
mov byte [ebp - 0x362], cl
push eax
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x368], 0x414d4144
mov word [ebp - 0x364], 0x4547
call fcn.10032790
lea eax, [ebp - 0x250]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [ebp - 0x228]
call fcn.100327d0
mov word [ebp - 0x210], 0xc896
mov byte [ebp - 0x20e], 0x3c
mov byte [ebp - 0x20d], bl
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x4b
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov eax, dword [ebp - 0x24]
cmp dword [eax], 0xa
jne 0x100ed068
cmp byte [0x10130e30], 0
je 0x100ed068
cmp byte [ebp - 0x1fd], 0
jne 0x100ed068
cmp byte [edi + 0x28], 0
je 0x100ecdab
mov eax, dword [edi + 0x1c]
push 0x48
cmp eax, dword [edi + 0x20]
jle 0x100eccde
lea ecx, [ebp - 0x264]
call fcn.10033df0
push 0x49
lea ecx, [ebp - 0x264]
mov byte [ebp - 0x264], al
call fcn.10033df0
push 0x54
lea ecx, [ebp - 0x264]
mov byte [ebp - 0x263], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x264]
mov byte [ebp - 0x262], al
call fcn.10033df0
mov byte [ebp - 0x261], al
xor esi, esi
nop dword [eax]
push esi
lea ecx, [ebp - 0x264]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x264]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 4
jb 0x100ecc60
lea ecx, [ebp - 0x264]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov eax, dword [ebp - 0x20c]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x4c
mov byte [ebp - 0x2bd], al
lea eax, [ebp - 0x2c0]
push eax
lea eax, [ebp - 0x250]
mov word [ebp - 0x2c0], 0xc896
push eax
mov byte [ebp - 0x2be], 0x3c
call fcn.100f0550
mov byte [ebp - 4], 0x4d
jmp 0x100ecd82
lea ecx, [ebp - 0x18]
call fcn.10033df0
push 0x49
lea ecx, [ebp - 0x18]
mov byte [ebp - 0x18], al
call fcn.10033df0
push 0x54
lea ecx, [ebp - 0x18]
mov byte [ebp - 0x17], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x18]
mov byte [ebp - 0x16], al
call fcn.10033df0
mov byte [ebp - 0x15], al
xor esi, esi
push esi
lea ecx, [ebp - 0x18]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x18]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 4
jb 0x100ecd12
lea ecx, [ebp - 0x18]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov eax, dword [ebp - 0x20c]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x4e
mov byte [ebp - 0x2c1], al
lea eax, [ebp - 0x2c4]
push eax
lea eax, [ebp - 0x250]
mov word [ebp - 0x2c4], 0xff
push eax
mov byte [ebp - 0x2c2], 0
call fcn.100f0550
mov byte [ebp - 4], 0x4f
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
mov eax, dword [edi + 0x30]
sub eax, 1
je 0x100ecf8b
sub eax, 1
je 0x100eceab
sub eax, 1
jne 0x100ed068
push 0x4c
lea ecx, [ebp - 0x278]
call fcn.10033df0
push 0x43
lea ecx, [ebp - 0x278]
mov byte [ebp - 0x278], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x278]
mov byte [ebp - 0x277], al
call fcn.10033df0
mov byte [ebp - 0x276], al
xor esi, esi
push esi
lea ecx, [ebp - 0x278]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x278]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 3
jb 0x100ece04
lea ecx, [ebp - 0x278]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x284]
push eax
mov byte [ebp - 4], 0x52
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x284], 0xffff
mov byte [ebp - 0x282], 0
mov byte [ebp - 0x281], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x53
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100ed06e
push 0x4c
lea ecx, [ebp - 0x27c]
call fcn.10033df0
push 0x43
lea ecx, [ebp - 0x27c]
mov byte [ebp - 0x27c], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x27c]
mov byte [ebp - 0x27b], al
call fcn.10033df0
mov byte [ebp - 0x27a], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x27c]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x27c]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 3
jb 0x100ecef0
lea ecx, [ebp - 0x27c]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0x54
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x44], 0xff
mov byte [ebp - 0x42], 0
mov byte [ebp - 0x41], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x55
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100ed06e
push 0x4c
lea ecx, [ebp - 0x280]
call fcn.10033df0
push 0x43
lea ecx, [ebp - 0x280]
mov byte [ebp - 0x280], al
call fcn.10033df0
push 0
lea ecx, [ebp - 0x280]
mov byte [ebp - 0x27f], al
call fcn.10033df0
mov byte [ebp - 0x27e], al
xor esi, esi
nop word [eax + eax]
push esi
lea ecx, [ebp - 0x280]
call fcn.10031ae0
push esi
lea ecx, [ebp - 0x280]
mov bl, byte [eax]
xor bl, 0xc2
call fcn.10031ae0
inc esi
mov byte [eax], bl
cmp esi, 3
jb 0x100ecfd0
lea ecx, [ebp - 0x280]
call fcn.10031ad0
push eax
lea ecx, [ebp - 0x250]
call fcn.10032790
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x50
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x228]
mov word [ebp - 0x30], 0xc896
mov byte [ebp - 0x2e], 0x3c
mov byte [ebp - 0x2d], bl
call fcn.100f0550
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x51
push eax
lea ecx, [ebp - 0x50]
call fcn.100f0200
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
jmp 0x100ed06e
mov ebx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x24]
cmp dword [eax], 0xb
jne 0x100ed120
cmp byte [ebp - 0x1fd], 0
jne 0x100ed120
cmp dword [edi + 0x18], 0
je 0x100ed120
lea ecx, [edi + 8]
push 0
call fcn.10031f30
lea edx, [ebp - 0x208]
mov dword [ebp - 0x208], 0x69253a52
lea ecx, [ebp - 0x250]
mov byte [ebp - 0x204], 0
mov eax, dword [eax + 0x84]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10033320
add esp, 4
push eax
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x56
call fcn.100327d0
mov word [ebp - 0x210], 0xff82
mov byte [ebp - 0x20e], 0x82
mov byte [ebp - 0x20d], bl
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x57
push eax
lea ecx, [ebp - 0x50]
call fcn.100c2630
lea ecx, [ebp - 0x228]
call fcn.100326f0
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 0xf
call fcn.100326f0
add dword [ebp - 0x24], 4
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x7c]
lea ecx, [ebp - 0x20]
call fcn.100329c0
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x20]
jne 0x100eb4d0
mov ecx, dword [ebp - 0x4c]
mov eax, 0x92492493
mov edi, dword [ebp - 0x50]
xor esi, esi
sub ecx, edi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100ed1b1
xor ebx, ebx
push 0
lea eax, [ebx + edi]
mov ecx, esi
imul ecx, dword [0x101b1388]
push eax
push dword [eax + 0x18]
mov eax, dword [ebp - 0x3c]
add eax, ecx
mov ecx, dword [ebp - 0x38]
push eax
mov eax, dword [ebp - 0x40]
add ecx, 2
add eax, ecx
mov ecx, 0x101b1380
push eax
call fcn.100e0400
mov ecx, dword [ebp - 0x4c]
mov eax, 0x92492493
mov edi, dword [ebp - 0x50]
inc esi
sub ecx, edi
add ebx, 0x1c
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp esi, eax
jb 0x100ed160
lea ecx, [ebp - 0x80]
call fcn.10031a70
lea ecx, [ebp - 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.100c2010
cmp byte [ebp - 0x1fe], 0
movss xmm0, dword [ebp - 0x260]
movss dword [ebp - 0x18], xmm0
je 0x100ed5ff
mov ecx, dword [ebp - 0x238]
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
call eax
dec eax
imul edi, eax, 0xe8
add edi, 0x10147680
je 0x100ed5ff
cmp dword [edi + 0x18], 0
je 0x100ed5ff
push 0
lea ecx, [edi + 8]
call fcn.10031f30
mov dword [ebp - 0x2c], eax
test eax, eax
je 0x100ed5ff
cmp byte [edi + 0x54], 0
jne 0x100ed24e
mov ecx, dword [eax + 0x84]
cmp ecx, 7
je 0x100ed24e
cmp ecx, 6
je 0x100ed24e
test byte [eax + 0x1c], 1
je 0x100ed24e
cmp byte [0x10137df4], 0
je 0x100ed24e
mov bl, 1
jmp 0x100ed250
xor bl, bl
lea eax, [ebp - 0x22c]
mov byte [ebp - 0x233], bl
push eax
mov ecx, 0x10137498
mov dword [ebp - 0x1c], 1
call fcn.10031b10
mov ecx, 0x10137498
mov esi, dword [eax]
lea eax, [ebp - 0x230]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x2bc]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x20]
mov ecx, 0x10137498
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100ed379
mov ebx, dword [ebp - 0x270]
movss xmm0, dword [0x10105f68]
add ebx, 8
cmp byte [ebp - 0x233], 0
movss xmm4, dword [ebx]
mulss xmm4, xmm0
je 0x100ed311
subss xmm0, xmm4
sub esp, 8
mulss xmm0, dword [ebp - 0x28]
mulss xmm0, dword [0x10105ecc]
addss xmm0, xmm4
movss dword [ebp - 0x1c], xmm0
fld dword [ebp - 0x1c]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
fstp dword [ebp - 0x1c]
movss xmm3, dword [ebp - 0x1c]
add esp, 8
mulss xmm3, dword [0x10105d20]
jmp 0x100ed398
movss xmm2, dword [0x10105fe0]
movaps xmm0, xmm4
mulss xmm0, dword [0x10105ecc]
movss xmm1, dword [0x10105fd8]
mulss xmm0, dword [ebp - 0x28]
subss xmm4, xmm0
andps xmm2, xmm4
movaps xmm0, xmm4
xorps xmm0, xmm2
movaps xmm3, xmm4
cmpltss xmm0, xmm1
andps xmm1, xmm0
orps xmm1, xmm2
addss xmm3, xmm1
subss xmm3, xmm1
movss xmm1, dword [0x10105df4]
movaps xmm0, xmm3
subss xmm0, xmm4
cmpnless xmm0, xmm2
andps xmm0, xmm1
subss xmm3, xmm0
mulss xmm3, dword [0x10105d20]
jmp 0x100ed398
test bl, bl
je 0x100ed387
movss xmm3, dword [0x10105df4]
jmp 0x100ed38f
movss xmm3, dword [ebp - 0x260]
mov ebx, dword [ebp - 0x270]
add ebx, 8
movss dword [ebx], xmm3
lea edx, [ebp - 0x230]
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x2c]
movss xmm0, dword [edi + 0x68]
mov byte [ebp - 0x1c], 0
push dword [ebp - 0x1c]
subss xmm0, dword [eax + 0x88]
lea eax, [ebp - 0x22c]
mov dword [ebp - 0x22c], 0x3f800000
push eax
mov dword [ebp - 0x230], 0
mulss xmm0, dword [0x10105de4]
movss dword [ebp - 0x2c], xmm0
call fcn.1003de30
movd xmm1, dword [ebp - 0x38]
add esp, 8
movss xmm0, dword [0x10105df4]
cvtdq2ps xmm1, xmm1
subss xmm0, dword [eax]
mulss xmm1, xmm0
comiss xmm1, dword [ebp - 0x260]
movss dword [ebp - 0x2c], xmm1
jb 0x100ed5ff
cmp byte [ebp - 0x1fd], 0
mov eax, dword [0x10137e98]
mov dword [ebp - 0x18], eax
je 0x100ed431
mov word [ebp - 0x18], 0x8282
mov byte [ebp - 0x16], 0x82
movd xmm0, dword [ebp - 0x274]
mov ecx, 0x10137498
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1c], 0
mulss xmm0, dword [ebx]
cvttss2si eax, xmm0
mov byte [ebp - 0x15], al
lea eax, [ebp - 0x22c]
push eax
call fcn.10031b10
mov ecx, 0x10137498
mov esi, dword [eax]
lea eax, [ebp - 0x230]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x2bc]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x20]
mov ecx, 0x10137498
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100ed589
movd xmm0, dword [ebp - 0x274]
mov eax, dword [ebp - 0x18]
cvtdq2ps xmm0, xmm0
mov ecx, dword [ebp - 0x34]
mov dword [ebp - 0x30], eax
add ecx, 6
mov dword [ebp - 0x20], eax
push 0
mov byte [ebp - 0x1d], 0
mulss xmm0, dword [0x10105d94]
mov edi, dword [ebp - 0x20]
push edi
mulss xmm0, dword [ebx]
cvttss2si eax, xmm0
mov byte [ebp - 0x2d], al
mov esi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
push esi
add eax, 2
push 2
push eax
mov eax, dword [ebp - 0x3c]
add eax, ecx
mov ecx, dword [ebp - 0x40]
movd xmm0, eax
lea ecx, [ecx - 1]
cvtdq2ps xmm0, xmm0
cvttss2si edx, xmm0
call fcn.100e0370
mov eax, dword [ebp - 0x38]
add esp, 0x14
mov ecx, dword [ebp - 0x40]
add eax, 2
push 0
push esi
push edi
push 2
push eax
mov eax, dword [ebp - 0x3c]
lea ecx, [ecx - 1]
add eax, dword [ebp - 0x34]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
cvttss2si edx, xmm0
call fcn.100e0370
mov ecx, dword [ebp - 0x34]
add esp, 0x14
mov eax, dword [ebp - 0x3c]
add ecx, 2
add eax, ecx
mov ecx, dword [ebp - 0x38]
push 1
push edi
movd xmm0, eax
mov eax, dword [ebp - 0x40]
cvtdq2ps xmm0, xmm0
push esi
inc eax
push 4
push 2
add ecx, eax
cvttss2si edx, xmm0
call fcn.100e0370
mov ecx, dword [ebp - 0x34]
add esp, 0x14
mov eax, dword [ebp - 0x3c]
add ecx, 2
add eax, ecx
mov ecx, dword [ebp - 0x40]
push 1
push esi
movd xmm0, eax
lea ecx, [ecx - 3]
cvtdq2ps xmm0, xmm0
push edi
push 4
push 2
cvttss2si edx, xmm0
call fcn.100e0370
add esp, 0x14
movd xmm0, dword [ebp - 0x274]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [ebx]
cvttss2si ecx, xmm0
push ecx
mov eax, esp
push 4
mov byte [eax + 3], cl
mov word [eax], 0xa0a
mov byte [eax + 2], 0xa
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x40]
add eax, 2
mov edx, dword [ebp - 0x34]
push eax
mov eax, dword [ebp - 0x3c]
add eax, 2
lea ecx, [ecx - 1]
add edx, eax
call fcn.100dfed0
cvttss2si eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
add esp, 0xc
mov ecx, dword [ebp - 0x40]
push dword [ebp - 0x18]
push 2
push eax
mov eax, dword [ebp - 0x3c]
add eax, 3
add edx, eax
call fcn.100dfe90
movss xmm0, dword [ebx]
add esp, 0xc
mulss xmm0, dword [0x10105ed0]
movss dword [ebp - 0x18], xmm0
mov ecx, dword [0x101ae600]
mov eax, dword [0x101ae900]
mov esi, dword [ebp - 0x238]
add eax, 0xffffffa3
xor eax, 0x2f303c9d
mov edx, dword [ecx]
push ecx
mov eax, dword [eax + esi]
mov esi, dword [edx + 0x10]
mov edx, esp
mov dword [edx], eax
call esi
mov ebx, eax
mov dword [ebp - 0x2c0], ebx
test ebx, ebx
je 0x100ee16f
mov ecx, dword [ebx]
mov edx, dword [ecx + 0x6f8]
mov ecx, ebx
call edx
test eax, eax
je 0x100ee16f
mov ecx, dword [eax + 0x14]
mov eax, dword [0x101ae91c]
add eax, 0xffffff9c
mov dword [ebp - 0x20], ecx
xor eax, 0x2f303ca4
mov ecx, dword [eax + ebx]
mov eax, dword [0x101ae788]
mov ebx, dword [ebp - 0x238]
mov dword [ebp - 0x2c4], ecx
mov ecx, dword [ebx + eax]
mov dword [ebp - 0x2c], ecx
movss xmm0, dword [ecx + 0x58]
ucomiss xmm0, dword [ebp - 0x260]
lahf
test ah, 0x44
jnp 0x100ed6c3
mov esi, dword [ecx + 0x50]
mov ecx, dword [0x101ae7a0]
mov edi, dword [0x101ae744]
cmp dword [ebx + ecx], 0
jne 0x100ed6ae
mov eax, dword [0x101ae720]
mov ecx, ebx
call eax
mov ecx, dword [0x101ae7a0]
mov ecx, dword [ebx + ecx]
mov edx, esi
call edi
mov byte [ebp - 0x233], 1
cmp eax, 0x3c7
je 0x100ed6ca
mov byte [ebp - 0x233], 0
cmp byte [ebp - 0x1fe], 0
lea eax, [ebp - 0x22c]
mov ecx, 0x10137bb8
push eax
je 0x100ed81e
mov dword [ebp - 0x1c], 0
call fcn.10031b10
mov ecx, 0x10137bb8
mov esi, dword [eax]
lea eax, [ebp - 0x230]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x2bc]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x30]
mov ecx, 0x10137bb8
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
jne 0x100ed86b
mov edi, dword [ebp - 0x20]
xor bh, bh
mov byte [ebp - 0x1fe], bh
xor bl, bl
lea eax, [ebp - 0x22c]
mov dword [ebp - 0x1c], 1
push eax
mov ecx, 0x10137498
call fcn.10031b10
mov ecx, 0x10137498
mov esi, dword [eax]
lea eax, [ebp - 0x230]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x2bc]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x30]
mov ecx, 0x10137498
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100ed98c
movss xmm1, dword [ebp - 0x28]
mov eax, dword [ebp - 0x270]
mulss xmm1, dword [0x10105ecc]
movss xmm3, dword [0x10105f68]
movss xmm4, dword [eax]
mulss xmm4, xmm3
movss dword [ebp - 0x28], xmm1
test bl, bl
je 0x100ed893
movaps xmm0, xmm3
sub esp, 8
subss xmm0, xmm4
mulss xmm0, xmm1
addss xmm0, xmm4
movss dword [ebp - 0x1c], xmm0
fld dword [ebp - 0x1c]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
movss xmm3, dword [0x10105f68]
add esp, 8
movss xmm6, dword [0x10105fd8]
movss xmm7, dword [0x10105fe0]
movss xmm4, dword [0x10105df4]
mov eax, dword [ebp - 0x270]
fstp dword [ebp - 0x1c]
movss xmm5, dword [ebp - 0x1c]
jmp 0x100ed8ee
mov dword [ebp - 0x1c], 1
call fcn.10031b10
mov ecx, 0x10137bb8
mov esi, dword [eax]
lea eax, [ebp - 0x230]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x2bc]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x30]
mov ecx, 0x10137bb8
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100ed730
mov edi, dword [ebp - 0x20]
mov bh, 1
mov byte [ebp - 0x1fe], bh
cmp edi, 0xffffffff
je 0x100ed73b
cmp byte [0x10137cdc], 0
je 0x100ed73b
mov bl, bh
jmp 0x100ed73d
movss xmm7, dword [0x10105fe0]
movaps xmm0, xmm4
movss xmm6, dword [0x10105fd8]
movaps xmm2, xmm7
mulss xmm0, xmm1
movaps xmm1, xmm6
subss xmm4, xmm0
andps xmm2, xmm4
movaps xmm0, xmm4
xorps xmm0, xmm2
movaps xmm5, xmm4
cmpltss xmm0, xmm6
andps xmm1, xmm0
orps xmm1, xmm2
addss xmm5, xmm1
subss xmm5, xmm1
movaps xmm0, xmm5
subss xmm0, xmm4
movss xmm4, dword [0x10105df4]
cmpnless xmm0, xmm2
andps xmm0, xmm4
subss xmm5, xmm0
mulss xmm5, dword [0x10105d20]
lea esi, [eax + 4]
movss xmm2, dword [esi]
movss xmm1, dword [ebp - 0x28]
movss dword [eax], xmm5
mulss xmm2, xmm3
test bh, bh
je 0x100ed945
subss xmm3, xmm2
sub esp, 8
mulss xmm3, xmm1
addss xmm3, xmm2
movss dword [ebp - 0x1c], xmm3
fld dword [ebp - 0x1c]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
fstp dword [ebp - 0x1c]
movss xmm1, dword [ebp - 0x1c]
add esp, 8
mulss xmm1, dword [0x10105d20]
jmp 0x100ed9bc
movaps xmm0, xmm2
mulss xmm0, xmm1
subss xmm2, xmm0
andps xmm7, xmm2
movaps xmm0, xmm2
xorps xmm0, xmm7
movaps xmm1, xmm2
cmpltss xmm0, xmm6
andps xmm6, xmm0
orps xmm6, xmm7
addss xmm1, xmm6
subss xmm1, xmm6
movaps xmm0, xmm1
subss xmm0, xmm2
cmpnless xmm0, xmm7
andps xmm0, xmm4
subss xmm1, xmm0
mulss xmm1, dword [0x10105d20]
jmp 0x100ed9bc
movss xmm2, dword [0x10105df4]
movss xmm1, dword [ebp - 0x260]
test bl, bl
je 0x100ed9a5
movaps xmm0, xmm2
jmp 0x100ed9a8
movaps xmm0, xmm1
mov eax, dword [ebp - 0x270]
movss dword [eax], xmm0
test bh, bh
je 0x100ed9b9
movaps xmm1, xmm2
lea esi, [eax + 4]
movss dword [esi], xmm1
mov bl, byte [ebp - 0x233]
test bl, bl
je 0x100ed9d4
mov eax, dword [ebp - 0x2c]
movss xmm1, dword [eax + 0x64]
jmp 0x100ed9ea
movd xmm1, dword [ebp - 0x2c4]
movd xmm0, edi
cvtdq2ps xmm1, xmm1
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
mov eax, dword [ebp - 0x38]
add eax, 0xfffffffe
push ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x1c], xmm0
fld dword [ebp - 0x1c]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, dword [0x10137d80]
add esp, 4
cmp byte [ebp - 0x1fd], 0
fstp dword [ebp - 0x284]
cvttss2si edi, dword [ebp - 0x284]
mov dword [ebp - 0x28], eax
je 0x100eda38
mov word [ebp - 0x28], 0x8282
mov byte [ebp - 0x26], 0x82
movd xmm0, dword [ebp - 0x274]
mov ecx, 0x10137498
mov eax, dword [ebp - 0x270]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x1c], 0
mulss xmm0, dword [eax]
cvttss2si eax, xmm0
mov byte [ebp - 0x25], al
lea eax, [ebp - 0x2c]
push eax
call fcn.10031b10
mov ecx, 0x10137498
mov esi, dword [eax]
lea eax, [ebp - 0x22c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x230]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x2bc]
mov ecx, 0x10137498
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100edbb8
movd xmm0, dword [ebp - 0x274]
mov eax, dword [ebp - 0x28]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x270]
mov ecx, dword [ebp - 0x34]
push 0
mulss xmm0, dword [0x10105d94]
add ecx, 6
mov byte [ebp - 0x2d], 0
mov edi, dword [ebp - 0x30]
push edi
mulss xmm0, dword [eax]
cvttss2si eax, xmm0
mov byte [ebp - 0x41], al
mov esi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x38]
push esi
add eax, 2
push 2
push eax
mov eax, dword [ebp - 0x3c]
add eax, ecx
mov ecx, dword [ebp - 0x40]
movd xmm0, eax
lea ecx, [ecx - 1]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x18]
cvttss2si edx, xmm0
call fcn.100e0370
mov eax, dword [ebp - 0x38]
add esp, 0x14
mov ecx, dword [ebp - 0x40]
add eax, 2
push 0
push esi
push edi
push 2
push eax
mov eax, dword [ebp - 0x3c]
lea ecx, [ecx - 1]
add eax, dword [ebp - 0x34]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x18]
cvttss2si edx, xmm0
call fcn.100e0370
mov ecx, dword [ebp - 0x34]
add esp, 0x14
mov eax, dword [ebp - 0x3c]
add ecx, 2
add eax, ecx
mov ecx, dword [ebp - 0x38]
push 1
push edi
movd xmm0, eax
mov eax, dword [ebp - 0x40]
cvtdq2ps xmm0, xmm0
push esi
inc eax
push 4
push 2
add ecx, eax
addss xmm0, dword [ebp - 0x18]
cvttss2si edx, xmm0
call fcn.100e0370
mov ecx, dword [ebp - 0x34]
add esp, 0x14
mov eax, dword [ebp - 0x3c]
add ecx, 2
add eax, ecx
push 1
push esi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
push edi
push 4
push 2
addss xmm0, dword [ebp - 0x18]
cvttss2si edx, xmm0
mov ecx, dword [ebp - 0x40]
lea ecx, [ecx - 3]
call fcn.100e0370
cvttss2si edi, dword [ebp - 0x284]
add esp, 0x14
movd xmm0, dword [ebp - 0x274]
mov esi, dword [ebp - 0x270]
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [esi]
cvttss2si ecx, xmm0
push ecx
mov eax, esp
push 4
mov byte [eax + 3], cl
mov word [eax], 0xa0a
mov byte [eax + 2], 0xa
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
add eax, 2
push eax
mov eax, dword [ebp - 0x3c]
add ecx, 2
add eax, ecx
mov ecx, dword [ebp - 0x40]
movd xmm0, eax
lea ecx, [ecx - 1]
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x18]
cvttss2si edx, xmm0
call fcn.100dfed0
mov ecx, dword [ebp - 0x34]
lea eax, [edi + 2]
add esp, 0xc
add ecx, 3
push dword [ebp - 0x28]
push 2
push eax
mov eax, dword [ebp - 0x3c]
add eax, ecx
mov ecx, dword [ebp - 0x40]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x18]
cvttss2si edx, xmm0
call fcn.100dfe90
mov eax, 0x66666667
add esp, 4
imul dword [ebp - 0x20]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x2f4], xmm0
fld qword [ebp - 0x2f4]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_round
mov ecx, dword [ebp - 0x2c4]
add esp, 8
fstp qword [ebp - 0x2f4]
cvttsd2si eax, qword [ebp - 0x2f4]
cmp ecx, eax
jg 0x100edd4d
test bl, bl
mov ebx, dword [ebp - 0x20c]
jne 0x100edd53
mov edx, ecx
lea ecx, [ebp - 0x250]
call fcn.1002a580
cmp byte [ebp - 0x1fd], 0
je 0x100edd20
movd xmm0, ebx
lea eax, [ebp - 0x250]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 4], 0x58
push 2
push eax
mulss xmm0, dword [esi]
cvttss2si ecx, xmm0
push ecx
mov eax, esp
mov word [eax], 0x8282
mov byte [eax + 2], 0x82
mov byte [eax + 3], cl
mov ecx, 0x101b1380
mov eax, dword [ebp - 0x3c]
add eax, dword [ebp - 0x34]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x18]
cvttss2si eax, xmm0
push eax
mov eax, dword [ebp - 0x40]
add eax, edi
push eax
call fcn.100e0400
lea ecx, [ebp - 0x250]
mov dword [ebp - 4], 0xffffffff
call fcn.100326f0
jmp 0x100edd53
movd xmm0, ebx
lea eax, [ebp - 0x250]
cvtdq2ps xmm0, xmm0
mov dword [ebp - 4], 0x59
push 2
push eax
mulss xmm0, dword [esi]
cvttss2si ecx, xmm0
push ecx
mov eax, esp
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
jmp 0x100edce2
mov ebx, dword [ebp - 0x20c]
movss xmm0, dword [esi]
lea eax, [ebp - 0x2c]
mulss xmm0, dword [0x10105ed8]
mov ecx, 0x10137c60
push eax
mov dword [ebp - 0x1c], 0
addss xmm0, dword [ebp - 0x18]
movss dword [ebp - 0x28], xmm0
call fcn.10031b10
mov ecx, 0x10137c60
mov esi, dword [eax]
lea eax, [ebp - 0x22c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x230]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x2bc]
mov ecx, 0x10137c60
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100ee017
cmp byte [ebp - 0x1fe], 0
je 0x100ee017
mov eax, dword [ebp - 0x270]
mov ecx, dword [ebp - 0x2c0]
movss xmm0, dword [eax + 4]
mulss xmm0, dword [0x10106010]
mov eax, dword [0x101ae760]
movss dword [ebp - 0x260], xmm0
call eax
mov ecx, eax
test ecx, ecx
jne 0x100ede24
lea eax, [ebp - 0x208]
mov dword [ebp - 0x208], 0x6f727265
push eax
lea ecx, [ebp - 0x74]
mov word [ebp - 0x204], 0x72
call fcn.10032790
jmp 0x100edf50
mov eax, dword [0x101ae764]
call eax
mov ecx, eax
test ecx, ecx
jne 0x100ede58
lea eax, [ebp - 0x208]
mov dword [ebp - 0x208], 0x6f727265
push eax
lea ecx, [ebp - 0x74]
mov word [ebp - 0x204], 0x72
call fcn.10032790
jmp 0x100edf50
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
mov ecx, dword [0x101ae64c]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
call edx
push eax
lea ecx, [ebp - 0x8c]
call fcn.100c21d0
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x5a
call fcn.1003d840
mov byte [ebp - 4], 0x5b
mov edi, dword [ebp - 0x7c]
test edi, edi
jne 0x100edea3
lea ecx, [ebp - 0x74]
call fcn.1003d840
jmp 0x100edf34
mov esi, dword [0x1014763c]
lea ecx, [ebp - 0x8c]
call fcn.100c2220
push 0
push 0
push 0
push 0
push edi
push eax
push 0
push 0xfde9
call esi
push 0
push eax
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x1c], eax
call fcn.100495c0
push eax
lea ecx, [ebp - 0xa4]
call fcn.10042370
lea ecx, [ebp - 0x250]
call fcn.100326f0
mov ebx, dword [0x1014763c]
lea ecx, [ebp - 0xa4]
push 0
call fcn.100326d0
mov edi, dword [ebp - 0x7c]
lea ecx, [ebp - 0x8c]
mov esi, eax
call fcn.100c2220
push 0
push 0
push dword [ebp - 0x1c]
push esi
push edi
push eax
push 0
push 0xfde9
call ebx
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0x74]
call fcn.10032740
lea ecx, [ebp - 0xa4]
call fcn.100326f0
lea ecx, [ebp - 0x8c]
call fcn.10055bd0
mov ebx, dword [ebp - 0x20c]
lea eax, [ebp - 0x1c]
mov dword [ebp - 4], 0x5c
push eax
lea ecx, [ebp - 0x74]
call fcn.10055bb0
lea ecx, [ebp - 0x74]
mov edi, dword [eax]
lea eax, [ebp - 0x2c]
push eax
call fcn.10055b90
lea ecx, [ebp - 0x74]
mov esi, dword [eax]
lea eax, [ebp - 0x22c]
push eax
call fcn.10055bb0
mov edx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
lea ecx, [ebp - 0x230]
push edi
push esi
push dword [eax]
call fcn.10055d40
mov edi, dword [ebp - 0x270]
lea eax, [ebp - 0x74]
movd xmm0, ebx
add esp, 0xc
cmp byte [ebp - 0x1fd], 0
cvtdq2ps xmm0, xmm0
push 2
push eax
mulss xmm0, dword [edi + 4]
cvttss2si ecx, xmm0
push ecx
mov eax, esp
mov byte [eax + 3], cl
mov ecx, 0x101b1380
je 0x100edfd5
mov word [eax], 0x8282
mov byte [eax + 2], 0x82
jmp 0x100edfde
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
mov eax, dword [ebp - 0x3c]
add eax, dword [ebp - 0x34]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x28]
cvttss2si eax, xmm0
push eax
mov eax, dword [ebp - 0x38]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x40]
push eax
call fcn.100e0400
lea ecx, [ebp - 0x74]
mov dword [ebp - 4], 0xffffffff
call fcn.100326f0
jmp 0x100ee01d
mov edi, dword [ebp - 0x270]
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x1c], 1
push eax
mov ecx, 0x10137c60
call fcn.10031b10
mov ecx, 0x10137c60
mov esi, dword [eax]
lea eax, [ebp - 0x22c]
push eax
call fcn.10031b20
push esi
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x230]
push dword [eax]
call fcn.10033170
add esp, 8
mov esi, eax
lea eax, [ebp - 0x2bc]
mov ecx, 0x10137c60
push eax
call fcn.10031b10
mov ecx, dword [esi]
cmp ecx, dword [eax]
je 0x100ee16f
cmp byte [ebp - 0x1fe], 0
je 0x100ee16f
movss xmm0, dword [edi + 4]
mov ecx, 0x10146fec
mov eax, dword [0x101ae918]
mulss xmm0, dword [0x10105ed0]
add eax, 0xffffff9d
xor eax, 0x2f303ca3
movss xmm1, dword [ebp - 0x28]
add eax, dword [ebp - 0x2c0]
subss xmm1, xmm0
push eax
lea eax, [ebp - 0x2f4]
push eax
movss dword [ebp - 0x28], xmm1
call fcn.100f06c0
lea edx, [ebp - 0x288]
mov word [ebp - 0x288], 0x6325
lea ecx, [ebp - 0x5c]
mov byte [ebp - 0x286], 0
mov eax, dword [eax]
add eax, 0xc
push eax
call fcn.100f0580
add esp, 4
cmp byte [ebp - 0x1fd], 0
lea eax, [ebp - 0x5c]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mov dword [ebp - 4], 0x5d
push 2
push eax
mulss xmm0, dword [edi + 4]
cvttss2si ecx, xmm0
push ecx
mov eax, esp
mov byte [eax + 3], cl
mov ecx, 0x101b13e0
je 0x100ee126
mov word [eax], 0x8282
mov byte [eax + 2], 0x82
jmp 0x100ee12f
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
mov eax, dword [ebp - 0x3c]
add eax, dword [ebp - 0x34]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
addss xmm0, dword [ebp - 0x28]
subss xmm0, dword [ebp - 0x260]
addss xmm0, dword [0x10105e74]
cvttss2si eax, xmm0
push eax
mov eax, dword [ebp - 0x38]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x40]
push eax
call fcn.100e0400
lea ecx, [ebp - 0x5c]
call fcn.100326f0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100f27a0
mov esp, ebp
pop ebp
ret 4