Function at 0x100bb030
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
mov eax, dword [0x1015a368]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x10217ba0], 0
push ebx
push esi
push edi
mov dword [ebp - 0x54], ecx
jne 0x100bc220
lea eax, [ebp - 0x4c]
mov ecx, 0x1020c4d0
push eax
call fcn.100491d0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020c630], 0
mov dword [ebp - 0x50], eax
je 0x100bb0da
cmp byte [0x1020c631], 0
jne 0x100bb128
mov byte [0x1020c631], 1
xor esi, esi
nop
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020c734]
xor ebx, dword [0x1020c730]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c632]
xor cl, bl
mov byte [esi + 0x1020c632], cl
inc esi
cmp esi, 0xfa
jb 0x100bb090
jmp 0x100bb128
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020c734]
xor ebx, dword [0x1020c730]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c632]
xor cl, bl
mov byte [esi + 0x1020c632], cl
inc esi
cmp esi, 0xfa
jb 0x100bb0e0
push 0xf9
push 0x1020c632
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020c580
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048090
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x214], esi
cmp edx, 0x10
jb 0x100bb201
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb1f7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb27b
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bb243
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb239
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb27b
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bb28b
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb281
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bb281
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1020cc70
push eax
call fcn.100491d0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020ca48], 0
mov dword [ebp - 0x50], eax
je 0x100bb310
cmp byte [0x1020ca49], 0
jne 0x100bb35a
mov byte [0x1020ca49], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020cc1c]
xor ebx, dword [0x1020cc18]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020ca4a]
xor cl, bl
mov byte [esi + 0x1020ca4a], cl
inc esi
cmp esi, 0x1ca
jb 0x100bb2c6
jmp 0x100bb35a
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020cc1c]
xor ebx, dword [0x1020cc18]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020ca4a]
xor cl, bl
mov byte [esi + 0x1020ca4a], cl
inc esi
cmp esi, 0x1ca
jb 0x100bb312
push 0x1c9
push 0x1020ca4a
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020c558
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048750
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x218], esi
cmp edx, 0x10
jb 0x100bb433
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb429
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb4ad
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bb475
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb46b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb4ad
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bb4bd
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb4b3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bb4b3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1020c528
push eax
call fcn.100489f0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020d100], 0
mov dword [ebp - 0x50], eax
je 0x100bb54a
cmp byte [0x1020d101], 0
jne 0x100bb598
mov byte [0x1020d101], 1
xor esi, esi
nop dword [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020d294]
xor ebx, dword [0x1020d290]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020d102]
xor cl, bl
mov byte [esi + 0x1020d102], cl
inc esi
cmp esi, 0x18b
jb 0x100bb500
jmp 0x100bb598
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020d294]
xor ebx, dword [0x1020d290]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020d102]
xor cl, bl
mov byte [esi + 0x1020d102], cl
inc esi
cmp esi, 0x18b
jb 0x100bb550
push 0x18a
push 0x1020d102
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020c540
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048090
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x21c], esi
cmp edx, 0x10
jb 0x100bb671
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb667
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb6eb
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bb6b3
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb6a9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb6eb
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bb6fb
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb6f1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bb6f1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1020c4b0
push eax
call fcn.100491d0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020cdf0], 0
mov dword [ebp - 0x50], eax
je 0x100bb780
cmp byte [0x1020cdf1], 0
jne 0x100bb7ca
mov byte [0x1020cdf1], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020d0cc]
xor ebx, dword [0x1020d0c8]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020cdf2]
xor cl, bl
mov byte [esi + 0x1020cdf2], cl
inc esi
cmp esi, 0x2d5
jb 0x100bb736
jmp 0x100bb7ca
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020d0cc]
xor ebx, dword [0x1020d0c8]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020cdf2]
xor cl, bl
mov byte [esi + 0x1020cdf2], cl
inc esi
cmp esi, 0x2d5
jb 0x100bb782
push 0x2d4
push 0x1020cdf2
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020d0d0
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048e50
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x220], esi
cmp edx, 0x10
jb 0x100bb8a3
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb899
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb91d
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bb8e5
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb8db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bb91d
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bb92d
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bb923
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bb923
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1020c5f8
push eax
call fcn.100491d0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020c350], 0
mov dword [ebp - 0x50], eax
je 0x100bb9ba
cmp byte [0x1020c351], 0
jne 0x100bba08
mov byte [0x1020c351], 1
xor esi, esi
nop dword [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020c4ac]
xor ebx, dword [0x1020c4a8]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c352]
xor cl, bl
mov byte [esi + 0x1020c352], cl
inc esi
cmp esi, 0x14f
jb 0x100bb970
jmp 0x100bba08
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020c4ac]
xor ebx, dword [0x1020c4a8]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c352]
xor cl, bl
mov byte [esi + 0x1020c352], cl
inc esi
cmp esi, 0x14f
jb 0x100bb9c0
push 0x14e
push 0x1020c352
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020c618
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048090
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x224], esi
cmp edx, 0x10
jb 0x100bbae1
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbad7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bbb5b
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bbb23
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbb19
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bbb5b
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bbb6b
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbb61
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bbb61
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1020cc38
push eax
call fcn.100491d0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020c800], 0
mov dword [ebp - 0x50], eax
je 0x100bbbf0
cmp byte [0x1020c801], 0
jne 0x100bbc3a
mov byte [0x1020c801], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020c93c]
xor ebx, dword [0x1020c938]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c802]
xor cl, bl
mov byte [esi + 0x1020c802], cl
inc esi
cmp esi, 0x130
jb 0x100bbba6
jmp 0x100bbc3a
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020c93c]
xor ebx, dword [0x1020c938]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c802]
xor cl, bl
mov byte [esi + 0x1020c802], cl
inc esi
cmp esi, 0x130
jb 0x100bbbf2
push 0x12f
push 0x1020c802
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020cdd8
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048750
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x228], esi
cmp edx, 0x10
jb 0x100bbd13
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbd09
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bbd8d
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bbd55
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbd4b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bbd8d
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bbd9d
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbd93
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bbd93
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1020c4f0
push eax
call fcn.100491d0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020cca8], 0
mov dword [ebp - 0x50], eax
je 0x100bbe2a
cmp byte [0x1020cca9], 0
jne 0x100bbe78
mov byte [0x1020cca9], 1
xor esi, esi
nop dword [eax + eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020cdbc]
xor ebx, dword [0x1020cdb8]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020ccaa]
xor cl, bl
mov byte [esi + 0x1020ccaa], cl
inc esi
cmp esi, 0x10c
jb 0x100bbde0
jmp 0x100bbe78
xor esi, esi
nop dword [eax]
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020cdbc]
xor ebx, dword [0x1020cdb8]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020ccaa]
xor cl, bl
mov byte [esi + 0x1020ccaa], cl
inc esi
cmp esi, 0x10c
jb 0x100bbe30
push 0x10b
push 0x1020ccaa
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020cc90
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048e50
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 eax, dword [ebp - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [eax + 0x2b0], esi
cmp edx, 0x10
jb 0x100bbf51
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbf47
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bbfcb
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bbf93
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbf89
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bbfcb
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bbfdb
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bbfd1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bbfd1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
lea eax, [ebp - 0x4c]
mov ecx, 0x1020c7c0
push eax
call fcn.100491d0
cmp dword [ebp - 0x38], 0x10
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
cmp byte [0x1020c940], 0
mov dword [ebp - 0x50], eax
je 0x100bc060
cmp byte [0x1020c941], 0
jne 0x100bc0aa
mov byte [0x1020c941], 1
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020ca2c]
xor ebx, dword [0x1020ca28]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c942]
xor cl, bl
mov byte [esi + 0x1020c942], cl
inc esi
cmp esi, 0xe6
jb 0x100bc016
jmp 0x100bc0aa
xor esi, esi
xor edx, edx
mov ebx, esi
xor edx, dword [0x1020ca2c]
xor ebx, dword [0x1020ca28]
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 ecx, ebx
shrd ecx, edx, 7
xor cl, byte [esi + 0x1020c942]
xor cl, bl
mov byte [esi + 0x1020c942], cl
inc esi
cmp esi, 0xe6
jb 0x100bc062
push 0xe5
push 0x1020c942
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
call fcn.10045350
cmp dword [ebp - 8], 0x10
lea eax, [ebp - 0x34]
lea ebx, [ebp - 0x1c]
mov ecx, 0x1020d0e8
cmovae ebx, dword [ebp - 0x1c]
push eax
call fcn.10048750
cmp dword [ebp - 0x20], 0x10
lea edi, [ebp - 0x34]
push 0x28
cmovae edi, dword [ebp - 0x34]
call fcn.100d7c2b
mov esi, eax
add esp, 4
xorps xmm0, xmm0
mov ecx, esi
push dword [ebp - 0x50]
movups xmmword [esi], xmm0
movups xmmword [esi + 0x10], xmm0
movq qword [esi + 0x20], xmm0
call dword [0x1020e418]
push 0
push 0
push 0
push ebx
push edi
mov ecx, esi
call dword [0x1020e428]
mov ecx, dword [0x1020e308]
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 - 0x54]
mov edx, dword [ebp - 0x20]
mov dword [ebx + 0x230], esi
cmp edx, 0x10
jb 0x100bc183
mov ecx, dword [ebp - 0x34]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bc179
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bc1fd
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 8]
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], 0xf
mov byte [ebp - 0x34], 0
cmp edx, 0x10
jb 0x100bc1c5
mov ecx, dword [ebp - 0x1c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bc1bb
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bc1fd
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0xc], 0
mov dword [ebp - 8], 0xf
mov byte [ebp - 0x1c], 0
cmp edx, 0x10
jb 0x100bc20d
mov ecx, dword [ebp - 0x4c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bc203
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bc203
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100d7f7a
add esp, 8
mov eax, dword [ebx + 0x2b0]
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.100d7a38
mov esp, ebp
pop ebp
ret