Function at 0x100b5780
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101aaab0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xa8
mov eax, dword [0x10242040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x98], ecx
lea eax, [ebx + 8]
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x90]
call fcn.10018220
mov edx, dword [ebp - 0x7c]
lea edi, [ebp - 0x90]
mov ecx, dword [ebp - 0x90]
cmp edx, 0xf
cmova edi, ecx
mov esi, edi
lea eax, [esi + 1]
mov dword [ebp - 0x94], eax
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x100b5800
sub esi, dword [ebp - 0x94]
lea eax, [esi + 1]
mov esi, 0x4fa38bcd
mov dword [ebp - 0x94], eax
test eax, eax
je 0x100b5cfb
mov edx, eax
movsx eax, byte [edi]
lea edi, [edi + 1]
xor eax, esi
imul esi, eax, 0xf1546419
sub edx, 1
jne 0x100b5825
mov edx, dword [ebp - 0x7c]
cmp esi, 0x6e8d5702
ja 0x100b59e0
je 0x100b59a8
cmp esi, 0x41c21606
ja 0x100b598c
je 0x100b5b01
cmp esi, 0x2b2123ec
ja 0x100b5948
je 0x100b5910
cmp esi, 0xfdc3d83
je 0x100b58d8
cmp esi, 0x1e54485f
jne 0x100b5cfb
cmp edx, 0xf
jbe 0x100b58b3
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b58a9
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov dword [ebp - 0xa8], 8
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0xa4], 0x27
lea eax, [ebp - 0xa0]
jmp 0x100b5bb7
cmp edx, 0xf
jbe 0x100b5906
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b58fc
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov edx, 9
jmp 0x100b5cc3
cmp edx, 0xf
jbe 0x100b593e
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5934
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov edx, 2
jmp 0x100b5cc3
cmp esi, 0x32db11da
jne 0x100b5cfb
cmp edx, 0xf
jbe 0x100b5982
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5978
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov edx, 0x24
jmp 0x100b5cc3
cmp esi, 0x50d12844
je 0x100b5b69
cmp esi, 0x5a25f87c
je 0x100b59fa
cmp esi, 0x6c5a276a
jmp 0x100b59f4
cmp edx, 0xf
jbe 0x100b59d6
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b59cc
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov edx, 0x1c
jmp 0x100b5cc3
cmp esi, 0x7faa654f
ja 0x100b5a80
je 0x100b5a48
cmp esi, 0x79b1d5f4
jne 0x100b5cfb
cmp edx, 0xf
jbe 0x100b5a28
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5a1e
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov dword [ebp - 0x38], 7
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x10
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x30], 0x3c
jmp 0x100b5bb7
cmp edx, 0xf
jbe 0x100b5a76
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5a6c
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov edx, 0xe
jmp 0x100b5cc3
cmp esi, 0xa85007a7
ja 0x100b5b51
je 0x100b5b01
cmp esi, 0x8f113116
je 0x100b5885
cmp esi, 0x9cecce3e
je 0x100b5aae
cmp esi, 0xa3d16543
jne 0x100b5cfb
cmp edx, 0xf
jbe 0x100b5adc
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5ad2
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov dword [ebp - 0xa0], 1
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x9c], 0x40
lea eax, [ebp - 0x98]
jmp 0x100b5bb7
cmp edx, 0xf
jbe 0x100b5b2f
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5b25
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov dword [ebp - 0xb0], 0x1e
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0xac], 0x3f
lea eax, [ebp - 0xa8]
jmp 0x100b5bb7
cmp esi, 0xbd2c91ba
je 0x100b5c94
cmp esi, 0xf906724c
jne 0x100b5cfb
cmp edx, 0xf
jbe 0x100b5b97
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5b8d
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov dword [ebp - 0xb8], 0x26
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0xb4], 0xb
lea eax, [ebp - 0xb0]
push ecx
push eax
push ecx
lea ecx, [ebp - 0x20]
mov byte [ebp - 0x90], 0
mov dword [ebp - 0x7c], 0xf
mov dword [ebp - 0x80], 0
call fcn.1004c700
mov eax, dword [0x10337d84]
mov edi, dword [ebp - 0x20]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x94], eax
cmp esi, eax
je 0x100b5c16
mov ecx, dword [ebp - 0x1c]
movzx edx, word [esi]
mov eax, edi
cmp eax, ecx
je 0x100b5c0b
movsx edx, dx
nop dword [eax]
cmp edx, dword [eax]
je 0x100b5c4d
add eax, 4
cmp eax, ecx
jne 0x100b5c00
add esi, 2
cmp esi, dword [ebp - 0x94]
jne 0x100b5bf1
test edi, edi
je 0x100b5d40
mov eax, dword [ebp - 0x18]
sub eax, edi
sar eax, 2
lea ecx, [eax*4]
mov eax, edi
cmp ecx, 0x1000
jb 0x100b5c85
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100b5c85
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
test edi, edi
je 0x100b5eb1
mov eax, dword [ebp - 0x18]
sub eax, edi
sar eax, 2
lea ecx, [eax*4]
mov eax, edi
cmp ecx, 0x1000
jb 0x100b5c7e
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5c47
push ecx
push edi
jmp 0x100b5ea9
push ecx
push edi
call fcn.1014bdac
add esp, 8
jmp 0x100b5d40
cmp edx, 0xf
jbe 0x100b5cbe
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5cb4
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5d1b
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov edx, 0x28
mov eax, dword [0x10337d84]
mov byte [ebp - 0x90], 0
mov dword [ebp - 0x7c], 0xf
mov dword [ebp - 0x80], 0
mov ecx, dword [eax]
mov esi, dword [eax + 4]
cmp ecx, esi
je 0x100b5d40
movzx eax, word [ecx]
cwde
cmp eax, edx
je 0x100b5eb1
add ecx, 2
cmp ecx, esi
jne 0x100b5ce6
jmp 0x100b5d40
cmp edx, 0xf
jbe 0x100b5d2b
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100b5d21
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100b5d21
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.1014bdac
add esp, 8
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
xorps xmm0, xmm0
mov dword [ebp - 0x1c], 2
movups xmmword [ebp - 0x2c], xmm0
mov eax, 0x203b
mov dword [ebp - 0x18], 0xf
mov word [ebp - 0x2c], ax
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x44], 0x20797562
mov byte [ebp - 0x40], 0
lea eax, [ebx + 8]
mov byte [ebp - 4], 2
push eax
lea edx, [ebp - 0x44]
lea ecx, [ebp - 0x5c]
call fcn.100204f0
add esp, 4
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 3
push ecx
push eax
push dword [ebp - 0x98]
lea ecx, [ebp - 0x74]
call fcn.1004ca50
mov ecx, dword [ebp - 0x98]
lea eax, [ebp - 0x74]
push eax
mov byte [ebp - 4], 4
call fcn.1001edf0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0xf
jbe 0x100b5df3
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b5de9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5ea1
push ecx
push edx
call fcn.1014bdac
add esp, 8
mov ecx, dword [ebp - 0x48]
cmp ecx, 0xf
jbe 0x100b5e27
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b5e1d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5ea1
push ecx
push edx
call fcn.1014bdac
add esp, 8
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
cmp ecx, 0xf
jbe 0x100b5e69
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b5e5f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100b5ea1
push ecx
push edx
call fcn.1014bdac
add esp, 8
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp ecx, 0xf
jbe 0x100b5eb1
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b5ea7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100b5ea7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1014bdac
add esp, 8
mov ecx, dword [ebx + 0x1c]
cmp ecx, 0xf
jbe 0x100b5ee7
mov edx, dword [ebx + 8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100b5edd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100b5edd
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1014bdac
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1014ba4f
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret