Function at 0x1009f900
Capabilities:
Encode data using base64

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100b511a
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x430
mov eax, dword [0x100c9380]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebx + 8]
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x58], 0
lea edi, [eax + 8]
mov eax, dword [edi]
mov ecx, edi
mov dword [ebp - 0x3a4], edi
mov eax, dword [eax + 0x28]
call eax
mov edx, dword [0x100f47dc]
mov ecx, dword [0x100f463c]
add edx, 0xffffffd6
mov dword [ebp - 0x354], eax
xor edx, 0x911388b8
lea esi, [eax*4 + 0x100f7f34]
mov eax, dword [ebp - 0x358]
movss xmm0, dword [ecx + 0x14]
mulss xmm0, dword [0x100bf31c]
mov ecx, dword [eax + edx]
mov eax, dword [0x100c9400]
movss dword [ebp - 0x37c], xmm0
cmp ecx, dword [edx + eax]
je 0x1009f9b6
mov byte [ebp - 0x341], 1
jmp 0x1009f9cc
mov ecx, dword [0x100f46c4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
call eax
test eax, eax
setne byte [ebp - 0x341]
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x24]
call eax
cmp byte [0x100cf3d4], 0
mov dh, al
mov dl, byte [ebp - 0x341]
mov byte [ebp - 0x349], dh
je 0x1009fa1a
test dl, dl
je 0x1009fa1a
test dh, dh
jne 0x1009fa2d
mov eax, dword [0x100f486c]
mov ecx, dword [ebp - 0x358]
add eax, 0xffffffb2
xor eax, 0x911388dc
mov byte [eax + ecx], 1
mov eax, dword [ebp - 0x354]
mov byte [eax + 0x100f7ef7], 1
jmp 0x1009fa40
test dh, dh
jne 0x1009fa2d
mov eax, dword [ebp - 0x354]
mov byte [eax + 0x100f7ef7], 1
jmp 0x1009fa40
mov eax, dword [ebp - 0x354]
cmp byte [eax + 0x100f7ef7], 0
je 0x100a221c
movss xmm0, dword [esi]
test dh, dh
je 0x1009fa52
subss xmm0, dword [ebp - 0x37c]
jmp 0x1009fa5a
addss xmm0, dword [ebp - 0x37c]
movss dword [esi], xmm0
test dl, dl
je 0x1009fa6f
cmp byte [0x100cd544], 0
je 0x1009fa6f
mov dl, 1
jmp 0x1009fa71
xor dl, dl
comiss xmm0, dword [0x100bf29c]
lea ecx, [ebp - 0x424]
mov dword [ebp - 0x424], 0x3f800000
mov dword [ebp - 0x18], 0
lea eax, [ebp - 0x18]
xorps xmm2, xmm2
cmovbe ecx, esi
movss xmm0, dword [ecx]
comiss xmm0, xmm2
cmova eax, ecx
movss xmm1, dword [eax]
ucomiss xmm1, xmm2
movss dword [esi], xmm1
lahf
test ah, 0x44
jp 0x1009fabb
test dl, dl
je 0x100a221c
mov eax, dword [0x100f463c]
mov ecx, dword [0x100f4848]
add ecx, 0xffffffbb
xor ecx, 0x911388d3
movss xmm2, dword [eax + 0x10]
mov eax, dword [ebp - 0x358]
subss xmm2, dword [ecx + eax]
test dh, dh
je 0x1009faf0
comiss xmm2, dword [0x100bf350]
ja 0x100a221c
movaps xmm0, xmm1
mulss xmm1, dword [0x100bf418]
mulss xmm0, dword [0x100bf434]
cvttss2si eax, xmm0
mov dword [ebp - 0x390], eax
cvttss2si eax, xmm1
mov dword [ebp - 0x348], eax
test dh, dh
je 0x1009fb83
test dl, dl
je 0x1009fb83
movss xmm0, dword [0x100bf338]
comiss xmm2, xmm0
mov dword [ebp - 0x390], 0x70
mov dword [ebp - 0x348], 0x50
jbe 0x1009fb83
subss xmm2, xmm0
movss xmm0, dword [0x100bf3ec]
movaps xmm1, xmm2
mulss xmm2, dword [0x100bf36c]
mulss xmm1, dword [0x100bf380]
subss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [0x100bf3d0]
subss xmm0, xmm2
mov dword [ebp - 0x390], eax
cvttss2si eax, xmm0
mov dword [ebp - 0x348], eax
mov ecx, dword [0x100f45e0]
lea edx, [ebp - 0x340]
mov esi, dword [ebp - 0x354]
push edx
push esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
test al, al
je 0x100a221c
push dword [ebp - 0x390]
push dword [ebp - 0x358]
call fcn.1009f2d0
lea eax, [ebp - 0x38c]
push eax
push dword [ebp - 0x358]
call fcn.100a2f50
test al, al
je 0x100a221c
cmp byte [ebp - 0x341], 0
lea edx, [ebp - 0x18]
push dword [0x100cde4c]
lea ecx, [ebp - 0x50]
push dword [0x100cde48]
je 0x1009fc07
mov dword [ebp - 0x18], 0
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cde4c]
jne 0x1009fc24
jmp 0x1009fc42
mov dword [ebp - 0x18], 1
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cde4c]
je 0x1009fda5
push dword [ebp - 0x390]
push dword [ebp - 0x358]
call fcn.100a3230
cmp byte [ebp - 0x341], 0
je 0x1009fda5
push dword [0x100cd3ac]
lea edx, [ebp - 0x18]
mov dword [ebp - 0x18], 0
push dword [0x100cd3a8]
lea ecx, [ebp - 0x50]
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cd3ac]
jne 0x1009fdd4
xor cl, cl
mov eax, dword [0x100cd440]
mov byte [ebp - 0x350], al
shr eax, 8
mov byte [ebp - 0x34f], al
mov al, byte [0x100cd442]
mov byte [ebp - 0x34e], al
mov eax, dword [ebp - 0x348]
mov byte [ebp - 0x34d], al
test cl, cl
je 0x1009fd6c
push dword [ebp - 0x350]
mov edx, dword [ebp - 0x388]
push dword [ebp - 0x380]
mov ecx, dword [ebp - 0x38c]
push dword [ebp - 0x384]
call fcn.10096d00
mov eax, dword [ebp - 0x348]
add esp, 0xc
mov edx, dword [ebp - 0x388]
mov ecx, dword [ebp - 0x38c]
mov byte [ebp - 0x34d], al
mov eax, dword [ebp - 0x380]
add eax, 2
mov word [ebp - 0x350], 0
mov byte [ebp - 0x34e], 0
lea edx, [edx - 1]
push dword [ebp - 0x350]
lea ecx, [ecx - 1]
push eax
mov eax, dword [ebp - 0x384]
add eax, 2
push eax
call fcn.10096d00
mov eax, dword [ebp - 0x348]
add esp, 0xc
mov edx, dword [ebp - 0x388]
mov ecx, dword [ebp - 0x38c]
mov byte [ebp - 0x34d], al
mov eax, dword [ebp - 0x380]
add eax, 0xfffffffe
mov word [ebp - 0x350], 0
mov byte [ebp - 0x34e], 0
lea edx, [edx + 1]
push dword [ebp - 0x350]
lea ecx, [ecx + 1]
push eax
mov eax, dword [ebp - 0x384]
add eax, 0xfffffffe
push eax
call fcn.10096d00
add esp, 0xc
cmp byte [ebp - 0x341], 0
lea edx, [ebp - 0x18]
push dword [0x100cd714]
lea ecx, [ebp - 0x50]
push dword [0x100cd710]
je 0x1009fddb
mov dword [ebp - 0x18], 0
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cd714]
jne 0x1009fdf8
jmp 0x1009feac
push dword [0x100cd3ac]
lea edx, [ebp - 0x18]
mov dword [ebp - 0x18], 1
push dword [0x100cd3a8]
lea ecx, [ebp - 0x50]
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cd3ac]
je 0x1009fc71
mov cl, 1
jmp 0x1009fc73
mov dword [ebp - 0x18], 1
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cd714]
je 0x1009fedc
lea eax, [ebp - 0x330]
push eax
lea ecx, [ebp - 0x74]
call fcn.10026660
push 0x18
push 0
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0
push ecx
mov ecx, eax
call fcn.100401d0
lea ecx, [ebp - 0x74]
mov byte [ebp - 4], 2
call fcn.10026610
cmp dword [ebp - 0x20], 0xf
jbe 0x1009fe48
push 0
push 0xf
lea ecx, [ebp - 0x30]
call fcn.10033300
push 0x100bed58
lea ecx, [ebp - 0x30]
call fcn.10033380
mov eax, dword [0x100cd7a8]
mov ecx, 0x100f7a08
mov dword [ebp - 0x37c], eax
mov eax, dword [ebp - 0x348]
mov byte [ebp - 0x379], al
lea eax, [ebp - 0x30]
push 2
push eax
push dword [ebp - 0x37c]
mov eax, dword [ebp - 0x388]
sub eax, dword [0x100f7a10]
push eax
mov eax, dword [ebp - 0x384]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x38c]
push eax
call fcn.10096f80
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0xffffffff
call fcn.10026610
cmp byte [ebp - 0x341], 0
je 0x1009fedc
push dword [0x100cd84c]
lea edx, [ebp - 0x18]
mov dword [ebp - 0x18], 0
push dword [0x100cd848]
lea ecx, [ebp - 0x50]
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cd84c]
jne 0x1009ff0b
jmp 0x100a00b2
push dword [0x100cd84c]
lea edx, [ebp - 0x18]
mov dword [ebp - 0x18], 1
push dword [0x100cd848]
lea ecx, [ebp - 0x50]
call fcn.10027080
add esp, 8
mov eax, dword [eax]
cmp eax, dword [0x100cd84c]
je 0x100a00b2
mov ecx, dword [0x100f4820]
lea eax, [ebp - 0x428]
mov esi, dword [ebp - 0x380]
add ecx, 0xffffffc5
xor ecx, 0x911388c9
mov dword [ebp - 0x428], 0x64
add ecx, dword [ebp - 0x358]
add esi, 0xfffffffe
cmp dword [ecx], 0x64
cmovl eax, ecx
mov ecx, dword [eax]
mov eax, 0x64
sub eax, ecx
mov dword [ebp - 0x35c], ecx
imul ecx, eax, 0x1fe
mov eax, 0x51eb851f
imul ecx
mov ecx, 0xff
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, ecx
cmovg eax, ecx
imul ecx, dword [ebp - 0x35c], 0x1fe
mov dword [ebp - 0x394], eax
mov eax, 0x51eb851f
imul ecx
mov ecx, 0xff
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 0xff
push ecx
cmovg eax, ecx
mov dword [ebp - 0x37c], eax
mov eax, dword [ebp - 0x35c]
imul eax, esi
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100bf1c4]
movss dword [ebp - 0x18], xmm0
fld dword [ebp - 0x18]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov ecx, dword [ebp - 0x348]
mov eax, esp
mov edx, dword [ebp - 0x388]
fstp dword [ebp - 0x18]
cvttss2si esi, dword [ebp - 0x18]
mov byte [eax + 3], cl
mov ecx, dword [ebp - 0x38c]
mov word [eax], 0xa0a
mov byte [eax + 2], 0xa
mov eax, dword [ebp - 0x380]
push eax
push 4
lea ecx, [ecx - 6]
call fcn.10096d40
mov ecx, dword [ebp - 0x394]
add esp, 8
mov eax, esp
push esi
mov byte [eax], cl
mov ecx, dword [ebp - 0x37c]
mov byte [eax + 1], cl
mov ecx, dword [ebp - 0x390]
mov byte [eax + 3], cl
mov ecx, dword [ebp - 0x388]
mov byte [eax + 2], 0
inc ecx
mov eax, dword [ebp - 0x380]
add eax, 0xfffffffe
sub eax, esi
add eax, ecx
mov ecx, dword [ebp - 0x38c]
mov dword [ebp - 0x18], eax
add ecx, 0xfffffffb
push 2
mov edx, eax
call fcn.10096d00
mov eax, dword [ebp - 0x35c]
add esp, 0xc
cmp eax, 0x64
jge 0x100a00ac
mov edx, eax
lea ecx, [ebp - 0x30]
call fcn.1002fb20
push 2
push eax
push ecx
mov ecx, dword [ebp - 0x348]
mov eax, esp
mov dword [ebp - 4], 3
mov byte [eax + 3], cl
mov ecx, 0x100f79fc
mov word [eax], 0xffff
mov byte [eax + 2], 0xff
mov eax, dword [ebp - 0x18]
add eax, 0xfffffffb
push eax
mov eax, dword [ebp - 0x38c]
add eax, 0xfffffffb
push eax
call fcn.10096f80
lea ecx, [ebp - 0x30]
call fcn.10026610
mov esi, dword [ebp - 0x354]
xorps xmm0, xmm0
mov dword [ebp - 0x38], 0
movq qword [ebp - 0x40], xmm0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
cmp byte [ebp - 0x341], 0
mov dword [ebp - 4], 4
movq qword [ebp - 0x68], xmm0
mov dword [ebp - 0x60], 0
je 0x100a010f
push 0x100cd8f0
lea ecx, [ebp - 0x434]
call fcn.10025b50
lea ecx, [ebp - 0x434]
mov eax, 0x101
jmp 0x100a012a
push 0x100cd998
lea ecx, [ebp - 0x440]
call fcn.10025b50
lea ecx, [ebp - 0x440]
mov eax, 0x202
mov edx, dword [ecx + 8]
mov dword [ebp - 0x18], edx
mov edx, dword [ecx + 4]
mov dword [ebp - 0x37c], edx
mov edx, dword [ecx]
mov dword [ecx + 8], 0
mov dword [ecx + 4], 0
mov dword [ecx], 0
mov ecx, dword [ebp - 0x37c]
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x394], edx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 4], 6
test al, 2
je 0x100a0192
and eax, 0xfffffffd
lea ecx, [ebp - 0x440]
mov dword [ebp - 0x350], eax
call fcn.10025af0
mov eax, dword [ebp - 0x350]
mov byte [ebp - 4], 7
test al, 1
je 0x100a01ae
and eax, 0xfffffffe
lea ecx, [ebp - 0x434]
mov dword [ebp - 0x350], eax
call fcn.10025af0
imul eax, esi, 0x5bc
lea edx, [ebp - 0x1e8]
push edx
push esi
lea ecx, [eax + 0x100da540]
mov dword [ebp - 0x354], ecx
mov ecx, dword [0x100f45e0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x20]
call eax
xorps xmm0, xmm0
mov dword [ebp - 0x20], 0
lea ecx, [ebp - 0x154]
mov dword [ebp - 0x1c], 0
movups xmmword [ebp - 0x30], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a01f3
sub ecx, edx
lea eax, [ebp - 0x154]
push ecx
push eax
lea ecx, [ebp - 0x30]
call fcn.100272e0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x30]
mov eax, dword [ebp - 0x350]
mov edx, dword [ebp - 0x20]
or eax, 4
cmp dword [ebp - 0x1c], 0xf
push 0x13
cmova ecx, dword [ebp - 0x30]
push str.STEAM_1:0:174177380
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x58], eax
call fcn.10048b90
add esp, 8
test al, al
jne 0x100a0260
lea eax, [ebp - 0x154]
push eax
lea ecx, [ebp - 0x374]
call fcn.10026660
mov eax, dword [ebp - 0x350]
or eax, 8
jmp 0x100a0266
mov eax, dword [ebp - 0x350]
test al, 8
je 0x100a0284
and eax, 0xfffffff7
lea ecx, [ebp - 0x374]
mov dword [ebp - 0x350], eax
call fcn.10026610
mov eax, dword [ebp - 0x350]
mov dword [ebp - 4], 7
test al, 4
je 0x100a0297
lea ecx, [ebp - 0x30]
call fcn.10026610
mov eax, dword [ebp - 0x394]
mov esi, eax
cmp eax, dword [ebp - 0x37c]
je 0x100a1777
nop dword [eax + eax]
cmp dword [esi], 0
jne 0x100a0478
mov eax, dword [0x100f4824]
lea ecx, [ebp - 0x30]
add eax, 0xffffffc4
mov edx, 0x100bf0dc
xor eax, 0x911388ca
add eax, dword [ebp - 0x358]
push eax
call fcn.1004a860
add esp, 4
cmp byte [ebp - 0x349], 0
je 0x100a0380
mov ecx, dword [ebp - 0x348]
mov byte [ebp - 0x3d9], cl
lea ecx, [ebp - 0x378]
push eax
mov byte [ebp - 4], 9
mov word [ebp - 0x3dc], 0xc896
mov byte [ebp - 0x3da], 0x3c
call fcn.1002aed0
mov eax, dword [ebp - 0x3dc]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x38]
je 0x100a0361
movups xmm0, xmmword [ebp - 0x378]
mov edx, 0xf
mov byte [ebp - 0x378], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x368]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x3c], 0x1c
mov byte [ebp - 4], 9
jmp 0x100a040a
lea eax, [ebp - 0x378]
push eax
push ecx
lea ecx, [ebp - 0x40]
call fcn.1007bd70
mov edx, dword [ebp - 0x364]
mov byte [ebp - 4], 9
jmp 0x100a040a
mov ecx, dword [ebp - 0x348]
mov byte [ebp - 0x3dd], cl
lea ecx, [ebp - 0x378]
push eax
mov byte [ebp - 4], 0xb
mov word [ebp - 0x3e0], 0xc896
mov byte [ebp - 0x3de], 0x3c
call fcn.1002aed0
mov eax, dword [ebp - 0x3e0]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x38]
je 0x100a03f0
movups xmm0, xmmword [ebp - 0x378]
mov edx, 0xf
mov byte [ebp - 0x378], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x368]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x3c], 0x1c
jmp 0x100a0406
lea eax, [ebp - 0x378]
push eax
push ecx
lea ecx, [ebp - 0x40]
call fcn.1007bd70
mov edx, dword [ebp - 0x364]
mov byte [ebp - 4], 0xb
cmp edx, 0xf
jbe 0x100a0440
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x378]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a0436
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
push ecx
push edx
call fcn.100aa1a1
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x1c]
cmp ecx, 0xf
jbe 0x100a0478
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a046e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
push ecx
push edx
call fcn.100aa1a1
add esp, 8
cmp dword [esi], 1
mov ecx, dword [ebp - 0x358]
jne 0x100a069f
mov eax, dword [0x100f4858]
add eax, 0xffffffb7
xor eax, 0x911388d7
cmp byte [eax + ecx], 0
mov eax, dword [0x100f4874]
je 0x100a05d5
add eax, 0xffffffb0
xor eax, 0x911388de
push 0x100bf0a8
cmp dword [eax + ecx], 0
lea ecx, [ebp - 0x30]
jle 0x100a0549
call fcn.10026660
cmp byte [ebp - 0x349], 0
je 0x100a050a
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0xd
mov byte [ebp - 0x3e1], al
lea eax, [ebp - 0x3e4]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3e4], 0xffff
push eax
mov byte [ebp - 0x3e2], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0xe
jmp 0x100a0673
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0xf
mov byte [ebp - 0x3e5], al
lea eax, [ebp - 0x3e8]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3e8], 0xffff
push eax
mov byte [ebp - 0x3e6], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x10
jmp 0x100a0673
call fcn.10026660
cmp byte [ebp - 0x349], 0
je 0x100a0596
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x11
mov byte [ebp - 0x3e9], al
lea eax, [ebp - 0x3ec]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3ec], 0xffff
push eax
mov byte [ebp - 0x3ea], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x12
jmp 0x100a0673
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x13
mov byte [ebp - 0x3ed], al
lea eax, [ebp - 0x3f0]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3f0], 0xffff
push eax
mov byte [ebp - 0x3ee], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x14
jmp 0x100a0673
add eax, 0xffffffb0
xor eax, 0x911388de
cmp dword [eax + ecx], 0
jle 0x100a069f
push 0x100bf0ac
lea ecx, [ebp - 0x30]
call fcn.10026660
cmp byte [ebp - 0x349], 0
je 0x100a0639
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x15
mov byte [ebp - 0x3f1], al
lea eax, [ebp - 0x3f4]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3f4], 0xffff
push eax
mov byte [ebp - 0x3f2], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x16
jmp 0x100a0673
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x17
mov byte [ebp - 0x3f5], al
lea eax, [ebp - 0x3f8]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3f8], 0xffff
push eax
mov byte [ebp - 0x3f6], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x378]
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
mov ecx, dword [ebp - 0x358]
cmp dword [esi], 2
jne 0x100a0771
mov eax, dword [0x100f4864]
add eax, 0xffffffb4
xor eax, 0x911388da
cmp byte [eax + ecx], 0
je 0x100a0771
push str.ZOOM
lea ecx, [ebp - 0x30]
call fcn.10026660
cmp byte [ebp - 0x349], 0
je 0x100a0711
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x19
mov byte [ebp - 0x3f9], al
lea eax, [ebp - 0x3fc]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3fc], 0xb43c
push eax
mov byte [ebp - 0x3fa], 0xe1
call fcn.100a4a90
mov byte [ebp - 4], 0x1a
jmp 0x100a074b
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x1b
mov byte [ebp - 0x3fd], al
lea eax, [ebp - 0x400]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x400], 0xb43c
push eax
mov byte [ebp - 0x3fe], 0xe1
call fcn.100a4a90
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x378]
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
cmp dword [esi], 3
xorps xmm1, xmm1
mov edx, dword [ebp - 0x358]
jne 0x100a0859
mov eax, dword [0x100f4880]
add eax, 0xffffffad
xor eax, 0x911388e1
movss xmm0, dword [eax + edx]
comiss xmm0, xmm1
jbe 0x100a0859
push str.BLIND
lea ecx, [ebp - 0x30]
call fcn.10026660
cmp byte [ebp - 0x349], 0
je 0x100a07f0
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x1d
mov byte [ebp - 0x401], al
lea eax, [ebp - 0x404]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x404], 0xb43c
push eax
mov byte [ebp - 0x402], 0xe1
call fcn.100a4a90
mov byte [ebp - 4], 0x1e
jmp 0x100a082a
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x1f
mov byte [ebp - 0x405], al
lea eax, [ebp - 0x408]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x408], 0xb43c
push eax
mov byte [ebp - 0x406], 0xe1
call fcn.100a4a90
mov byte [ebp - 4], 0x20
lea eax, [ebp - 0x378]
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
mov edx, dword [ebp - 0x358]
xorps xmm1, xmm1
cmp dword [esi], 4
jne 0x100a0980
mov eax, dword [0x100f4774]
mov ecx, dword [eax + edx]
movss xmm0, dword [ecx + 0x58]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100a0980
mov eax, dword [ecx + 0x50]
mov ecx, dword [0x100f4734]
mov dword [ebp - 0x39c], ecx
mov ecx, dword [0x100f478c]
mov dword [ebp - 0x398], eax
cmp dword [ecx + edx], 0
jne 0x100a08b2
mov eax, dword [0x100f4710]
mov ecx, edx
call eax
mov ecx, dword [0x100f478c]
mov eax, dword [ebp - 0x398]
mov edx, eax
mov eax, dword [ebp - 0x358]
mov ecx, dword [ecx + eax]
call dword [ebp - 0x39c]
cmp eax, 0x3c7
jne 0x100a0980
push str.RELOAD
lea ecx, [ebp - 0x30]
call fcn.10026660
cmp byte [ebp - 0x349], 0
je 0x100a0920
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x21
mov byte [ebp - 0x409], al
lea eax, [ebp - 0x40c]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x40c], 0xb43c
push eax
mov byte [ebp - 0x40a], 0xe1
call fcn.100a4a90
mov byte [ebp - 4], 0x22
jmp 0x100a095a
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x23
mov byte [ebp - 0x40d], al
lea eax, [ebp - 0x410]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x410], 0xb43c
push eax
mov byte [ebp - 0x40e], 0xe1
call fcn.100a4a90
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x378]
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
cmp dword [esi], 5
jne 0x100a0a50
mov eax, dword [0x100f4740]
mov ecx, dword [ebp - 0x358]
call eax
test al, al
je 0x100a0a50
push 0x100bf100
lea ecx, [ebp - 0x30]
call fcn.10026660
cmp byte [ebp - 0x349], 0
je 0x100a09f0
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x25
mov byte [ebp - 0x411], al
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x414], 0xff
push eax
mov byte [ebp - 0x412], 0
call fcn.100a4a90
mov byte [ebp - 4], 0x26
jmp 0x100a0a2a
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x27
mov byte [ebp - 0x415], al
lea eax, [ebp - 0x418]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x418], 0xff
push eax
mov byte [ebp - 0x416], 0
call fcn.100a4a90
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0x378]
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
cmp dword [esi], 6
mov eax, dword [ebp - 0x354]
jne 0x100a0b15
test eax, eax
je 0x100a0b15
cmp dword [eax + 0x18], 0
je 0x100a0b15
lea ecx, [eax + 8]
call fcn.10025c80
mov eax, dword [eax]
test eax, eax
je 0x100a0b0f
cmp byte [eax + 0x10], 0
jne 0x100a0b0f
mov eax, dword [eax + 0x40c]
cmp eax, 1
je 0x100a0b0f
cmp eax, 0xc
je 0x100a0b0f
cmp eax, 2
je 0x100a0b0f
push str.FAKE
lea ecx, [ebp - 0x30]
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x29
mov byte [ebp - 0x419], al
lea eax, [ebp - 0x41c]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x41c], 0xffff
push eax
mov byte [ebp - 0x41a], 0xff
call fcn.100a4a90
lea eax, [ebp - 0x378]
mov byte [ebp - 4], 0x2a
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
mov eax, dword [ebp - 0x354]
cmp dword [esi], 7
jne 0x100a0d90
test eax, eax
je 0x100a0d90
cmp dword [eax + 0x18], 0
je 0x100a0d90
lea ecx, [eax + 8]
call fcn.10025c80
mov eax, dword [eax]
test eax, eax
je 0x100a0d90
cmp byte [eax + 0x10], 0
jne 0x100a0d90
mov eax, dword [eax + 0x40c]
lea ecx, [ebp - 0x30]
cmp eax, 1
jne 0x100a0ba3
push str.RESOLVED
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x2b
mov byte [ebp - 0x41d], al
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x420], 0xffff
push eax
mov byte [ebp - 0x41e], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x2c
jmp 0x100a0d6a
cmp eax, 0xc
jne 0x100a0bf1
push str.RESOLVED
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x2d
mov byte [ebp - 0x3a5], al
lea eax, [ebp - 0x3a8]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3a8], 0xffff
push eax
mov byte [ebp - 0x3a6], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x2e
jmp 0x100a0d6a
cmp eax, 2
jne 0x100a0c3f
push str.RESOLVED
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x2f
mov byte [ebp - 0x3a9], al
lea eax, [ebp - 0x3ac]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3ac], 0xffff
push eax
mov byte [ebp - 0x3aa], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x30
jmp 0x100a0d6a
cmp eax, 6
jne 0x100a0c8d
push str.HIGH
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x31
mov byte [ebp - 0x3ad], al
lea eax, [ebp - 0x3b0]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3b0], 0xffff
push eax
mov byte [ebp - 0x3ae], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x32
jmp 0x100a0d6a
cmp eax, 5
jne 0x100a0cdb
push str.MEDIUM
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x33
mov byte [ebp - 0x3b1], al
lea eax, [ebp - 0x3b4]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3b4], 0xffff
push eax
mov byte [ebp - 0x3b2], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x34
jmp 0x100a0d6a
cmp eax, 0x10
jne 0x100a0d26
push str.OVERRIDE
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x35
mov byte [ebp - 0x3b5], al
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3b8], 0xffff
push eax
mov byte [ebp - 0x3b6], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x36
jmp 0x100a0d6a
push 0x100bf0f0
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x37
mov byte [ebp - 0x3b9], al
lea eax, [ebp - 0x3bc]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3bc], 0xffff
push eax
mov byte [ebp - 0x3ba], 0xff
call fcn.100a4a90
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x378]
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
cmp dword [esi], 8
jne 0x100a0e45
mov ecx, dword [ebp - 0x354]
test ecx, ecx
je 0x100a0e45
cmp dword [ecx + 0x18], 0
je 0x100a0e45
add ecx, 8
call fcn.10025c80
mov eax, dword [eax]
test eax, eax
je 0x100a0e45
cmp byte [eax + 0x10], 0
jne 0x100a0e45
cmp dword [eax + 0x408], 0xffffffff
jge 0x100a0e45
cmp dword [eax + 0xc], 2
jg 0x100a0e45
push 0x100bf0f4
lea ecx, [ebp - 0x30]
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x39
mov byte [ebp - 0x3bd], al
lea eax, [ebp - 0x3c0]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3c0], 0xffff
push eax
mov byte [ebp - 0x3be], 0xff
call fcn.100a4a90
lea eax, [ebp - 0x378]
mov byte [ebp - 4], 0x3a
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
cmp dword [esi], 9
jne 0x100a101e
mov eax, dword [0x100c9be8]
test eax, eax
je 0x100a101e
mov eax, dword [eax]
mov ecx, edi
mov dword [ebp - 0x398], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x28]
call eax
mov ecx, dword [0x100fa998]
mov dword [ebp - 0x39c], eax
test cl, 1
jne 0x100a0eca
or ecx, 1
mov dword [0x100fa998], ecx
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x3b
push eax
mov ecx, 0x100fa548
mov dword [ebp - 0x50], 0x5fa2671c
mov dword [ebp - 0x5c], 0x38d4fdc3
call fcn.1003eec0
lea ecx, [ebp - 0x50]
push ecx
mov ecx, eax
call fcn.1003eea0
push 0x100b5a20
mov eax, dword [eax + 8]
mov dword [0x100fa99c], eax
call fcn.100aa18c
add esp, 4
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x39c]
sub esp, 8
mov eax, dword [0x100fa99c]
lea eax, [eax + ecx*4]
mov ecx, dword [ebp - 0x398]
movd xmm0, dword [eax + ecx]
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x3a0], xmm0
fld qword [ebp - 0x3a0]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_round
fstp qword [ebp - 0x3a0]
cvttsd2si edx, qword [ebp - 0x3a0]
lea ecx, [ebp - 0x39c]
add esp, 8
mov dword [ebp - 0x398], 0x2ee
mov dword [ebp - 0x39c], 0
mov edi, dword [ebp - 0x3a4]
mov byte [ebp - 0x350], 0xc1
movss xmm0, dword [0x100bf434]
mov eax, edx
mov dword [ebp - 0x58], edx
shr eax, 0x1f
test al, al
lea eax, [ebp - 0x58]
cmove ecx, eax
cmp edx, 0x2ee
lea eax, [ebp - 0x398]
mov edx, str._iMS
cmovle eax, ecx
cmp byte [ebp - 0x349], 0
lea ecx, [ebp - 0x374]
movd xmm2, dword [eax]
cvtdq2ps xmm2, xmm2
movaps xmm1, xmm2
mulss xmm2, dword [0x100bf210]
mulss xmm1, dword [0x100bf244]
subss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [0x100bf408]
subss xmm0, xmm2
mov byte [ebp - 0x34f], al
cvttss2si eax, xmm0
mov byte [ebp - 0x34e], al
mov eax, dword [ebp - 0x348]
mov byte [ebp - 0x34d], al
lea eax, [ebp - 0x58]
push eax
je 0x100a0fdf
call fcn.1004a860
add esp, 4
lea ecx, [ebp - 0x350]
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.100a4ac0
mov byte [ebp - 4], 0x3d
jmp 0x100a0ffb
call fcn.1004a860
add esp, 4
lea ecx, [ebp - 0x350]
push ecx
push eax
lea ecx, [ebp - 0x34]
call fcn.100a4ac0
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x34]
call fcn.10026610
lea ecx, [ebp - 0x374]
mov byte [ebp - 4], 7
call fcn.10026610
cmp dword [esi], 0xa
jne 0x100a1103
mov eax, dword [ebp - 0x354]
test eax, eax
je 0x100a1103
cmp dword [eax + 0x18], 0
je 0x100a1103
lea ecx, [eax + 8]
call fcn.10025c80
mov eax, dword [eax]
test eax, eax
je 0x100a1103
cmp byte [eax + 0x10], 0
jne 0x100a1103
movss xmm1, dword [eax + 0x20]
movss xmm2, dword [eax + 0x24]
subss xmm2, dword [eax + 0x30]
subss xmm1, dword [eax + 0x2c]
movss xmm0, dword [eax + 0x28]
subss xmm0, dword [eax + 0x34]
mulss xmm2, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
comiss xmm2, dword [0x100bf468]
jbe 0x100a1103
push 0x100beff4
lea ecx, [ebp - 0x30]
call fcn.10026660
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 0x40
mov byte [ebp - 0x3c1], al
lea eax, [ebp - 0x3c4]
push eax
lea eax, [ebp - 0x30]
mov word [ebp - 0x3c4], 0xff
push eax
mov byte [ebp - 0x3c2], 0
call fcn.100a4a90
lea eax, [ebp - 0x378]
mov byte [ebp - 4], 0x41
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
call fcn.10026610
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 7
call fcn.10026610
cmp dword [esi], 0xb
jne 0x100a1768
mov eax, dword [0x100c9a78]
mov ecx, dword [0x100c9a74]
cmp ecx, eax
je 0x100a1185
push dword [ebp - 0x2b0]
push eax
push ecx
call fcn.100a9b20
cmp eax, dword [0x100c9a78]
je 0x100a1185
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
mov byte [ebp - 0x3c5], al
lea eax, [ebp - 0x3c8]
push eax
push str.KAABA
mov word [ebp - 0x3c8], 0xffff
mov byte [ebp - 0x3c6], 0xff
call fcn.100a4b10
lea eax, [ebp - 0x378]
mov byte [ebp - 4], 0x42
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 7
call fcn.10026610
mov eax, dword [0x100c9a9c]
mov ecx, dword [0x100c9a98]
cmp ecx, eax
je 0x100a124e
push dword [ebp - 0x2b0]
push eax
push ecx
call fcn.100a9b20
cmp eax, dword [0x100c9a9c]
je 0x100a124e
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x368], 0
push str.FAMILY
lea ecx, [ebp - 0x378]
mov dword [ebp - 0x364], 0
movups xmmword [ebp - 0x378], xmm0
call fcn.100272e0
mov eax, dword [ebp - 0x348]
mov word [ebp - 0x360], 0xffff
mov byte [ebp - 0x35e], 0xff
mov byte [ebp - 0x35d], al
lea eax, [ebp - 0x378]
mov byte [ebp - 4], 0x43
push eax
lea ecx, [ebp - 0x40]
call fcn.100a45a0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x364]
cmp ecx, 0xf
jbe 0x100a124e
mov edx, dword [ebp - 0x378]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a1244
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
push ecx
push edx
call fcn.100aa1a1
add esp, 8
mov eax, dword [0x100c9a90]
mov ecx, dword [0x100c9a8c]
cmp ecx, eax
je 0x100a135a
push dword [ebp - 0x2b0]
push eax
push ecx
call fcn.100a9b20
cmp eax, dword [0x100c9a90]
je 0x100a135a
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
push 5
xorps xmm0, xmm0
mov word [ebp - 0x3cc], 0xffff
push str.VADER
mov byte [ebp - 0x3ca], 0xff
mov byte [ebp - 0x3c9], al
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0
call fcn.100272e0
mov eax, dword [ebp - 0x3cc]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0x44
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x38]
je 0x100a130a
movups xmm0, xmmword [ebp - 0x378]
mov edx, 0xf
mov byte [ebp - 0x378], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x368]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x3c], 0x1c
jmp 0x100a1320
lea eax, [ebp - 0x378]
push eax
push ecx
lea ecx, [ebp - 0x40]
call fcn.1007bd70
mov edx, dword [ebp - 0x364]
mov byte [ebp - 4], 7
cmp edx, 0xf
jbe 0x100a135a
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x378]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a1350
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
push ecx
push edx
call fcn.100aa1a1
add esp, 8
mov eax, dword [0x100c9aa8]
mov ecx, dword [0x100c9aa4]
cmp ecx, eax
je 0x100a1466
push dword [ebp - 0x2b0]
push eax
push ecx
call fcn.100a9b20
cmp eax, dword [0x100c9aa8]
je 0x100a1466
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
push 6
xorps xmm0, xmm0
mov word [ebp - 0x3d0], 0xffff
push str.CHEESE
mov byte [ebp - 0x3ce], 0xff
mov byte [ebp - 0x3cd], al
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0
call fcn.100272e0
mov eax, dword [ebp - 0x3d0]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x38]
je 0x100a1416
movups xmm0, xmmword [ebp - 0x378]
mov edx, 0xf
mov byte [ebp - 0x378], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x368]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x3c], 0x1c
jmp 0x100a142c
lea eax, [ebp - 0x378]
push eax
push ecx
lea ecx, [ebp - 0x40]
call fcn.1007bd70
mov edx, dword [ebp - 0x364]
mov byte [ebp - 4], 7
cmp edx, 0xf
jbe 0x100a1466
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x378]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a145c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
push ecx
push edx
call fcn.100aa1a1
add esp, 8
mov eax, dword [0x100c9a6c]
mov ecx, dword [0x100c9a68]
cmp ecx, eax
je 0x100a1572
push dword [ebp - 0x2b0]
push eax
push ecx
call fcn.100a9b20
cmp eax, dword [0x100c9a6c]
je 0x100a1572
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
push 7
xorps xmm0, xmm0
mov word [ebp - 0x3d4], 0xffff
push str.PANDORA
mov byte [ebp - 0x3d2], 0xff
mov byte [ebp - 0x3d1], al
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0
call fcn.100272e0
mov eax, dword [ebp - 0x3d4]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x38]
je 0x100a1522
movups xmm0, xmmword [ebp - 0x378]
mov edx, 0xf
mov byte [ebp - 0x378], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x368]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x3c], 0x1c
jmp 0x100a1538
lea eax, [ebp - 0x378]
push eax
push ecx
lea ecx, [ebp - 0x40]
call fcn.1007bd70
mov edx, dword [ebp - 0x364]
mov byte [ebp - 4], 7
cmp edx, 0xf
jbe 0x100a1572
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x378]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a1568
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
push ecx
push edx
call fcn.100aa1a1
add esp, 8
mov eax, dword [0x100c9a84]
mov ecx, dword [0x100c9a80]
cmp ecx, eax
je 0x100a167e
push dword [ebp - 0x2b0]
push eax
push ecx
call fcn.100a9b20
cmp eax, dword [0x100c9a84]
je 0x100a167e
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
push 6
xorps xmm0, xmm0
mov word [ebp - 0x3d8], 0xffff
push str.DOPIUM
mov byte [ebp - 0x3d6], 0xff
mov byte [ebp - 0x3d5], al
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0
call fcn.100272e0
mov eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x38]
je 0x100a162e
movups xmm0, xmmword [ebp - 0x378]
mov edx, 0xf
mov byte [ebp - 0x378], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x368]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x3c], 0x1c
jmp 0x100a1644
lea eax, [ebp - 0x378]
push eax
push ecx
lea ecx, [ebp - 0x40]
call fcn.1007bd70
mov edx, dword [ebp - 0x364]
mov byte [ebp - 4], 7
cmp edx, 0xf
jbe 0x100a167e
lea ecx, [edx + 1]
mov edx, dword [ebp - 0x378]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a1674
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
push ecx
push edx
call fcn.100aa1a1
add esp, 8
mov eax, dword [0x100c9ab4]
mov ecx, dword [0x100c9ab0]
cmp ecx, eax
je 0x100a1768
push dword [ebp - 0x2b0]
push eax
push ecx
call fcn.100a9b20
cmp eax, dword [0x100c9ab4]
je 0x100a1768
mov eax, dword [ebp - 0x348]
lea ecx, [ebp - 0x378]
push 6
xorps xmm0, xmm0
mov word [ebp - 0x35c], 0xffff
push str.FAMYLY
mov byte [ebp - 0x35a], 0xff
mov byte [ebp - 0x359], al
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0
call fcn.100272e0
mov eax, dword [ebp - 0x35c]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 0x48
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x38]
je 0x100a1749
movups xmm0, xmmword [ebp - 0x378]
mov byte [ebp - 0x378], 0
movups xmmword [ecx], xmm0
movq xmm0, qword [ebp - 0x368]
movq qword [ecx + 0x10], xmm0
mov dword [ecx + 0x18], eax
add dword [ebp - 0x3c], 0x1c
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0xf
jmp 0x100a1759
lea eax, [ebp - 0x378]
push eax
push ecx
lea ecx, [ebp - 0x40]
call fcn.1007bd70
lea ecx, [ebp - 0x378]
mov byte [ebp - 4], 7
call fcn.10026610
add esi, 4
cmp esi, dword [ebp - 0x37c]
jne 0x100a02b0
mov esi, dword [ebp - 0x40]
xor ecx, ecx
mov dword [ebp - 0x37c], ecx
mov eax, 0x92492493
mov ecx, dword [ebp - 0x3c]
sub ecx, esi
mov dword [ebp - 0x58], 0
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100a1816
mov ecx, dword [ebp - 0x384]
add ecx, 2
add ecx, dword [ebp - 0x38c]
xor edi, edi
mov dword [ebp - 0x50], ecx
push 0
lea eax, [esi + edi]
mov esi, dword [ebp - 0x58]
push eax
push dword [eax + 0x18]
mov eax, dword [ebp - 0x388]
dec eax
add eax, esi
push eax
push ecx
mov ecx, 0x100f79fc
call fcn.10096f80
add esi, dword [0x100f7a04]
lea edi, [edi + 0x1c]
mov ecx, dword [ebp - 0x3c]
mov eax, 0x92492493
inc dword [ebp - 0x37c]
mov dword [ebp - 0x58], esi
mov esi, dword [ebp - 0x40]
sub ecx, esi
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x50]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp dword [ebp - 0x37c], eax
jb 0x100a17b7
mov edi, dword [ebp - 0x3a4]
mov eax, dword [ebp - 0x394]
mov byte [ebp - 4], 4
test eax, eax
je 0x100a1853
mov ecx, dword [ebp - 0x18]
sub ecx, eax
and ecx, 0xfffffffc
cmp ecx, 0x1000
jb 0x100a1846
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a18ad
mov eax, edx
push ecx
push eax
call fcn.100aa1a1
mov esi, dword [ebp - 0x40]
add esp, 8
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x100a18bd
mov edx, dword [ebp - 0x3c]
push ecx
mov ecx, esi
call fcn.1007bb70
mov ecx, dword [ebp - 0x38]
mov eax, 0x92492493
mov esi, dword [ebp - 0x40]
add esp, 4
sub ecx, esi
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, esi
shl ecx, 2
cmp ecx, 0x1000
jb 0x100a18b3
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a18b3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push esi
call fcn.100aa1a1
add esp, 8
cmp byte [ebp - 0x341], 0
mov dword [ebp - 0x354], 0
je 0x100a1a73
cmp byte [0x100cdd04], 0
je 0x100a1a53
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x28]
call eax
dec eax
imul esi, eax, 0x5bc
add esi, 0x100daafc
je 0x100a1a53
cmp byte [esi + 0x495], 0
je 0x100a1a53
cmp dword [esi + 0x18], 0
je 0x100a1a53
mov edx, dword [esi + 0x14]
mov eax, edx
mov ecx, dword [esi + 0x10]
and edx, 1
shr eax, 1
dec ecx
and ecx, eax
mov eax, dword [esi + 0xc]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + edx*8]
test eax, eax
je 0x100a1a53
movss xmm0, dword [eax + 0x3c]
movss xmm1, dword [eax + 0x38]
mulss xmm0, xmm0
mulss xmm1, xmm1
addss xmm0, xmm1
call fcn.1001e330
cvtss2sd xmm0, xmm0
comisd xmm0, xmmword [0x100bf2b8]
jbe 0x100a196b
cmp byte [eax + 0x410], 0
je 0x100a1a53
cmp dword [esi + 0x4ac], 3
jg 0x100a1a53
movss xmm0, dword [esi + 0x490]
lea edx, [ebp - 0x5c]
subss xmm0, dword [eax + 0x418]
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x3f8ccccd
push eax
lea ecx, [ebp - 0x39c]
mov dword [ebp - 0x5c], 0
movss dword [ebp - 0x39c], xmm0
call fcn.1002e370
mov ecx, dword [ebp - 0x384]
xorps xmm0, xmm0
add esp, 4
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [eax]
mulss xmm1, dword [0x100bf290]
comiss xmm1, xmm0
movss dword [ebp - 0x50], xmm1
jbe 0x100a1a53
mov eax, dword [0x100cdda8]
mov esi, dword [ebp - 0x388]
add esi, dword [ebp - 0x380]
mov edi, dword [ebp - 0x38c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x390]
mov byte [ebp - 0x15], al
lea edx, [esi - 1]
mov eax, dword [ebp - 0x348]
mov byte [ebp - 0x359], al
lea eax, [ecx + 2]
mov word [ebp - 0x35c], 0
lea ecx, [edi - 1]
mov byte [ebp - 0x35a], 0
push dword [ebp - 0x35c]
push 4
push eax
call fcn.10096d40
cvttss2si eax, dword [ebp - 0x50]
add esp, 0xc
mov edx, esi
mov ecx, edi
push dword [ebp - 0x18]
push 2
push eax
call fcn.10096d40
add esp, 0xc
mov dword [ebp - 0x354], 5
push 0
push dword [0x100cda44]
push dword [0x100cda40]
call fcn.100a9b20
cmp eax, dword [0x100cda44]
jne 0x100a1a92
jmp 0x100a221c
push 1
push dword [0x100cda44]
push dword [0x100cda40]
call fcn.100a9b20
cmp eax, dword [0x100cda44]
je 0x100a221c
mov ecx, dword [0x100f45e4]
mov eax, dword [0x100f48b8]
add eax, 0xffffff9f
xor eax, 0x911388ef
mov edx, dword [ecx]
add eax, dword [ebp - 0x358]
push ecx
mov esi, dword [edx + 0x10]
mov edx, esp
mov eax, dword [eax]
mov dword [edx], eax
call esi
mov edi, eax
mov dword [ebp - 0x398], edi
test edi, edi
je 0x100a221c
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x6f8]
call eax
test eax, eax
je 0x100a221c
mov eax, dword [eax + 0x14]
xorps xmm1, xmm1
mov esi, dword [ebp - 0x358]
mov dword [ebp - 0x3a4], eax
mov eax, dword [0x100f48d4]
add eax, 0xffffff98
xor eax, 0x911388f6
mov ecx, dword [eax + edi]
mov eax, dword [0x100f4774]
mov dword [ebp - 0x394], ecx
mov ecx, dword [eax + esi]
mov dword [ebp - 0x39c], ecx
movss xmm0, dword [ecx + 0x58]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x100a1b61
mov eax, dword [ecx + 0x50]
mov ecx, dword [0x100f4734]
mov dword [ebp - 0x5c], ecx
mov ecx, dword [0x100f478c]
mov dword [ebp - 0x50], eax
cmp dword [ecx + esi], 0
jne 0x100a1b4e
mov eax, dword [0x100f4710]
mov ecx, esi
call eax
mov ecx, dword [0x100f478c]
mov eax, dword [ebp - 0x50]
mov ecx, dword [ecx + esi]
mov edx, eax
call dword [ebp - 0x5c]
cmp eax, 0x3c7
jne 0x100a1b61
mov al, 1
jmp 0x100a1b63
xor al, al
mov ecx, dword [ebp - 0x3a4]
mov byte [ebp - 0x341], al
cmp ecx, 0xffffffff
je 0x100a1d73
cmp byte [0x100cdb64], 0
je 0x100a1d73
test al, al
je 0x100a1b96
mov eax, dword [ebp - 0x39c]
movss xmm1, dword [eax + 0x64]
jmp 0x100a1bac
movd xmm1, dword [ebp - 0x394]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
mov eax, dword [ebp - 0x384]
add eax, 0xfffffffe
push ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
movss dword [ebp - 0x50], xmm0
fld dword [ebp - 0x50]
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_roundf
mov eax, dword [0x100cdc90]
add esp, 4
mov ecx, dword [0x100f45ec]
mov edi, dword [ebp - 0x354]
add edi, dword [ebp - 0x388]
add edi, dword [ebp - 0x380]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x390]
mov byte [ebp - 0x15], al
mov eax, dword [ebp - 0x348]
lea esi, [edi + 2]
mov byte [ebp - 0x359], al
mov eax, dword [ecx]
mov word [ebp - 0x35c], 0xa0a
mov byte [ebp - 0x35a], 0xa
push dword [ebp - 0x35c]
mov eax, dword [eax + 0x38]
fstp dword [ebp - 0x58]
mov dword [ebp - 0x37c], edi
call eax
mov ecx, dword [0x100f45ec]
mov eax, dword [ecx]
mov edx, dword [eax + 0x40]
lea eax, [esi + 4]
push eax
mov eax, dword [ebp - 0x38c]
add eax, dword [ebp - 0x384]
push eax
push esi
mov esi, dword [ebp - 0x38c]
push esi
call edx
mov ecx, dword [0x100f45ec]
add edi, 3
push dword [ebp - 0x18]
inc esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
call eax
mov ecx, dword [0x100f45ec]
mov eax, dword [ecx]
mov edx, dword [eax + 0x48]
lea eax, [edi + 2]
push eax
cvttss2si eax, dword [ebp - 0x58]
add eax, esi
push eax
push edi
push esi
call edx
mov ecx, dword [ebp - 0x394]
test ecx, ecx
jle 0x100a1d5c
mov eax, dword [ebp - 0x3a4]
xorps xmm4, xmm4
movss xmm3, dword [0x100bf47c]
movss xmm2, dword [0x100bf474]
cvtsi2ss xmm4, eax
mulss xmm4, dword [0x100bf28c]
andps xmm3, xmm4
movaps xmm0, xmm4
xorps xmm0, xmm3
movaps xmm1, xmm4
cmpltss xmm0, xmm2
andps xmm2, xmm0
orps xmm2, xmm3
addss xmm1, xmm2
subss xmm1, xmm2
movss xmm2, dword [0x100bf29c]
movaps xmm0, xmm1
subss xmm0, xmm4
cmpnless xmm0, xmm3
andps xmm0, xmm2
subss xmm1, xmm0
cvttss2si eax, xmm1
cmp ecx, eax
jg 0x100a1d5c
cmp byte [ebp - 0x341], 0
jne 0x100a1d5c
mov edx, ecx
lea ecx, [ebp - 0x374]
call fcn.1002fb20
push 2
push eax
mov eax, dword [ebp - 0x348]
mov ecx, 0x100f79fc
movzx eax, al
shl eax, 0x18
or eax, 0xffffff
mov dword [ebp - 4], 0x49
push eax
cvttss2si eax, dword [ebp - 0x58]
push dword [ebp - 0x37c]
add eax, dword [ebp - 0x38c]
push eax
call fcn.10096f80
lea ecx, [ebp - 0x374]
mov dword [ebp - 4], 0xffffffff
call fcn.10026610
mov esi, dword [ebp - 0x354]
mov edi, dword [ebp - 0x398]
add esi, 6
mov dword [ebp - 0x354], esi
jmp 0x100a1d79
mov esi, dword [ebp - 0x354]
push 1
push dword [0x100cdaec]
push dword [0x100cdae8]
call fcn.100a9b20
cmp eax, dword [0x100cdaec]
je 0x100a1f12
mov eax, dword [0x100f48d0]
dec esi
add eax, 0xffffff99
mov dword [ebp - 0x354], esi
xor eax, 0x911388f5
mov ecx, 0x100fa4f0
add eax, edi
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.100a4b60
push 0x98
push 0
mov esi, dword [eax]
lea eax, [ebp - 0x128]
push eax
add esi, 0xc
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea ecx, [ebp - 0x128]
call fcn.10026530
mov dword [ebp - 4], 0x4a
lea eax, [ebp - 0x68]
push 1
push eax
mov edx, 0x100bf160
mov dword [ebp - 0x70], eax
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x6c], 1
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x64], 0x100a6990
mov dword [ebp - 0x60], 0x100a6a00
call fcn.1001ec70
add esp, 8
lea eax, [ebp - 0x30]
lea ecx, [ebp - 0x124]
push eax
call fcn.100268f0
mov eax, dword [ebp - 0x128]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0x128], 0x100b8dac
mov eax, dword [ebp - 0x128]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0x12c], eax
lea ecx, [ebp - 0x124]
call fcn.10026480
lea ecx, [ebp - 0x120]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xd8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov eax, dword [ebp - 0x348]
mov ecx, 0x100f7a5c
mov byte [ebp - 0x359], al
lea eax, [ebp - 0x30]
push 2
push eax
mov eax, dword [ebp - 0x354]
mov dword [ebp - 4], 0x4b
add eax, dword [ebp - 0x388]
add eax, dword [ebp - 0x380]
mov word [ebp - 0x35c], 0xffff
mov byte [ebp - 0x35a], 0xff
push dword [ebp - 0x35c]
push eax
mov eax, dword [ebp - 0x384]
cdq
sub eax, edx
sar eax, 1
add eax, dword [ebp - 0x38c]
push eax
call fcn.10096f80
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x1c]
cmp ecx, 0xf
jbe 0x100a1f12
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a1f08
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a1f08
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100aa1a1
add esp, 8
push 0
push dword [0x100cdaec]
push dword [0x100cdae8]
call fcn.100a9b20
cmp eax, dword [0x100cdaec]
je 0x100a221c
mov eax, dword [0x100f4750]
mov ecx, edi
call eax
test eax, eax
je 0x100a2116
mov edx, dword [0x100f4754]
mov ecx, eax
call edx
test eax, eax
je 0x100a2116
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
mov ecx, dword [0x100f462c]
push eax
mov edx, dword [ecx]
mov edx, dword [edx + 0x30]
call edx
mov edx, eax
mov dword [ebp - 0x64], 0
mov ecx, edx
mov dword [ebp - 0x60], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x74], xmm0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100a1f87
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x74]
call fcn.10048350
mov dword [ebp - 4], 0x4c
xorps xmm0, xmm0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov byte [ebp - 4], 0x4d
mov edx, dword [ebp - 0x64]
test edx, edx
jne 0x100a1fe7
movups xmmword [ebp - 0x8c], xmm0
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], dl
jmp 0x100a20ab
cmp dword [ebp - 0x60], 7
lea eax, [ebp - 0x74]
mov ecx, dword [0x100da9c8]
cmova eax, dword [ebp - 0x74]
push 0
push 0
push 0
push 0
push edx
push eax
push 0
push 0xfde9
call ecx
mov esi, eax
lea ecx, [ebp - 0x30]
push 0
push esi
call fcn.10039a40
push eax
lea ecx, [ebp - 0x4c]
call fcn.100399c0
mov ecx, dword [ebp - 0x1c]
cmp ecx, 0xf
jbe 0x100a2055
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a204b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100a20f0
push ecx
push edx
call fcn.100aa1a1
add esp, 8
cmp dword [ebp - 0x38], 0xf
lea ecx, [ebp - 0x4c]
mov edx, dword [0x100da9c8]
lea eax, [ebp - 0x74]
cmova ecx, dword [ebp - 0x4c]
cmp dword [ebp - 0x60], 7
push 0
cmova eax, dword [ebp - 0x74]
push 0
push esi
push ecx
push dword [ebp - 0x64]
mov dword [ebp - 0x20], 0
push eax
push 0
push 0xfde9
mov dword [ebp - 0x1c], 0xf
mov byte [ebp - 0x30], 0
call edx
movups xmm0, xmmword [ebp - 0x4c]
movups xmmword [ebp - 0x8c], xmm0
movq xmm0, qword [ebp - 0x3c]
movq qword [ebp - 0x7c], xmm0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x60]
mov byte [ebp - 0x4c], 0
mov dword [ebp - 0x38], 0xf
mov dword [ebp - 0x3c], 0
cmp ecx, 7
jbe 0x100a2100
mov edx, dword [ebp - 0x74]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100a20f6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a20f6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100aa1a1
add esp, 8
xor eax, eax
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 7
mov word [ebp - 0x74], ax
jmp 0x100a2140
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x7c], 0
push str.error
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x78], 0
movups xmmword [ebp - 0x8c], xmm0
call fcn.100272e0
mov dword [ebp - 4], 0x4e
lea ecx, [ebp - 0x8c]
cmp dword [ebp - 0x78], 0xf
lea edi, [ebp - 0x8c]
mov edx, dword [ebp - 0x8c]
lea esi, [ebp - 0x8c]
mov eax, dword [ebp - 0x7c]
cmova ecx, edx
cmova edi, edx
add eax, ecx
cmp dword [ebp - 0x78], 0xf
mov dword [ebp - 0x50], eax
cmova esi, edx
cmp esi, eax
je 0x100a2196
sub edi, esi
nop
movsx eax, byte [esi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [esi + edi], al
add esp, 4
inc esi
cmp esi, dword [ebp - 0x50]
jne 0x100a2180
mov edx, dword [ebp - 0x354]
lea eax, [ebp - 0x8c]
add edx, dword [ebp - 0x388]
add edx, dword [ebp - 0x380]
push 2
push eax
mov eax, dword [ebp - 0x348]
push ecx
mov ecx, esp
push edx
mov byte [ecx + 3], al
mov eax, dword [ebp - 0x384]
cdq
sub eax, edx
mov word [ecx], 0xffff
sar eax, 1
add eax, dword [ebp - 0x38c]
mov byte [ecx + 2], 0xff
mov ecx, 0x100f79fc
push eax
call fcn.10096f80
mov ecx, dword [ebp - 0x78]
cmp ecx, 0xf
jbe 0x100a221c
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100a2212
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a2212
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100aa1a1
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100a9d26
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4