Function at 0x100f4260
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x64
mov eax, dword [0x1029e280]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x102ac010], 0
push ebx
push esi
push edi
mov dword [ebp - 0x5c], ecx
jne 0x100f53b5
lea eax, [ebp - 0x4c]
mov ecx, 0x1029b538
push eax
call fcn.10050390
cmp dword [ebp - 0x38], 0xf
lea edi, [ebp - 0x4c]
cmova edi, dword [ebp - 0x4c]
cmp byte [0x1029b430], 0
je 0x100f4307
cmp byte [0x1029b431], 0
jne 0x100f4355
mov byte [0x1029b431], 1
xor esi, esi
nop dword [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029b534]
xor ebx, dword [0x1029b530]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029b432], al
inc esi
cmp esi, 0xfa
jb 0x100f42c0
jmp 0x100f4355
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029b534]
xor ebx, dword [0x1029b530]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029b432], al
inc esi
cmp esi, 0xfa
jb 0x100f4310
lea eax, [ebp - 0x4d]
push eax
push 0x1029b52b
push 0x1029b432
lea ecx, [ebp - 0x1c]
call fcn.1004f490
cmp dword [ebp - 8], 0xf
lea eax, [ebp - 0x1c]
mov ecx, 0x1029b418
cmova eax, dword [ebp - 0x1c]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x34]
push eax
call fcn.1004fec0
cmp dword [ebp - 0x20], 0xf
lea ebx, [ebp - 0x34]
push 0x28
cmova ebx, dword [ebp - 0x34]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f43b3
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f43b5
xor esi, esi
push 0
push 0
push edi
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push ebx
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x20]
mov dword [eax + 0x214], esi
cmp ecx, 0xf
jbe 0x100f442e
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4424
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f44a8
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp ecx, 0xf
jbe 0x100f4470
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4466
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f44a8
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp ecx, 0xf
jbe 0x100f44b8
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f44ae
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f44ae
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1029b748
push eax
call fcn.10050390
cmp dword [ebp - 0x38], 0xf
lea edi, [ebp - 0x4c]
cmova edi, dword [ebp - 0x4c]
cmp byte [0x1029b570], 0
je 0x100f453d
cmp byte [0x1029b571], 0
jne 0x100f458b
mov byte [0x1029b571], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029b744]
xor ebx, dword [0x1029b740]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, byte [esi + 0x1029b572]
xor al, bl
mov byte [esi + 0x1029b572], al
inc esi
cmp esi, 0x1ca
jb 0x100f44f0
jmp 0x100f458b
xor esi, esi
nop
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029b744]
xor ebx, dword [0x1029b740]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, byte [esi + 0x1029b572]
xor al, bl
mov byte [esi + 0x1029b572], al
inc esi
cmp esi, 0x1ca
jb 0x100f4540
lea eax, [ebp - 0x4d]
push eax
push 0x1029b73b
push 0x1029b572
lea ecx, [ebp - 0x34]
call fcn.1004f490
cmp dword [ebp - 0x20], 0xf
lea eax, [ebp - 0x34]
mov ecx, 0x1029b558
cmova eax, dword [ebp - 0x34]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10050d50
cmp dword [ebp - 8], 0xf
lea ebx, [ebp - 0x1c]
push 0x28
cmova ebx, dword [ebp - 0x1c]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f45e9
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f45eb
xor esi, esi
push 0
push 0
push edi
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push ebx
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x218], esi
cmp ecx, 0xf
jbe 0x100f4664
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f465a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f46de
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp ecx, 0xf
jbe 0x100f46a6
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f469c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f46de
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp ecx, 0xf
jbe 0x100f46ee
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f46e4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f46e4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1029b918
push eax
call fcn.10050e20
cmp dword [ebp - 0x38], 0xf
lea edi, [ebp - 0x4c]
cmova edi, dword [ebp - 0x4c]
cmp byte [0x1029b780], 0
je 0x100f476d
cmp byte [0x1029b781], 0
jne 0x100f47b5
mov byte [0x1029b781], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029b914]
xor ebx, dword [0x1029b910]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029b782], al
inc esi
cmp esi, 0x18b
jb 0x100f4726
jmp 0x100f47b5
xor esi, esi
nop
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029b914]
xor ebx, dword [0x1029b910]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029b782], al
inc esi
cmp esi, 0x18b
jb 0x100f4770
lea eax, [ebp - 0x4d]
push eax
push 0x1029b90c
push 0x1029b782
lea ecx, [ebp - 0x34]
call fcn.1004f490
cmp dword [ebp - 0x20], 0xf
lea eax, [ebp - 0x34]
mov ecx, 0x1029b768
cmova eax, dword [ebp - 0x34]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004fec0
cmp dword [ebp - 8], 0xf
lea ebx, [ebp - 0x1c]
push 0x28
cmova ebx, dword [ebp - 0x1c]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f4813
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f4815
xor esi, esi
push 0
push 0
push edi
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push ebx
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x21c], esi
cmp ecx, 0xf
jbe 0x100f488e
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4884
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4908
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp ecx, 0xf
jbe 0x100f48d0
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f48c6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4908
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp ecx, 0xf
jbe 0x100f4918
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f490e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f490e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1029bc28
push eax
call fcn.10050390
cmp dword [ebp - 0x38], 0xf
lea edi, [ebp - 0x4c]
cmova edi, dword [ebp - 0x4c]
cmp byte [0x1029b948], 0
je 0x100f4997
cmp byte [0x1029b949], 0
jne 0x100f49e5
mov byte [0x1029b949], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029bc24]
xor ebx, dword [0x1029bc20]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029b94a], al
inc esi
cmp esi, 0x2d5
jb 0x100f4950
jmp 0x100f49e5
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029bc24]
xor ebx, dword [0x1029bc20]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029b94a], al
inc esi
cmp esi, 0x2d5
jb 0x100f49a0
lea eax, [ebp - 0x4d]
push eax
push 0x1029bc1e
push 0x1029b94a
lea ecx, [ebp - 0x34]
call fcn.1004f490
cmp dword [ebp - 0x20], 0xf
lea eax, [ebp - 0x34]
mov ecx, 0x1029b930
cmova eax, dword [ebp - 0x34]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10050c80
cmp dword [ebp - 8], 0xf
lea ebx, [ebp - 0x1c]
push 0x28
cmova ebx, dword [ebp - 0x1c]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f4a43
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f4a45
xor esi, esi
push 0
push 0
push edi
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push ebx
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x220], esi
cmp ecx, 0xf
jbe 0x100f4abe
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4ab4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4b38
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp ecx, 0xf
jbe 0x100f4b00
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4af6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4b38
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp ecx, 0xf
jbe 0x100f4b48
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4b3e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f4b3e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1029bdc0
push eax
call fcn.10050390
cmp dword [ebp - 0x38], 0xf
lea edi, [ebp - 0x4c]
cmova edi, dword [ebp - 0x4c]
cmp byte [0x1029bc60], 0
je 0x100f4bc7
cmp byte [0x1029bc61], 0
jne 0x100f4c15
mov byte [0x1029bc61], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029bdbc]
xor ebx, dword [0x1029bdb8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029bc62], al
inc esi
cmp esi, 0x14f
jb 0x100f4b80
jmp 0x100f4c15
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029bdbc]
xor ebx, dword [0x1029bdb8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029bc62], al
inc esi
cmp esi, 0x14f
jb 0x100f4bd0
lea eax, [ebp - 0x4d]
push eax
push 0x1029bdb0
push 0x1029bc62
lea ecx, [ebp - 0x34]
call fcn.1004f490
cmp dword [ebp - 0x20], 0xf
lea eax, [ebp - 0x34]
mov ecx, 0x1029bc48
cmova eax, dword [ebp - 0x34]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.1004fec0
cmp dword [ebp - 8], 0xf
lea ebx, [ebp - 0x1c]
push 0x28
cmova ebx, dword [ebp - 0x1c]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f4c73
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f4c75
xor esi, esi
push 0
push 0
push edi
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push ebx
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x224], esi
cmp ecx, 0xf
jbe 0x100f4cee
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4ce4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4d68
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp ecx, 0xf
jbe 0x100f4d30
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4d26
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4d68
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp ecx, 0xf
jbe 0x100f4d78
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4d6e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f4d6e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1029bf38
push eax
call fcn.10050390
cmp dword [ebp - 0x38], 0xf
lea edi, [ebp - 0x4c]
cmova edi, dword [ebp - 0x4c]
cmp byte [0x1029bdf8], 0
je 0x100f4dfd
cmp byte [0x1029bdf9], 0
jne 0x100f4e4b
mov byte [0x1029bdf9], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029bf34]
xor ebx, dword [0x1029bf30]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, byte [esi + 0x1029bdfa]
xor al, bl
mov byte [esi + 0x1029bdfa], al
inc esi
cmp esi, 0x130
jb 0x100f4db0
jmp 0x100f4e4b
xor esi, esi
nop
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029bf34]
xor ebx, dword [0x1029bf30]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, byte [esi + 0x1029bdfa]
xor al, bl
mov byte [esi + 0x1029bdfa], al
inc esi
cmp esi, 0x130
jb 0x100f4e00
lea eax, [ebp - 0x4d]
push eax
push 0x1029bf29
push 0x1029bdfa
lea ecx, [ebp - 0x34]
call fcn.1004f490
cmp dword [ebp - 0x20], 0xf
lea eax, [ebp - 0x34]
mov ecx, 0x1029bde0
cmova eax, dword [ebp - 0x34]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10050d50
cmp dword [ebp - 8], 0xf
lea ebx, [ebp - 0x1c]
push 0x28
cmova ebx, dword [ebp - 0x1c]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f4ea9
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f4eab
xor esi, esi
push 0
push 0
push edi
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push ebx
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x228], esi
cmp ecx, 0xf
jbe 0x100f4f24
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4f1a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4f9e
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp ecx, 0xf
jbe 0x100f4f66
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4f5c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f4f9e
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp ecx, 0xf
jbe 0x100f4fae
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f4fa4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f4fa4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1029c088
push eax
call fcn.10050390
cmp dword [ebp - 0x38], 0xf
lea edi, [ebp - 0x4c]
cmova edi, dword [ebp - 0x4c]
cmp byte [0x1029bf70], 0
je 0x100f502d
cmp byte [0x1029bf71], 0
jne 0x100f5075
mov byte [0x1029bf71], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029c084]
xor ebx, dword [0x1029c080]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029bf72], al
inc esi
cmp esi, 0x10c
jb 0x100f4fe6
jmp 0x100f5075
xor esi, esi
nop
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029c084]
xor ebx, dword [0x1029c080]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov dword [ebp - 0x54], edx
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029bf72], al
inc esi
cmp esi, 0x10c
jb 0x100f5030
lea eax, [ebp - 0x4d]
push eax
push 0x1029c07d
push 0x1029bf72
lea ecx, [ebp - 0x34]
call fcn.1004f490
cmp dword [ebp - 0x20], 0xf
lea eax, [ebp - 0x34]
mov ecx, 0x1029bf58
cmova eax, dword [ebp - 0x34]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10050c80
cmp dword [ebp - 8], 0xf
lea ebx, [ebp - 0x1c]
push 0x28
cmova ebx, dword [ebp - 0x1c]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f50d3
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f50d5
xor esi, esi
push 0
push 0
push edi
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push ebx
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push ebx
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x2b8], esi
cmp ecx, 0xf
jbe 0x100f514e
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f5144
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f51c8
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp ecx, 0xf
jbe 0x100f5190
mov edx, dword [ebp - 0x34]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f5186
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100f51c8
push ecx
push edx
call fcn.101169da
add esp, 8
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp ecx, 0xf
jbe 0x100f51d8
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f51ce
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f51ce
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea eax, [ebp - 0x34]
mov ecx, 0x1029c1b0
push eax
call fcn.10050390
cmp dword [ebp - 0x20], 0xf
lea ebx, [ebp - 0x34]
cmova ebx, dword [ebp - 0x34]
cmp byte [0x1029c0c0], 0
mov dword [ebp - 0x54], ebx
je 0x100f5257
cmp byte [0x1029c0c1], 0
jne 0x100f52a5
mov byte [0x1029c0c1], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029c1ac]
xor ebx, dword [0x1029c1a8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029c0c2], al
inc esi
cmp esi, 0xe6
jb 0x100f5213
jmp 0x100f52a2
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1029c1ac]
xor ebx, dword [0x1029c1a8]
xor edx, 0xd28f2c5
xor ebx, 0x1de26cd5
mov ecx, edx
mov eax, ebx
shld ecx, eax, 0xd
shl eax, 0xd
xor edx, ecx
xor ebx, eax
mov eax, ebx
shrd eax, edx, 7
xor al, bl
xor byte [esi + 0x1029c0c2], al
inc esi
cmp esi, 0xe6
jb 0x100f5260
mov ebx, dword [ebp - 0x54]
lea eax, [ebp - 0x4d]
push eax
push 0x1029c1a7
push 0x1029c0c2
lea ecx, [ebp - 0x4c]
call fcn.1004f490
cmp dword [ebp - 0x38], 0xf
lea eax, [ebp - 0x4c]
mov ecx, 0x1029c0a8
cmova eax, dword [ebp - 0x4c]
mov dword [ebp - 0x54], eax
lea eax, [ebp - 0x1c]
push eax
call fcn.10050d50
cmp dword [ebp - 8], 0xf
lea edi, [ebp - 0x1c]
push 0x28
cmova edi, dword [ebp - 0x1c]
call fcn.101169aa
mov esi, eax
add esp, 4
test esi, esi
je 0x100f5303
xorps xmm0, xmm0
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
jmp 0x100f5305
xor esi, esi
push 0
push 0
push ebx
mov ecx, esi
call dword [0x1029fae4]
push 0
push 0
push 0
push 0
push dword [ebp - 0x54]
mov ecx, esi
push edi
call dword [0x1029fae8]
mov ecx, dword [0x1029f24c]
push esi
push edi
mov eax, dword [ecx]
mov eax, dword [eax + 0x14c]
call eax
mov esi, eax
mov ecx, esi
mov edx, dword [esi]
call dword [edx + 0x30]
mov ebx, dword [ebp - 0x5c]
mov ecx, dword [ebp - 8]
mov dword [ebx + 0x230], esi
cmp ecx, 0xf
jbe 0x100f5380
mov edx, dword [ebp - 0x1c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100f5376
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100f5376
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101169da
add esp, 8
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
call fcn.10044c60
lea ecx, [ebp - 0x34]
call fcn.10044c60
mov eax, dword [ebx + 0x2b8]
mov dword [ebx + 0x22c], eax
mov byte [ebx + 0x210], 1
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10116d02
mov esp, ebp
pop ebp
ret