Function at 0x10186020
Capabilities:
Encode data using xor
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x34
mov eax, dword [0x102070c0]
xor eax, esp
mov dword [esp + 0x30], eax
push ebx
push esi
push edi
sub esp, 8
mov edi, ecx
mov eax, esp
mov dl, 1
mov ecx, str.gameoverlayrenderer
mov dword [eax], 0x101f6e18
mov dword [eax + 4], 0xa
call fcn.10185a50
add eax, 4
sub esp, 8
mov dword [edi], eax
mov dl, 1
mov eax, esp
mov ecx, str.gameoverlayrenderer
mov dword [eax], 0x101f6e68
mov dword [eax + 4], 0xc
call fcn.10185a50
add eax, 6
movq xmm0, qword [0x101f762c]
mov dword [edi + 4], eax
xor ebx, ebx
mov eax, dword [0x10224ca8]
movq qword [esp + 0x24], xmm0
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 5]
mov eax, dword [eax]
mov dword [edi + 8], eax
mov eax, dword [0x10224ca8]
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 1]
mov dword [edi + 0xc], eax
mov eax, dword [0x10224ca8]
mov eax, dword [eax + 4]
mov eax, dword [eax]
mov eax, dword [eax + 0x2c]
mov eax, dword [eax + 0xa]
mov eax, dword [eax]
mov dword [edi + 0x10], eax
mov ax, word [0x101f7634]
mov word [esp + 0x2c], ax
mov al, byte [0x101f7636]
mov byte [esp + 0x2e], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xb
jl 0x101860e1
lea eax, [esp + 0x24]
sub esp, 8
mov esi, esp
mov ecx, eax
mov bl, 1
mov dword [esi], eax
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186120
sub ecx, edx
mov dl, bl
mov dword [esi + 4], ecx
mov ecx, 0x101f0e84
call fcn.10185a50
mov eax, dword [eax + 3]
mov dword [edi + 0x14], eax
mov eax, dword [0x101f7638]
mov dword [esp + 0x24], eax
mov ax, word [0x101f763c]
mov word [esp + 0x28], ax
test ah, ah
je 0x10186189
xor ecx, ecx
nop dword [eax + eax]
mov eax, 0x2f684bdb
mul ecx
mov eax, ecx
sub eax, edx
shr eax, 1
add eax, edx
mov dl, cl
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub dl, al
add dl, 0x32
xor byte [esp + ecx + 0x24], dl
inc ecx
cmp ecx, 6
jl 0x10186160
lea eax, [esp + 0x24]
sub esp, 8
mov esi, esp
mov ecx, eax
mov dword [esi], eax
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101861a0
sub ecx, edx
mov dl, bl
mov dword [esi + 4], ecx
mov ecx, 0x101f0e84
call fcn.10185a50
movq xmm0, qword [0x101f7604]
xor ebx, ebx
mov eax, dword [eax + 5]
mov dword [edi + 0x20], eax
mov ax, word [0x101f760c]
mov word [esp + 0x2c], ax
mov al, byte [0x101f760e]
movq qword [esp + 0x24], xmm0
mov byte [esp + 0x2e], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xb
jl 0x101861e2
lea eax, [esp + 0x24]
sub esp, 8
mov esi, esp
mov ecx, eax
mov bl, 1
mov dword [esi], eax
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186220
sub ecx, edx
mov dl, bl
mov dword [esi + 4], ecx
mov ecx, str.engine
call fcn.10185a50
movq xmm0, qword [0x101f767c]
lea ecx, [eax + 1]
mov eax, dword [ecx]
add eax, 4
movq qword [esp + 0x24], xmm0
add eax, ecx
mov dword [edi + 0x24], eax
mov ax, word [0x101f7684]
mov word [esp + 0x2c], ax
test ah, ah
je 0x1018628d
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xa
jl 0x10186264
lea eax, [esp + 0x24]
sub esp, 8
mov esi, esp
mov ecx, eax
mov bl, 1
mov dword [esi], eax
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101862a0
sub ecx, edx
mov dl, bl
mov dword [esi + 4], ecx
mov ecx, str.engine
call fcn.10185a50
cmp byte [0x101f7657], 0
movq xmm0, qword [0x101f764c]
mov dword [edi + 0x28], eax
mov eax, dword [0x101f7654]
mov esi, dword [0x10225d40]
movq qword [esp + 0x24], xmm0
mov dword [esp + 0x2c], eax
je 0x1018640a
xor ebx, ebx
cmp esi, 2
jl 0x101863e2
movaps xmm2, xmmword [0x101f8d60]
mov ebx, 8
movaps xmm3, xmmword [0x101f91b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
movd xmm0, dword [0x101f764c]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x24], xmm1
movaps xmm1, xmm2
punpckldq xmm1, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
movd xmm0, dword [esp + 0x28]
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x101f8f00]
xorps xmm1, xmm0
movd dword [esp + 0x28], xmm1
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xc
jl 0x101863e2
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186420
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x30], eax
mov eax, esp
mov dword [eax], 0x101f6e40
mov dword [eax + 4], 6
call fcn.10185a50
cmp byte [0x101f7693], 0
movq xmm0, qword [0x101f7688]
mov dword [edi + 0x2c], eax
mov eax, dword [0x101f7690]
movq qword [esp + 0x24], xmm0
mov dword [esp + 0x2c], eax
je 0x101865b8
xor ebx, ebx
cmp esi, 2
jl 0x10186590
movaps xmm2, xmmword [0x101f8d60]
mov ebx, 8
movaps xmm4, xmmword [0x101f91b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f7688]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x24], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x28]
xorps xmm1, xmm0
movd dword [esp + 0x28], xmm1
nop
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xc
jl 0x10186590
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101865d0
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
movq xmm0, qword [0x101f75b4]
mov dword [edi + 0x34], eax
mov ax, word [0x101f75bc]
movq qword [esp + 0x24], xmm0
mov word [esp + 0x2c], ax
test ah, ah
je 0x10186639
xor ebx, ebx
nop dword [eax]
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xa
jl 0x10186610
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186650
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
movq xmm0, qword [0x101f758c]
lea ecx, [eax + 3]
mov eax, dword [ecx]
add eax, 4
movq qword [esp + 0x24], xmm0
add eax, ecx
mov dword [edi + 0x38], eax
mov eax, dword [0x101f7594]
mov dword [esp + 0x2c], eax
mov ax, word [0x101f7598]
mov word [esp + 0x30], ax
test ah, ah
je 0x101867cb
xor ebx, ebx
cmp esi, 2
jl 0x101867a3
movaps xmm2, xmmword [0x101f8d60]
mov ebx, 8
movaps xmm4, xmmword [0x101f91b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f758c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x24], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x28]
xorps xmm1, xmm0
movd dword [esp + 0x28], xmm1
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xe
jl 0x101867a3
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101867e0
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
movups xmm0, xmmword [0x101f75cc]
mov edx, eax
mov ecx, dword [edx + 1]
mov dword [edi + 0x3c], ecx
mov eax, dword [edx + 6]
add eax, 0xa
add eax, edx
movups xmmword [esp + 0x24], xmm0
mov dword [edi + 0x40], eax
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x10186988
xor ebx, ebx
cmp esi, 2
jl 0x10186960
movaps xmm0, xmmword [0x101f8f00]
xor ecx, ecx
movaps xmm4, xmmword [0x101f8d60]
movaps xmm3, xmmword [0x101f91b0]
movaps xmm5, xmmword [0x101f8e10]
movaps xmmword [esp + 0x10], xmm0
mov edx, dword [esp + 0x10]
nop dword [eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x24]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x24], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x28]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x28], xmm1
add ecx, 8
cmp ecx, 0x10
jl 0x10186860
jmp 0x10186988
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0x10
jl 0x10186960
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101869a0
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
movq xmm0, qword [0x101f7580]
lea ecx, [eax + 1]
mov eax, dword [ecx]
add eax, 4
movq qword [esp + 0x24], xmm0
add eax, ecx
xor ebx, ebx
mov dword [edi + 0x44], eax
mov al, byte [0x101f7588]
mov byte [esp + 0x2c], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 9
jl 0x101869e0
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186a20
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
movq xmm0, qword [0x101f7620]
lea ecx, [eax + 1]
mov eax, dword [ecx]
add eax, 4
movq qword [esp + 0x24], xmm0
add eax, ecx
mov dword [edi + 0x48], eax
mov ax, word [0x101f7628]
mov word [esp + 0x2c], ax
test ah, ah
je 0x10186a8f
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xa
jl 0x10186a66
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186aa4
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
lea ecx, [eax + 1]
mov eax, dword [ecx]
add eax, 4
add eax, ecx
mov dword [edi + 0x50], eax
mov eax, dword [0x101f75ac]
mov dword [esp + 0x24], eax
mov ax, word [0x101f75b0]
mov word [esp + 0x28], ax
test ah, ah
je 0x10186b0e
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 6
jl 0x10186ae5
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186b23
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
movq xmm0, qword [0x101f75c0]
add eax, 5
mov dword [edi + 0x54], eax
mov ax, word [0x101f75c8]
movq qword [esp + 0x24], xmm0
mov word [esp + 0x2c], ax
test ah, ah
je 0x10186b8b
xor ebx, ebx
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xa
jl 0x10186b62
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186ba0
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, str.engine
mov dl, byte [esp + 0x17]
call fcn.10185a50
movq xmm0, qword [0x101f75f8]
add eax, 3
mov dword [edi + 0x58], eax
xor ebx, ebx
mov ax, word [0x101f7600]
mov word [esp + 0x2c], ax
mov al, byte [0x101f7602]
movq qword [esp + 0x24], xmm0
mov byte [esp + 0x2e], al
mov eax, 0x2f684bdb
mov cl, bl
mul ebx
mov eax, ebx
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xb
jl 0x10186be4
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186c22
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
movq xmm0, qword [0x101f759c]
xor ebx, ebx
mov dword [edi + 0x5c], eax
mov eax, dword [0x101f75a4]
mov dword [esp + 0x2c], eax
mov al, byte [0x101f75a8]
movq qword [esp + 0x24], xmm0
mov byte [esp + 0x30], al
cmp esi, 2
jl 0x10186d61
movaps xmm2, xmmword [0x101f8d60]
mov ebx, 8
movaps xmm4, xmmword [0x101f91b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f759c]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x24], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x28]
xorps xmm1, xmm0
movd dword [esp + 0x28], xmm1
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xd
jl 0x10186d61
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186da0
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
cmp byte [0x101f766f], 0
movups xmm0, xmmword [0x101f7658]
mov eax, dword [eax + 2]
mov eax, dword [eax]
movups xmmword [esp + 0x24], xmm0
mov dword [edi + 0x60], eax
movq xmm0, qword [0x101f7668]
movq qword [esp + 0x34], xmm0
je 0x10186f48
xor ebx, ebx
cmp esi, 2
jl 0x10186f20
movaps xmm0, xmmword [0x101f8f00]
xor ecx, ecx
movaps xmm4, xmmword [0x101f8d60]
movaps xmm3, xmmword [0x101f91b0]
movaps xmm5, xmmword [0x101f8e10]
movaps xmmword [esp + 0x10], xmm0
mov edx, dword [esp + 0x10]
nop dword [eax + eax]
movd xmm0, ecx
lea eax, [ecx + 4]
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x24]
xorps xmm1, xmm0
movd xmm0, eax
pshufd xmm2, xmm0, 0
movd dword [esp + ecx + 0x24], xmm1
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, edx
paddb xmm1, xmm0
movd xmm0, dword [esp + ecx + 0x28]
xorps xmm1, xmm0
movd dword [esp + ecx + 0x28], xmm1
add ecx, 8
cmp ecx, 0x18
jl 0x10186e20
jmp 0x10186f48
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0x18
jl 0x10186f20
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov edx, esp
lea ebx, [ecx + 1]
mov dword [edx], eax
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10186f60
sub ecx, ebx
mov dword [edx + 4], ecx
mov ecx, 0x101f0e84
mov dl, byte [esp + 0x17]
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 1]
mov dword [edi + 0x64], eax
mov eax, esp
mov dword [eax], 0x101f6e48
mov dword [eax + 4], 0xb
call fcn.10185a50
movq xmm0, qword [0x101f7610]
xor ebx, ebx
movq qword [esp + 0x24], xmm0
lea ecx, [eax + 1]
mov eax, dword [ecx]
add eax, 4
add eax, ecx
mov dword [edi + 0x68], eax
mov eax, dword [0x101f7618]
mov dword [esp + 0x2c], eax
mov al, byte [0x101f761c]
mov byte [esp + 0x30], al
cmp esi, 2
jl 0x101870d0
movaps xmm2, xmmword [0x101f8d60]
mov ebx, 8
movaps xmm4, xmmword [0x101f91b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [0x101f7610]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x24], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x28]
xorps xmm1, xmm0
movd dword [esp + 0x28], xmm1
nop dword [eax]
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xd
jl 0x101870d0
lea eax, [esp + 0x24]
sub esp, 8
mov esi, esp
mov ecx, eax
mov bl, 1
mov dword [esi], eax
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10187110
sub ecx, edx
mov dl, bl
mov dword [esi + 4], ecx
mov ecx, 0x101f0e84
call fcn.10185a50
push str.tier0
mov dword [edi + 0x22c], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
push 0x101f6ebc
push esi
call ebx
push str._ConColorMsg__YAXABVColor__PBDZZ
push esi
mov dword [edi + 0x78], eax
call ebx
cmp byte [0x101f764b], 0
movq xmm0, qword [str._1_n_t_b_a]
mov dword [edi + 0x7c], eax
mov eax, dword [0x101f7648]
movq qword [esp + 0x24], xmm0
mov dword [esp + 0x2c], eax
je 0x101872af
xor ebx, ebx
cmp dword [0x10225d40], 2
jl 0x10187281
movaps xmm2, xmmword [0x101f8d60]
mov ebx, 8
movaps xmm4, xmmword [0x101f91b0]
movaps xmm1, xmm2
punpckldq xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
mov eax, dword [0x101f8f00]
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movaps xmm2, xmmword [0x101f8da0]
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [str._1_n_t_b_a]
xorps xmm1, xmm0
movaps xmm0, xmm2
movd dword [esp + 0x24], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x101f8e10]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
andps xmm1, xmmword [0x101f8eb0]
packuswb xmm1, xmm1
movd xmm0, eax
paddb xmm1, xmm0
movd xmm0, dword [esp + 0x28]
xorps xmm1, xmm0
movd dword [esp + 0x28], xmm1
mov eax, 0x4bda12f7
mov cl, bl
imul ebx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
movsx eax, al
imul eax, eax, 0x36
sub cl, al
add cl, 0x32
xor byte [esp + ebx + 0x24], cl
inc ebx
cmp ebx, 0xc
jl 0x10187281
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
lea eax, [esp + 0x24]
mov byte [esp + 0xf], 1
sub esp, 8
mov ecx, eax
mov esi, esp
lea edx, [ecx + 1]
mov dword [esi], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x101872c4
sub ecx, edx
mov dl, byte [esp + 0x17]
mov dword [esi + 4], ecx
mov ecx, 0x101f0e84
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 3]
add eax, 4
mov dword [edi + 0x80], eax
mov eax, esp
mov dword [eax], 0x101f6ea0
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x84], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f6ee0
mov dword [eax + 4], 0x13
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 2]
mov dword [edi + 0x88], eax
mov eax, esp
mov dword [eax], 0x101f6ef4
mov dword [eax + 4], 9
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 1]
mov eax, dword [eax]
mov dword [edi + 0x8c], eax
mov eax, esp
mov dword [eax], 0x101f6ec0
mov dword [eax + 4], 0x10
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 2]
mov eax, dword [eax]
mov dword [edi + 0x90], eax
mov eax, esp
mov dword [eax], 0x101f6ed4
mov dword [eax + 4], 0xb
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x94], eax
mov eax, esp
mov dword [eax], 0x101f6f1c
mov dword [eax + 4], 7
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x98], eax
mov eax, esp
mov dword [eax], 0x101f6f24
mov dword [eax + 4], 8
call fcn.10185a50
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov dword [edi + 0x9c], eax
sub esp, 8
mov dl, 1
mov eax, esp
mov ecx, 0x101f0e84
mov dword [eax], 0x101f6f00
mov dword [eax + 4], 0xb
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 2]
mov dword [edi + 0xa0], eax
mov eax, esp
mov dword [eax], 0x101f6f0c
mov dword [eax + 4], 0xc
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, str.engine
mov dword [edi + 0xa4], eax
mov eax, esp
mov dword [eax], 0x101f6f48
mov dword [eax + 4], 0xb
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, str.engine
mov dword [edi + 0xa8], eax
mov eax, esp
mov dword [eax], 0x101f6f54
mov dword [eax + 4], 0xa
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, str.engine
mov eax, dword [eax + 2]
mov dword [edi + 0xac], eax
mov eax, esp
mov dword [eax], 0x101f6f30
mov dword [eax + 4], 9
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 2]
mov dword [edi + 0xb0], eax
mov eax, esp
mov dword [eax], 0x101f6f3c
mov dword [eax + 4], 0xa
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 4]
mov dword [edi + 0xb4], eax
mov eax, esp
mov dword [eax], 0x101f6f84
mov dword [eax + 4], 8
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0xb8], eax
mov eax, esp
mov dword [eax], 0x101f6f90
mov dword [eax + 4], 7
call fcn.10185a50
add eax, 3
mov dword [edi + 0xbc], eax
sub esp, 8
mov dl, 1
mov eax, esp
mov ecx, 0x101f0e84
mov dword [eax], 0x101f6f60
mov dword [eax + 4], 0x18
call fcn.10185a50
mov dword [edi + 0xc0], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f6f7c
mov dword [eax + 4], 6
call fcn.10185a50
mov dword [edi + 0xc4], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f6fb0
mov dword [eax + 4], 5
call fcn.10185a50
mov dword [edi + 0xc8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f6fb8
mov dword [eax + 4], 9
call fcn.10185a50
mov dword [edi + 0xcc], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f6f98
mov dword [eax + 4], 4
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 4]
mov dword [edi + 0x18], eax
mov eax, esp
mov dword [eax], 0x101f6fa0
mov dword [eax + 4], 0xc
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 4]
mov dword [edi + 0xd0], eax
mov eax, esp
mov dword [eax], 0x101f6fe0
mov dword [eax + 4], 0xf
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x224], eax
mov eax, esp
mov dword [eax], 0x101f6ff0
mov dword [eax + 4], 0xe
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 6]
sub eax, 0x24
mov dword [edi + 0x1c], eax
mov eax, esp
mov dword [eax], 0x101f6fc4
mov dword [eax + 4], 0xc
call fcn.10185a50
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
sub esp, 8
add eax, ecx
mov dl, 1
mov dword [edi + 0x228], eax
mov ecx, 0x101f0e84
mov eax, esp
mov dword [eax], 0x101f6fd4
mov dword [eax + 4], 0xa
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 1]
mov dword [0x10226524], eax
mov eax, esp
mov dword [eax], 0x101f701c
mov dword [eax + 4], 0xe
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 0x56
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0xd4], eax
mov eax, esp
mov dword [eax], 0x101f702c
mov dword [eax + 4], 7
call fcn.10185a50
mov dword [edi + 0xf4], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.engine
mov dword [eax], 0x101f7000
mov dword [eax + 4], 0xc
call fcn.10185a50
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push str.g_pMemAlloc
push str.tier0.dll
mov eax, dword [eax + 1]
mov eax, dword [eax]
mov dword [edi + 0xd8], eax
call esi
push eax
call ebx
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax]
mov dword [edi + 0xdc], eax
mov eax, esp
mov dword [eax], 0x101f7060
mov dword [eax + 4], 0xe
call fcn.10185a50
mov dword [edi + 0xe0], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7034
mov dword [eax + 4], 0xc
call fcn.10185a50
mov dword [edi + 0xe8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7044
mov dword [eax + 4], 0xe
call fcn.10185a50
mov dword [edi + 0xe4], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7088
mov dword [eax + 4], 0xa
call fcn.10185a50
mov dword [edi + 0xf0], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7094
mov dword [eax + 4], 0x11
call fcn.10185a50
mov dword [edi + 0xf8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7070
mov dword [eax + 4], 0xe
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax]
mov dword [edi + 0xfc], eax
mov eax, esp
mov dword [eax], 0x101f7080
mov dword [eax + 4], 6
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax]
mov dword [edi + 0x100], eax
mov eax, esp
mov dword [eax], 0x101f70d0
mov dword [eax + 4], 9
call fcn.10185a50
mov dword [edi + 0x110], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f70dc
mov dword [eax + 4], 8
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 1]
mov dword [edi + 0x104], eax
mov eax, esp
mov dword [eax], 0x101f70a8
mov dword [eax + 4], 0xa
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x4c], eax
mov eax, esp
mov dword [eax], 0x101f70b4
mov dword [eax + 4], 0x1b
call fcn.10185a50
mov dword [edi + 0x108], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f710c
mov dword [eax + 4], 0x16
call fcn.10185a50
mov dword [edi + 0x10c], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7124
mov dword [eax + 4], 0x11
call fcn.10185a50
mov dword [edi + 0x114], eax
mov dl, 1
sub esp, 8
mov ecx, 0x101f0e84
mov eax, esp
mov dword [eax], 0x101f70e8
mov dword [eax + 4], 0x10
call fcn.10185a50
mov dword [edi + 0x118], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f70fc
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x11c], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.engine
mov dword [eax], 0x101f7158
mov dword [eax + 4], 0x18
call fcn.10185a50
mov dword [edi + 0x120], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7174
mov dword [eax + 4], 0x13
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x124], eax
mov eax, esp
mov dword [eax], 0x101f7138
mov dword [eax + 4], 0x11
call fcn.10185a50
mov dword [edi + 0x128], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f714c
mov dword [eax + 4], 8
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x12c], eax
mov eax, esp
mov dword [eax], 0x101f71b0
mov dword [eax + 4], 0xc
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x130], eax
mov eax, esp
mov dword [eax], 0x101f71c0
mov dword [eax + 4], 0xc
call fcn.10185a50
mov dword [edi + 0x134], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7188
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x138], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7198
mov dword [eax + 4], 0x16
call fcn.10185a50
mov dword [edi + 0x13c], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f71ec
mov dword [eax + 4], 0xc
call fcn.10185a50
push str.RandomSeed
push str.vstdlib
mov dword [edi + 0x140], eax
call esi
push eax
call ebx
push str.RandomFloat
push str.vstdlib
mov dword [edi + 0x144], eax
call esi
push eax
call ebx
mov dword [edi + 0x148], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f71dc
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x14c], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7228
mov dword [eax + 4], 0x1f
call fcn.10185a50
mov dword [edi + 0x150], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7248
mov dword [eax + 4], 9
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x154], eax
mov eax, esp
mov dword [eax], 0x101f7208
mov dword [eax + 4], 8
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x158], eax
mov eax, esp
mov dword [eax], 0x101f7214
mov dword [eax + 4], 0x10
call fcn.10185a50
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov dword [edi + 0x15c], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f726c
mov dword [eax + 4], 0x16
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x160], eax
mov eax, esp
mov dword [eax], 0x101f7284
mov dword [eax + 4], 0xe
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x164], eax
mov eax, esp
mov dword [eax], 0x101f7254
mov dword [eax + 4], 9
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x168], eax
mov eax, esp
mov dword [eax], 0x101f7260
mov dword [eax + 4], 0xb
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x16c], eax
mov eax, esp
mov dword [eax], 0x101f72c0
mov dword [eax + 4], 8
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, str.server
mov dword [edi + 0x170], eax
mov eax, esp
mov dword [eax], 0x101f72cc
mov dword [eax + 4], 9
call fcn.10185a50
mov dword [edi + 0x174], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.server
mov dword [eax], 0x101f7294
mov dword [eax + 4], 0x16
call fcn.10185a50
mov dword [edi + 0x178], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov dword [eax], 0x101f72ac
mov ecx, 0x101f0e84
mov dword [eax + 4], 0x11
call fcn.10185a50
mov dword [edi + 0x17c], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f72f0
mov dword [eax + 4], 8
call fcn.10185a50
mov dword [edi + 0x180], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f72fc
mov dword [eax + 4], 0xe
call fcn.10185a50
mov dword [edi + 0x184], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f72d8
mov dword [eax + 4], 0xa
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x188], eax
mov eax, esp
mov dword [eax], 0x101f72e4
mov dword [eax + 4], 0xb
call fcn.10185a50
mov dword [edi + 0x18c], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.engine
mov dword [eax], 0x101f733c
mov dword [eax + 4], 0xc
call fcn.10185a50
mov dword [edi + 0x190], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.engine
mov dword [eax], 0x101f734c
mov dword [eax + 4], 8
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, str.engine
mov dword [edi + 0x194], eax
mov eax, esp
mov dword [eax], 0x101f730c
mov dword [eax + 4], 0x1e
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, str.engine
mov dword [edi + 0x198], eax
mov eax, esp
mov dword [eax], 0x101f732c
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x19c], eax
mov dl, 1
sub esp, 8
mov ecx, str.engine
mov eax, esp
mov dword [eax], 0x101f736c
mov dword [eax + 4], 0xd
call fcn.10185a50
inc eax
sub esp, 8
mov dword [edi + 0x1a0], eax
mov dl, 1
mov eax, esp
mov ecx, str.steamnetworkingsockets
mov dword [eax], 0x101f737c
mov dword [eax + 4], 0xc
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 1]
mov dword [edi + 0x1a4], eax
mov eax, esp
mov dword [eax], 0x101f7358
mov dword [eax + 4], 7
call fcn.10185a50
mov dword [edi + 0x1a8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.materialsystem
mov dword [eax], 0x101f7360
mov dword [eax + 4], 0xb
call fcn.10185a50
mov dword [edi + 0x1ac], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.engine
mov dword [eax], 0x101f73a8
mov dword [eax + 4], 0xa
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x1b0], eax
mov eax, esp
mov dword [eax], 0x101f73b4
mov dword [eax + 4], 0x10
call fcn.10185a50
mov dword [edi + 0x1b4], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f738c
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x1b8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f739c
mov dword [eax + 4], 9
call fcn.10185a50
sub esp, 8
mov dl, 1
lea ecx, [eax + 1]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x1bc], eax
mov eax, esp
mov dword [eax], 0x101f73e4
mov dword [eax + 4], 9
call fcn.10185a50
lea ecx, [eax + 1]
mov eax, dword [ecx]
sub esp, 8
add ecx, 4
mov dl, 1
add eax, ecx
mov ecx, 0x101f0e84
mov dword [edi + 0x1c0], eax
mov eax, esp
mov dword [eax], 0x101f73f0
mov dword [eax + 4], 0x12
call fcn.10185a50
mov dword [edi + 0x1c4], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f73c8
mov dword [eax + 4], 7
call fcn.10185a50
mov dword [edi + 0x1c8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f73d0
mov dword [eax + 4], 0x10
call fcn.10185a50
mov dword [edi + 0x1cc], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7428
mov dword [eax + 4], 0x13
call fcn.10185a50
mov dword [edi + 0x1d0], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f743c
mov dword [eax + 4], 0x12
call fcn.10185a50
mov dword [edi + 0x1d4], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7404
mov dword [eax + 4], 0xe
call fcn.10185a50
mov dword [edi + 0x1d8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7414
mov dword [eax + 4], 0x10
call fcn.10185a50
mov dword [edi + 0x1dc], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7474
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x1e0], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7484
mov dword [eax + 4], 0x12
call fcn.10185a50
mov dl, 1
lea ecx, [eax + 0x2b]
mov eax, dword [ecx]
add ecx, 4
add eax, ecx
mov dword [edi + 0x1e4], eax
sub esp, 8
mov ecx, 0x101f0e84
mov eax, esp
mov dword [eax], 0x101f7450
mov dword [eax + 4], 0xd
call fcn.10185a50
mov dword [edi + 0x1e8], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7460
mov dword [eax + 4], 0x11
call fcn.10185a50
mov dword [edi + 0x1ec], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f74b4
mov dword [eax + 4], 0x1a
call fcn.10185a50
mov dword [edi + 0x1f0], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f74d0
mov dword [eax + 4], 0xf
call fcn.10185a50
mov dword [edi + 0x1f4], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7498
mov dword [eax + 4], 0xa
call fcn.10185a50
sub esp, 8
mov dl, 1
mov ecx, 0x101f0e84
mov eax, dword [eax + 2]
mov dword [edi + 0x1f8], eax
mov eax, esp
mov dword [eax], 0x101f74a4
mov dword [eax + 4], 0xc
call fcn.10185a50
mov dword [edi + 0x1fc], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.engine
mov dword [eax], 0x101f74a4
mov dword [eax + 4], 0xc
call fcn.10185a50
mov dword [edi + 0x200], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.studiorender
mov dword [eax], 0x101f74a4
mov dword [eax + 4], 0xc
call fcn.10185a50
mov dword [edi + 0x204], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, str.materialsystem
mov dword [eax], 0x101f74a4
mov dword [eax + 4], 0xc
call fcn.10185a50
mov dword [edi + 0x208], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7508
mov dword [eax + 4], 0xb
call fcn.10185a50
mov dword [edi + 0x210], eax
push str.LoggingSystem_FindChannel
push str.tier0.dll
call esi
push eax
call ebx
push str.LoggingSystem_LogDirect
push str.tier0.dll
mov dword [edi + 0x214], eax
call esi
push eax
call ebx
mov dword [edi + 0x218], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f74f8
mov dword [eax + 4], 0xd
call fcn.10185a50
push str.CreateSimpleThread
push str.tier0.dll
mov dword [edi + 0x230], eax
call esi
push eax
call ebx
push str.ReleaseThreadHandle
push str.tier0.dll
mov dword [edi + 0x21c], eax
call esi
push eax
call ebx
mov dword [edi + 0x220], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7530
mov dword [eax + 4], 6
call fcn.10185a50
mov dword [edi + 0x74], eax
sub esp, 8
mov eax, esp
mov dl, 1
mov ecx, 0x101f0e84
mov dword [eax], 0x101f7538
mov dword [eax + 4], 9
call fcn.10185a50
sub esp, 8
add eax, 9
mov esi, esp
mov dword [edi + 0x6c], eax
mov dl, 1
mov ecx, 0x101f0e84
mov dword [esi], 0x101f756c
mov dword [esi + 4], 0x12
call fcn.10185a50
mov ecx, dword [esp + 0x3c]
add eax, 0xfffffffa
mov dword [edi + 0x70], eax
mov eax, edi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1019a294
mov esp, ebp
pop ebp
ret