Function at 0x100eaa60
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

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 0x1014792c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0xb8
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x78], edi
mov eax, dword [edi]
mov eax, dword [eax + 0x298]
call eax
test al, al
je 0x100eb5bf
mov ecx, dword [0x101e66e4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [0x101ee08c]
test eax, eax
jne 0x100eaaf4
mov edx, 0xe80c2f78
mov ecx, 0x10173d5d
call fcn.100074c0
mov edx, 0xc10bf213
mov ecx, 0x10170861
mov esi, eax
call fcn.100074c0
push esi
push eax
call fcn.100fc040
mov ecx, dword [0x101e66e4]
mov dword [0x101ee08c], eax
mov edx, dword [eax + edi]
push ecx
mov eax, esp
mov dword [eax], edx
call dword [ebp - 0x24]
mov ecx, dword [edi]
mov esi, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov edx, dword [ecx + 0x28]
mov ecx, edi
call edx
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x20]
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x20], xmm0
mov dword [ebp - 0x18], eax
call fcn.100fd720
test al, al
je 0x100eb5bf
test esi, esi
jne 0x100eb5bf
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x734]
call eax
mov dword [ebp - 0x68], eax
test eax, eax
je 0x100eb5bf
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x1d49b0b5
push eax
call fcn.10022e30
lea ecx, [edi + 8]
mov esi, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100eab7e
mov eax, dword [eax + 0x14]
jmp 0x100eab81
or eax, 0xffffffff
cmp esi, eax
jne 0x100eabf3
cmp byte [0x101e9988], 0
je 0x100eabf3
lea eax, [ebp - 0x19]
mov dword [ebp - 0x19], 0x424d4f42
push eax
lea ecx, [ebp - 0x90]
mov byte [ebp - 0x15], 0
call fcn.10002e90
sub esp, 0x10
mov dword [ebp - 4], 0
mov eax, esp
mov ecx, 0x101e8b00
push 2
mov dword [eax + 4], 0x96
mov dword [eax + 8], 0xc8
mov dword [eax + 0xc], 0x3c
mov dword [eax], 0xb4
lea eax, [ebp - 0x90]
push eax
cvttss2si eax, dword [ebp - 0x2c]
push eax
cvttss2si eax, dword [ebp - 0x30]
push eax
call fcn.100fdd90
jmp 0x100eb5ad
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0
push eax
mov ecx, 0x101e992c
call fcn.1000b6f0
cmp byte [eax], 0
jne 0x100eac48
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 1
push eax
mov ecx, 0x101e992c
call fcn.1000b6f0
cmp byte [eax], 0
je 0x100eb5bf
mov ecx, edi
call fcn.1000ad00
cmp word [eax], 0x1f
jne 0x100eac48
mov ecx, edi
call fcn.1000b2a0
cmp dword [eax], 0
je 0x100eb5bf
mov eax, dword [edi]
mov ecx, edi
mov eax, dword [eax + 0x734]
call eax
mov edx, eax
test edx, edx
jne 0x100eac9e
xorps xmm0, xmm0
mov dword [ebp - 0x1a], 0x4f525245
lea ecx, [ebp - 0x1a]
mov word [ebp - 0x16], 0x52
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], eax
lea edx, [ecx + 1]
mov dword [ebp - 0x7c], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100eac80
sub ecx, edx
lea eax, [ebp - 0x1a]
push ecx
push eax
lea ecx, [ebp - 0x90]
call fcn.10003450
jmp 0x100eae9b
mov ecx, dword [0x101edf30]
push dword [edx + 0x88]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov edx, eax
mov dword [ebp - 0x40], 0
mov ecx, edx
mov dword [ebp - 0x3c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x50], xmm0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100eacd0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x50]
call fcn.10022730
mov dword [ebp - 4], 1
xorps xmm0, xmm0
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x40]
test ecx, ecx
jne 0x100ead3c
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], cl
jmp 0x100eae58
cmp dword [ebp - 0x3c], 7
lea eax, [ebp - 0x50]
push 0
cmova eax, dword [ebp - 0x50]
push 0
push 0
push 0
push ecx
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push 0
push eax
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x24], eax
call fcn.10027b90
mov esi, eax
lea eax, [ebp - 0xb0]
cmp eax, esi
je 0x100eadfa
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0xf
jbe 0x100eadb7
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100eadad
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100eadad
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006ccbf
add esp, 8
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
movups xmm0, xmmword [esi]
movups xmmword [ebp - 0xb0], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0xa0], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
lea ecx, [ebp - 0xc8]
call fcn.10002e40
cmp dword [ebp - 0x9c], 0xf
lea ecx, [ebp - 0xb0]
push 0
cmova ecx, dword [ebp - 0xb0]
lea eax, [ebp - 0x50]
cmp dword [ebp - 0x3c], 7
push 0
push dword [ebp - 0x24]
cmova eax, dword [ebp - 0x50]
push ecx
push dword [ebp - 0x40]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
movups xmm0, xmmword [ebp - 0xb0]
movups xmmword [ebp - 0x90], xmm0
movq xmm0, qword [ebp - 0xa0]
movq qword [ebp - 0x80], xmm0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 7
jbe 0x100eae9b
mov edx, dword [ebp - 0x50]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100eae91
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100eae91
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1006ccbf
add esp, 8
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x90]
cmp dword [ebp - 0x7c], 0xf
lea esi, [ebp - 0x90]
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x80]
cmova ecx, edx
cmova esi, edx
add eax, ecx
cmp dword [ebp - 0x7c], 0xf
lea ecx, [ebp - 0x90]
push esi
cmova ecx, edx
mov edx, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
push eax
push ecx
lea ecx, [ebp - 0x18]
call fcn.10014420
movss xmm1, dword [0x1017f338]
add esp, 0xc
movss xmm0, dword [0x101e9950]
mov ecx, 0x101e992c
mulss xmm0, xmm1
mov dword [ebp - 0x24], 0
cvttss2si eax, xmm0
movss xmm0, dword [0x101e9954]
mulss xmm0, xmm1
mov dword [ebp - 0x5c], eax
cvttss2si eax, xmm0
movss xmm0, dword [0x101e9958]
mulss xmm0, xmm1
mov dword [ebp - 0x58], eax
cvttss2si eax, xmm0
movss xmm0, dword [0x101e995c]
mulss xmm0, xmm1
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x24]
push eax
cvttss2si esi, xmm0
mov dword [ebp - 0x60], esi
call fcn.1000b6f0
cmp byte [eax], 0
je 0x100eafe8
lea eax, [ebp - 0x24]
mov dword [ebp - 0x64], 0xb4
push eax
mov ecx, 0x101e992c
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x24], 1
call fcn.1000b6f0
xor ecx, ecx
movss xmm1, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x5c]
mov edx, 0x10
cmp byte [eax], cl
lea eax, [ebp - 0x60]
cmovne ecx, edx
test esi, esi
movd xmm0, ecx
lea ecx, [ebp - 0x14]
cmovns ecx, eax
lea eax, [ebp - 0x64]
cmp esi, 0xb4
cvtdq2ps xmm0, xmm0
cmovle eax, ecx
sub esp, 0x10
mov ecx, dword [eax]
mov eax, esp
subss xmm1, xmm0
push 2
mov dword [eax + 4], edi
mov edi, dword [ebp - 0x58]
mov dword [eax + 8], edi
mov edi, dword [ebp - 0x54]
mov dword [eax], ecx
mov ecx, 0x101e8b00
mov dword [eax + 0xc], edi
lea eax, [ebp - 0x90]
push eax
cvttss2si eax, dword [ebp - 0x30]
cvttss2si edx, xmm1
push edx
push eax
call fcn.100fdd90
mov edi, dword [ebp - 0x78]
lea eax, [ebp - 0x64]
mov dword [ebp - 0x64], 1
push eax
mov ecx, 0x101e992c
call fcn.1000b6f0
cmp byte [eax], 0
je 0x100eb38b
mov eax, dword [edi]
mov ecx, edi
mov dword [ebp - 0x24], 0xb4
mov dword [ebp - 0x64], 0
mov eax, dword [eax + 0x734]
call eax
test eax, eax
jne 0x100eb05b
xorps xmm0, xmm0
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x11]
mov dword [ebp - 0x40], eax
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], eax
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100eb040
sub ecx, edx
lea eax, [ebp - 0x11]
push ecx
push eax
lea ecx, [ebp - 0x50]
call fcn.10003450
jmp 0x100eb321
mov eax, dword [0x101e6764]
test eax, eax
jne 0x100eb093
mov edx, 0xe80c2f78
mov ecx, 0x10170ecd
call fcn.100074c0
mov edx, 0xc10bf213
mov ecx, 0x10170ee5
mov esi, eax
call fcn.100074c0
push esi
push eax
call fcn.100fc040
mov esi, dword [ebp - 0x60]
mov dword [0x101e6764], eax
movzx eax, word [eax + edi]
test ax, ax
jne 0x100eb0db
xorps xmm0, xmm0
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x11]
mov dword [ebp - 0x40], 0
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100eb0c0
sub ecx, edx
lea eax, [ebp - 0x11]
push ecx
push eax
lea ecx, [ebp - 0x50]
call fcn.10003450
jmp 0x100eb321
cwde
dec eax
cmp eax, 0x3f
ja case.0x100eb0ed.5
movzx eax, byte [eax + 0x100ebce0]
jmp dword [eax*4 + 0x100ebc38]
mov word [ebp - 0x12], 0x61
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x62
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x63
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x64
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x65
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x66
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x67
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x68
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x69
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x6a
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x6b
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x6c
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x6d
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x6e
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x6f
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x41
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x42
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x43
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x44
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x45
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x46
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x47
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x48
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x49
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x4a
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x4b
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x4c
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x4d
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x4e
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x4f
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x50
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x51
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x52
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x53
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x54
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x55
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x56
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x57
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x58
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x59
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov word [ebp - 0x12], 0x5a
lea eax, [ebp - 0x12]
jmp 0x100eb318
mov byte [ebp - 0x11], 0
lea eax, [ebp - 0x11]
push eax
lea ecx, [ebp - 0x50]
call fcn.10002e90
test esi, esi
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x5c]
lea eax, [ebp - 0x60]
movss xmm0, dword [ebp - 0x2c]
lea ecx, [ebp - 0x64]
subss xmm0, dword [0x1017f20c]
cmovns ecx, eax
cmp esi, 0xb4
lea eax, [ebp - 0x24]
cmovle eax, ecx
sub esp, 0x10
mov ecx, dword [eax]
mov eax, esp
push 2
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x58]
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x54]
mov dword [eax], ecx
mov ecx, 0x101e8ae8
mov dword [eax + 0xc], edx
lea eax, [ebp - 0x50]
push eax
cvttss2si eax, xmm0
push eax
cvttss2si eax, dword [ebp - 0x30]
push eax
call fcn.100fdd90
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 3
call fcn.10002e40
cmp byte [0x101e9960], 0
je 0x100eb5ad
mov ecx, edi
call fcn.1000ad00
cmp word [eax], 0
je 0x100eb5ad
mov ecx, edi
call fcn.1000b2a0
cmp dword [eax], 0xffffffff
jle 0x100eb5ad
mov ecx, edi
call fcn.1000b2a0
mov ecx, dword [ebp - 0x68]
push 0x101e9964
mov eax, dword [eax]
mov ecx, dword [ecx + 0x14]
mov dword [ebp - 0x18], eax
imul eax, eax, 0x13
mov dword [ebp - 0x94], ecx
cdq
idiv ecx
mov dword [ebp - 0x98], eax
lea eax, [ebp - 0x60]
push eax
call fcn.10016520
push 0x101e9964
mov eax, dword [eax + 4]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x5c], eax
lea eax, [ebp - 0x74]
push eax
call fcn.10016520
push 0x101e9964
mov eax, dword [eax + 8]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x58], eax
lea eax, [ebp - 0x74]
push eax
call fcn.10016520
push 0x101e9964
mov edi, dword [eax + 0xc]
lea eax, [ebp - 0x74]
push eax
mov dword [ebp - 0x54], edi
call fcn.10016520
movss xmm0, dword [ebp - 0x2c]
sub esp, 0x10
addss xmm0, dword [0x1017f224]
mov esi, dword [eax]
mov eax, esp
push 4
push 0x16
cvttss2si edx, xmm0
mov dword [ebp - 0x60], esi
mov dword [eax + 4], 0xa
mov dword [eax + 8], 0xa
mov dword [eax + 0xc], 0xa
mov dword [eax], 0xb4
movss xmm0, dword [ebp - 0x30]
subss xmm0, dword [0x1017f228]
cvttss2si ecx, xmm0
call fcn.100fd940
movss xmm0, dword [ebp - 0x2c]
lea eax, [ebp - 0x60]
movss xmm1, dword [ebp - 0x30]
lea ecx, [ebp - 0x68]
mov edx, dword [ebp - 0x24]
test esi, esi
addss xmm0, dword [0x1017f228]
subss xmm1, dword [0x1017f224]
cmovns ecx, eax
mov dword [ebp - 0x64], 0xb4
cmp esi, 0xb4
mov dword [ebp - 0x68], 0
mov esi, dword [ebp - 0x98]
lea eax, [ebp - 0x64]
cmovle eax, ecx
add esp, 8
mov ecx, dword [eax]
mov eax, esp
push 2
movss dword [ebp - 0x68], xmm0
movss dword [ebp - 0x64], xmm1
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x14]
mov dword [eax + 8], edx
mov dword [eax + 0xc], edi
mov dword [eax], ecx
lea eax, [esi + 1]
push eax
cvttss2si edx, xmm0
cvttss2si ecx, xmm1
call fcn.100fd940
mov eax, 0x66666667
add esp, 0x10
imul dword [ebp - 0x94]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [ebp - 0x30], xmm0
fld qword [ebp - 0x30]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_round
mov edx, dword [ebp - 0x18]
add esp, 8
fstp qword [ebp - 0x30]
cvttsd2si eax, qword [ebp - 0x30]
cmp edx, eax
jg 0x100eb5aa
lea ecx, [ebp - 0xc8]
call fcn.10003a10
mov byte [ebp - 4], 5
sub esp, 0x10
movss xmm0, dword [ebp - 0x68]
mov ecx, esp
subss xmm0, dword [0x1017f1b4]
push 2
push eax
mov dword [ecx + 4], 0xfa
subss xmm0, dword [0x1017f158]
mov dword [ecx + 8], 0xfa
mov dword [ecx + 0xc], 0xfa
mov dword [ecx], 0xb4
mov ecx, 0x101e8b00
cvttss2si eax, xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push eax
addss xmm0, dword [ebp - 0x64]
cvttss2si eax, xmm0
push eax
call fcn.100fdd90
lea ecx, [ebp - 0xc8]
call fcn.10002e40
mov edi, dword [ebp - 0x78]
lea ecx, [ebp - 0x90]
mov dword [ebp - 4], 0xffffffff
call fcn.10002e40
cmp byte [0x101e9974], 0
je 0x100ebc24
mov eax, dword [edi]
mov ecx, edi
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
mov eax, dword [eax + 0x28]
call eax
lea edx, [ebp - 0x6c]
lea ecx, [ebp - 0x34]
movq xmm0, qword [eax]
mov eax, dword [eax + 8]
movq qword [ebp - 0x34], xmm0
mov dword [ebp - 0x2c], eax
call fcn.100fd720
test al, al
je 0x100ebc24
movss xmm1, dword [0x1017f338]
movss xmm0, dword [0x101e9984]
mulss xmm0, xmm1
mov dword [ebp - 0x18], 0x69629121
cvttss2si eax, xmm0
movss xmm0, dword [0x101e9980]
mulss xmm0, xmm1
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x60], eax
lea eax, [ebp - 0x18]
push eax
cvttss2si ecx, xmm0
movss xmm0, dword [0x101e997c]
mulss xmm0, xmm1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x54], ecx
cvttss2si edx, xmm0
movss xmm0, dword [0x101e9978]
mulss xmm0, xmm1
mov dword [ebp - 0x14], edx
mov dword [ebp - 0x58], edx
cvttss2si esi, xmm0
mov dword [ebp - 0x5c], esi
call fcn.10022e30
lea ecx, [edi + 8]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 8]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100eb68b
mov eax, dword [eax + 0x14]
jmp 0x100eb68e
or eax, 0xffffffff
cmp dword [ebp - 0x18], eax
jne 0x100eb7b0
xorps xmm0, xmm0
mov dword [ebp - 0x1a], 0x4f434544
lea ecx, [ebp - 0x1a]
mov word [ebp - 0x16], 0x59
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x7c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100eb6c2
sub ecx, edx
lea eax, [ebp - 0x1a]
push ecx
push eax
lea ecx, [ebp - 0x90]
call fcn.10003450
mov dword [ebp - 4], 6
lea edx, [ebp - 0x90]
cvttss2si edi, dword [ebp - 0x6c]
lea ecx, [ebp - 0xc8]
call fcn.100fdeb0
mov esi, eax
mov byte [ebp - 4], 7
mov edx, esi
cmp dword [esi + 0x14], 7
jbe 0x100eb708
mov edx, dword [esi]
mov ecx, dword [0x101ee0d0]
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x94]
push eax
mov eax, dword [ecx]
push edx
push dword [0x101e8b00]
mov eax, dword [eax + 0x13c]
call eax
mov ecx, dword [0x101ee0d0]
push dword [0x101e8b00]
mov eax, dword [ecx]
mov eax, dword [eax + 0x5c]
call eax
mov ecx, dword [0x101ee0d0]
mov edx, dword [ebp - 0x78]
push edx
mov edx, dword [ebp - 0x24]
mov eax, dword [ecx]
push edx
mov edx, dword [ebp - 0x14]
push edx
mov edx, dword [ebp - 0x5c]
mov eax, dword [eax + 0x64]
push edx
call eax
mov eax, dword [ebp - 0x94]
mov ecx, dword [0x101ee0d0]
cdq
sub eax, edx
cvttss2si edx, dword [ebp - 0x68]
sar eax, 1
sub edi, eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
push edx
push edi
call eax
cmp dword [esi + 0x14], 7
mov edx, dword [esi + 0x10]
jbe 0x100eb789
mov esi, dword [esi]
mov ecx, dword [0x101ee0d0]
push 0
push edx
push esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x70]
call eax
lea ecx, [ebp - 0xc8]
call fcn.10009870
lea ecx, [ebp - 0x90]
jmp 0x100ebc1f
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0xa239ea8f
push eax
call fcn.10022e30
lea ecx, [edi + 8]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 8]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100eb7d9
mov eax, dword [eax + 0x14]
jmp 0x100eb7dc
or eax, 0xffffffff
cmp dword [ebp - 0x18], eax
jne 0x100eb850
mov edx, dword [ebp - 0x78]
lea eax, [ebp - 0x19]
mov dword [ebp - 0x38], edx
lea ecx, [ebp - 0x90]
mov edx, dword [ebp - 0x5c]
mov dword [ebp - 0x34], edx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], edx
mov edx, dword [ebp - 0x24]
push eax
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x19], 0x45524946
mov byte [ebp - 0x15], 0
call fcn.10002e90
sub esp, 0x10
mov dword [ebp - 4], 8
movups xmm0, xmmword [ebp - 0x38]
mov eax, esp
mov ecx, 0x101e8b00
push 2
movups xmmword [eax], xmm0
lea eax, [ebp - 0x90]
push eax
cvttss2si eax, dword [ebp - 0x68]
push eax
cvttss2si eax, dword [ebp - 0x6c]
push eax
call fcn.100fdd90
lea ecx, [ebp - 0x90]
jmp 0x100ebc1f
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0xc09c6702
push eax
call fcn.10022e30
lea ecx, [edi + 8]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 8]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100eb879
mov eax, dword [eax + 0x14]
jmp 0x100eb87c
or eax, 0xffffffff
cmp dword [ebp - 0x18], eax
jne 0x100eb996
mov eax, dword [edi + 4]
lea ecx, [edi + 4]
mov eax, dword [eax + 0x20]
call eax
test eax, eax
je 0x100ebc24
mov eax, dword [edi + 4]
lea ecx, [edi + 4]
mov eax, dword [eax + 0x20]
call eax
add eax, 4
lea ecx, [ebp - 0x90]
push eax
call fcn.10002e90
push ecx
mov dword [ebp - 4], 9
lea eax, [ebp - 0x32]
push eax
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x32], 0x73616c66
mov dword [ebp - 0x2e], 0x6e616268
mov word [ebp - 0x2a], 0x67
call fcn.1000ff10
cmp eax, 0xffffffff
je 0x100eb901
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x1a], 0x53414c46
push eax
lea ecx, [ebp - 0x50]
mov word [ebp - 0x16], 0x48
call fcn.10002e90
mov byte [ebp - 4], 0xa
jmp 0x100eb95b
mov dword [ebp - 0x34], 0xb3b5a6b2
xor eax, eax
mov dword [ebp - 0x30], 0xbab1a6b3
mov dword [ebp - 0x2c], 0xd4b1b0b5
nop dword [eax + eax]
xor byte [ebp + eax - 0x34], 0xd4
inc eax
cmp eax, 0xc
jb 0x100eb920
push ecx
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebp - 0x90]
call fcn.1000ff10
cmp eax, 0xffffffff
je 0x100eb98b
lea eax, [ebp - 0x19]
mov dword [ebp - 0x19], 0x47415246
push eax
lea ecx, [ebp - 0x50]
mov byte [ebp - 0x15], 0
call fcn.10002e90
mov byte [ebp - 4], 0xb
movups xmm0, xmmword [ebp - 0x60]
sub esp, 0x10
mov ecx, 0x101e8b00
mov eax, esp
push 2
movups xmmword [eax], xmm0
lea eax, [ebp - 0x50]
push eax
cvttss2si eax, dword [ebp - 0x68]
push eax
cvttss2si eax, dword [ebp - 0x6c]
push eax
call fcn.100fdd90
lea ecx, [ebp - 0x50]
call fcn.10002e40
lea ecx, [ebp - 0x90]
jmp 0x100ebc1f
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0xabe104c9
push eax
call fcn.10022e30
lea ecx, [edi + 8]
mov esi, dword [eax]
mov eax, dword [edi + 8]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100eb9bc
mov eax, dword [eax + 0x14]
jmp 0x100eb9bf
or eax, 0xffffffff
cmp esi, eax
jne 0x100ebb9e
lea eax, [ebp - 0x19]
mov dword [ebp - 0x19], 0x45524946
push eax
lea ecx, [ebp - 0x90]
mov byte [ebp - 0x15], 0
call fcn.10002e90
sub esp, 0x10
mov dword [ebp - 4], 0xc
movups xmm0, xmmword [ebp - 0x60]
mov eax, esp
mov ecx, 0x101e8b00
push 2
movups xmmword [eax], xmm0
lea eax, [ebp - 0x90]
push eax
cvttss2si eax, dword [ebp - 0x68]
push eax
cvttss2si eax, dword [ebp - 0x6c]
push eax
call fcn.100fdd90
lea ecx, [ebp - 0x90]
mov dword [ebp - 4], 0xffffffff
call fcn.10002e40
mov eax, dword [0x101ee088]
test eax, eax
jne 0x100eba5a
mov edx, 0xe80c2f78
mov ecx, 0x10173d39
call fcn.100074c0
mov edx, 0xc10bf213
mov ecx, 0x10173d51
mov esi, eax
call fcn.100074c0
push esi
push eax
call fcn.100fc040
mov dword [0x101ee088], eax
mov edx, dword [0x101e66e8]
movss xmm1, dword [0x1017f214]
mov ecx, dword [edx + 0x1c]
sub ecx, dword [eax + edi]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [edx + 0x20]
subss xmm1, xmm0
xorps xmm0, xmm0
comiss xmm1, xmm0
movss dword [ebp - 0x94], xmm1
jbe 0x100ebc24
movss xmm1, dword [ebp - 0x68]
sub esp, 0x10
addss xmm1, dword [0x1017f228]
mov eax, esp
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x60], 0xc8
movups xmm0, xmmword [ebp - 0x60]
push 5
push 0x1e
movups xmmword [eax], xmm0
movaps xmm0, xmm1
movss dword [ebp - 0x18], xmm1
subss xmm0, dword [0x1017f158]
cvttss2si edx, xmm0
movss xmm0, dword [ebp - 0x6c]
subss xmm0, dword [0x1017f234]
cvttss2si ecx, xmm0
call fcn.100fd990
movss xmm0, dword [ebp - 0x6c]
add esp, 8
subss xmm0, dword [0x1017f230]
cvttss2si edi, dword [ebp - 0x18]
mov eax, esp
mov dword [ebp - 0x5c], 0xa
mov dword [ebp - 0x58], 0xa
mov dword [ebp - 0x54], 0xa
mov dword [ebp - 0x60], 0x8c
push 3
push 0x1c
cvttss2si esi, xmm0
mov edx, edi
movups xmm0, xmmword [ebp - 0x60]
mov ecx, esi
movups xmmword [eax], xmm0
call fcn.100fd940
add esp, 8
mov dword [ebp - 0x5c], 0xf0
mov eax, esp
mov dword [ebp - 0x58], 0xf0
mov dword [ebp - 0x54], 0xf0
mov edx, edi
mov dword [ebp - 0x60], 0xc8
mov ecx, esi
movups xmm0, xmmword [ebp - 0x60]
push 3
movups xmmword [eax], xmm0
movss xmm0, dword [ebp - 0x94]
mulss xmm0, dword [0x1017f200]
cvttss2si eax, xmm0
push eax
call fcn.100fd940
add esp, 0x18
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
lea eax, [ebp - 0x18]
mov dword [ebp - 0x18], 0xe31dc1b8
push eax
call fcn.10022e30
lea ecx, [edi + 8]
mov esi, dword [eax]
mov eax, dword [edi + 8]
mov eax, dword [eax + 8]
call eax
test eax, eax
je 0x100ebbc4
mov eax, dword [eax + 0x14]
jmp 0x100ebbc7
or eax, 0xffffffff
cmp esi, eax
jne 0x100ebc24
lea eax, [ebp - 0x1a]
mov dword [ebp - 0x1a], 0x4b4f4d53
push eax
lea ecx, [ebp - 0xc8]
mov word [ebp - 0x16], 0x45
call fcn.10002e90
sub esp, 0x10
mov dword [ebp - 4], 0xd
movups xmm0, xmmword [ebp - 0x60]
mov eax, esp
mov ecx, 0x101e8b00
push 2
movups xmmword [eax], xmm0
lea eax, [ebp - 0xc8]
push eax
cvttss2si eax, dword [ebp - 0x68]
push eax
cvttss2si eax, dword [ebp - 0x6c]
push eax
call fcn.100fdd90
lea ecx, [ebp - 0xc8]
call fcn.10002e40
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret