Function at 0x100bd080
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ce2e2
mov eax, dword fs:[0]
push eax
sub esp, 0x18c
mov eax, dword [0x100dd00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ecx, 0xf
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], ecx
mov byte [ebp - 0x74], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], ecx
mov byte [ebp - 0x44], 0
mov byte [ebp - 4], 1
mov ebx, dword [0x100f6ec8]
mov esi, ebx
mov eax, dword [0x100f6ecc]
mov dword [ebp - 0x164], eax
cmp esi, eax
je 0x100bd10c
nop
cmp dword [esi], 0
je 0x100bd10c
add esi, 4
cmp esi, eax
jne 0x100bd100
cmp ebx, eax
je 0x100bd11c
cmp dword [ebx], 1
je 0x100bd11c
add ebx, 4
cmp ebx, eax
jne 0x100bd110
cmp esi, eax
jne 0x100bd128
cmp ebx, eax
je 0x100bdab3
cmp byte [0x101058f4], 0
je 0x100bdab3
mov ecx, dword [0x100f05dc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x138]
call eax
movss xmm0, dword [0x10105900]
movss xmm1, dword [0x10105904]
movss xmm2, dword [0x10105908]
subss xmm0, dword [eax]
subss xmm1, dword [eax + 4]
subss xmm2, dword [eax + 8]
mulss xmm0, xmm0
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm0, xmm1
addss xmm0, xmm2
call fcn.10018960
movss xmm1, dword [0x10105914]
mulss xmm1, dword [0x100d297c]
mulss xmm0, xmm0
mulss xmm1, dword [0x10105914]
divss xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll___libm_sse2_expf
mov ecx, dword [0x1010284c]
movaps xmm5, xmm0
mov eax, dword [0x100f05dc]
add ecx, 0xffffffb4
mulss xmm5, dword [0x1010590c]
xor ecx, 0xe6e0e742
mov eax, dword [ecx + eax]
test eax, eax
jle 0x100bd203
movaps xmm2, xmm5
movd xmm0, eax
mulss xmm2, dword [0x100d2710]
movaps xmm1, xmm5
cvtdq2ps xmm0, xmm0
subss xmm1, xmm2
mulss xmm1, dword [0x100d2710]
comiss xmm1, xmm0
jbe 0x100bd200
addss xmm0, xmm0
movaps xmm2, xmm5
subss xmm2, xmm0
movaps xmm5, xmm2
movss xmm3, dword [0x100d295c]
lea edx, [ebp - 0x134]
movss xmm2, dword [0x100d2950]
andps xmm3, xmm5
movaps xmm0, xmm5
movss xmm4, dword [0x100d2748]
xorps xmm0, xmm3
mov dword [ebp - 0x134], 0x66322e25
cmpltss xmm0, xmm2
mov byte [ebp - 0x130], 0
movaps xmm1, xmm5
xor eax, eax
andps xmm2, xmm0
orps xmm2, xmm3
addss xmm1, xmm2
subss xmm1, xmm2
movaps xmm0, xmm1
subss xmm0, xmm5
cmpnless xmm0, xmm3
andps xmm0, xmm4
subss xmm1, xmm0
movss xmm0, dword [0x101058fc]
cvttss2si ecx, xmm1
test ecx, ecx
cmovg eax, ecx
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x12c], eax
mov eax, dword [0x1010265c]
subss xmm0, dword [eax + 0x10]
lea eax, [ebp - 0x14]
push eax
movss dword [ebp - 0x14], xmm0
call fcn.100bebd0
add esp, 4
lea ecx, [ebp - 0x74]
push eax
call fcn.10034d30
mov edx, dword [ebp - 0x48]
cmp edx, 0x10
jb 0x100bd2da
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd2d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd2d0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
lea eax, [ebp - 0x12c]
mov word [ebp - 0x144], 0x6925
push eax
lea edx, [ebp - 0x144]
mov byte [ebp - 0x142], 0
lea ecx, [ebp - 0x5c]
call fcn.10098940
add esp, 4
lea ecx, [ebp - 0x44]
push eax
call fcn.10034d30
mov edx, dword [ebp - 0x48]
cmp edx, 0x10
jb 0x100bd341
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd337
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd337
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
mov edx, dword [0x101027f8]
mov eax, dword [0x100f05dc]
add edx, 0xffffffc9
mov ecx, dword [ebp - 0x12c]
xor edx, 0xe6e0e72d
mov edi, dword [0x10101edc]
cmp ecx, dword [edx + eax]
lea edx, [ebp - 0x16c]
mov ecx, 0x10105900
cmovl edi, dword [0x10101ed8]
mov dword [ebp - 0x144], edi
call fcn.100b1460
cmp dword [0x10105938], 0x10
mov edx, 0x10105924
mov byte [ebp - 0x145], al
cmovae edx, dword [0x10105924]
mov ecx, edx
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
lea eax, [ecx + 1]
mov dword [ebp - 0x134], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100bd3c0
sub ecx, dword [ebp - 0x134]
push ecx
push edx
lea ecx, [ebp - 0x2c]
call fcn.10021400
xorps xmm1, xmm1
mov byte [ebp - 4], 2
cmp esi, dword [ebp - 0x164]
je 0x100bd9b2
mov ecx, 1
mov dword [ebp - 0x160], 0
cmp dword [ebp - 0x1c], ecx
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x150], 0
cmovb ecx, dword [ebp - 0x1c]
cmp dword [ebp - 0x18], 0x10
push ecx
cmovae eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x160]
push eax
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
call fcn.10021400
mov byte [ebp - 4], 3
xor eax, eax
mov dword [ebp - 0x140], 0x828fdc8a
mov dword [ebp - 0x13c], 0x9e818a8f
mov word [ebp - 0x138], 0xdcc9
mov byte [ebp - 0x136], 0xaf
nop dword [eax]
xor byte [ebp + eax - 0x140], 0xaf
inc eax
cmp eax, 0xb
jb 0x100bd460
push 0x98
lea eax, [ebp - 0x128]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 8
lea ecx, [ebp - 0x128]
call fcn.10024b20
lea eax, [ebp - 0x190]
mov byte [ebp - 4], 4
mov dword [ebp - 0x198], eax
mov esi, eax
mov dword [ebp - 0x194], 2
mov edi, 2
mov ecx, esi
call fcn.10018fc0
add esi, 0xc
sub edi, 1
jne 0x100bd4b0
push dword [ebp - 0x194]
lea eax, [ebp - 0x160]
mov dword [ebp - 0x174], 0x10042010
push dword [ebp - 0x198]
mov dword [ebp - 0x178], eax
lea edx, [ebp - 0x140]
movq xmm0, qword [ebp - 0x178]
lea eax, [ebp - 0x14]
movq qword [ebp - 0x190], xmm0
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], 0x10042190
movq xmm0, qword [ebp - 0x178]
mov dword [ebp - 0x188], fcn.100251b0
movq qword [ebp - 0x184], xmm0
mov dword [ebp - 0x17c], 0x10042320
call fcn.10022de0
add esp, 8
lea eax, [ebp - 0x5c]
lea ecx, [ebp - 0x124]
push eax
call fcn.10024d80
mov eax, dword [ebp - 0x128]
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0x128], 0x100d0614
mov eax, dword [ebp - 0x128]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0x12c], eax
lea ecx, [ebp - 0x124]
call fcn.10020fe0
lea ecx, [ebp - 0x120]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xd8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x14c]
mov edi, dword [ebp - 0x144]
cmp edx, 0x10
jb 0x100bd5db
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd5d1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd5d1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
lea eax, [ebp - 0x12c]
mov dword [ebp - 0x150], 0
push eax
lea edx, [ebp - 0x144]
mov dword [ebp - 0x14c], 0xf
lea ecx, [ebp - 0x8c]
mov byte [ebp - 0x160], 0
mov word [ebp - 0x144], 0x6925
mov byte [ebp - 0x142], 0
call fcn.10098940
add esp, 4
mov byte [ebp - 4], 7
movss xmm0, dword [0x100d2810]
comiss xmm0, dword [ebp - 0x14]
mov dword [ebp - 0x134], 0xff0aac87
jbe 0x100bd647
mov dword [ebp - 0x134], 0xff6ec8c8
movss xmm0, dword [0x100d27f8]
comiss xmm0, dword [ebp - 0x14]
mov esi, dword [ebp - 0x134]
jbe 0x100bd66b
mov dword [ebp - 0x134], 0xff1120c0
mov esi, dword [ebp - 0x134]
cmp byte [0x101058f4], 0
je 0x100bd929
cmp byte [0x101058d1], 0
jne 0x100bd929
cmp byte [0x101058d2], 0
jne 0x100bd929
movss xmm0, dword [ebp - 0x14]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x100bd6d1
push 0
lea eax, [ebp - 0x5c]
push eax
push ecx
mov eax, esp
mov ecx, 0x10107138
push 0xb
push 6
mov dword [eax], 0x7d000000
call fcn.100b26d0
push 0
lea eax, [ebp - 0x5c]
mov ecx, 0x10107138
push eax
push esi
push 0xa
push 5
call fcn.100b26d0
mov ecx, dword [0x101027f8]
mov eax, dword [0x100f05dc]
add ecx, 0xffffffc9
mov edx, dword [ebp - 0x12c]
xor ecx, 0xe6e0e72d
cmp dword [ecx + eax], edx
jg 0x100bd7fa
lea edx, [ebp - 0x13c]
mov dword [ebp - 0x13c], 0x41544146
lea ecx, [ebp - 0x160]
mov word [ebp - 0x138], 0x4c
call fcn.100231b0
push 0
push eax
push ecx
mov eax, esp
mov byte [ebp - 4], 8
push 0x1f
push 6
mov ecx, 0x10107138
mov dword [eax], 0x7d000000
call fcn.100b26d0
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x100bd776
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd76c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd76c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
lea edx, [ebp - 0x13c]
mov dword [ebp - 0x13c], 0x41544146
lea ecx, [ebp - 0x160]
mov word [ebp - 0x138], 0x4c
call fcn.100231b0
push 0
push eax
push ecx
mov eax, esp
mov byte [ebp - 4], 9
push 0x1e
push 5
mov ecx, 0x10107138
mov dword [eax], 0xff1120c0
call fcn.100b26d0
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x100bd929
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd91f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd91f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
cmp edx, 1
jle 0x100bd929
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x13c], 0x6925202d
push eax
lea edx, [ebp - 0x13c]
mov word [ebp - 0x138], 0x5048
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x136], 0
call fcn.100417b0
add esp, 4
push 0
push eax
push ecx
mov eax, esp
mov byte [ebp - 4], 0xa
push 0x1f
push 5
mov ecx, 0x10107138
mov dword [eax], 0x7d000000
call fcn.100b26d0
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x100bd896
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd88c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd88c
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x13c], 0x6925202d
push eax
lea edx, [ebp - 0x13c]
mov word [ebp - 0x138], 0x5048
lea ecx, [ebp - 0x160]
mov byte [ebp - 0x136], 0
call fcn.100417b0
add esp, 4
push 0
push eax
push ecx
mov eax, esp
mov byte [ebp - 4], 0xb
push 0x1e
push 6
mov ecx, 0x10107138
mov dword [eax], 0xff98ffff
call fcn.100b26d0
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x14c]
cmp edx, 0x10
jb 0x100bd929
mov ecx, dword [ebp - 0x160]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd91f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd91f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x78]
cmp edx, 0x10
jb 0x100bd960
mov ecx, dword [ebp - 0x8c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd956
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bd99f
push edx
push ecx
call fcn.100c49e0
add esp, 8
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x48]
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
cmp edx, 0x10
jb 0x100bd9af
mov ecx, dword [ebp - 0x5c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bd9a5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bd9a5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
xorps xmm1, xmm1
cmp ebx, dword [ebp - 0x164]
je 0x100bda50
cmp byte [ebp - 0x145], 0
je 0x100bda50
movss xmm0, dword [ebp - 0x14]
comiss xmm0, xmm1
movss xmm0, dword [ebp - 0x168]
movss xmm1, dword [ebp - 0x16c]
jbe 0x100bda15
push 2
lea eax, [ebp - 0x74]
mov ecx, 0x101070f0
push eax
push dword [0x10101ed8]
cvttss2si eax, xmm0
push eax
cvttss2si eax, xmm1
push eax
call fcn.100b26d0
movss xmm0, dword [ebp - 0x168]
movss xmm1, dword [ebp - 0x16c]
mov ecx, dword [0x101027ec]
mov eax, dword [0x100f05dc]
add ecx, 0xffffffcc
xor ecx, 0xe6e0e72a
cmp dword [ecx + eax], 0
jne 0x100bda50
push 2
lea eax, [ebp - 0x44]
mov ecx, 0x101070f0
push eax
cvttss2si eax, xmm0
push edi
add eax, dword [0x101070f8]
push eax
cvttss2si eax, xmm1
push eax
call fcn.100b26d0
mov edx, dword [ebp - 0x18]
cmp edx, 0x10
jb 0x100bda80
mov ecx, dword [ebp - 0x2c]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bda76
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bdaea
push edx
push ecx
call fcn.100c49e0
add esp, 8
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x100bdab0
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100bdaa6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100bdaea
push edx
push ecx
call fcn.100c49e0
add esp, 8
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp ecx, 0x10
jb 0x100bdafa
lea edx, [ecx + 1]
mov ecx, dword [ebp - 0x74]
mov eax, ecx
cmp edx, 0x1000
jb 0x100bdaf0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bdaf0
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100c49e0
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100c4565
mov esp, ebp
pop ebp
ret