Function at 0xd57b00
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x180c
call fcn.0115cb30
mov dword [ebp - 4], 1
mov dword [ebp - 8], 0x95fde750
movzx eax, byte [0x1393bf8]
test eax, eax
jne 0xd57b2d
xor al, al
jmp 0xd5829d
mov dword [ebp - 0x24], 0x18
mov dword [ebp - 0x1040], 0x34
mov ecx, dword [0x14266f0]
mov dword [ebp - 0x103c], ecx
mov edx, dword [0x14266f4]
mov dword [ebp - 0x1038], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1034], eax
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x1030], ecx
push 0x1000
push 0
lea edx, [ebp - 0x102c]
push edx
call fcn.0115ae00
add esp, 0xc
cmp dword [ebp + 0x10], 0
je 0xd57b97
mov eax, dword [ebp + 0x10]
push eax
lea ecx, [ebp - 0x102c]
push ecx
call fcn.0115b460
add esp, 8
mov byte [ebp - 0x1048], 0
mov byte [ebp - 0x1047], 0
mov dword [ebp - 0x1360], 0xe2dbc0
lea edx, [ebp - 0x135c]
push edx
mov eax, dword [ebp - 0x1360]
push eax
call fcn.0108a2d0
add esp, 8
mov dword [ebp - 0x1358], eax
cmp dword [ebp - 0x1358], 0
jne 0xd5800a
mov byte [ebp - 0x1048], 0
lea ecx, [ebp - 0x1354]
push ecx
lea edx, [ebp - 0x135c]
push edx
mov eax, dword [ebp - 0x1360]
push eax
call fcn.0108a350
add esp, 0xc
mov dword [ebp - 0x1358], eax
cmp dword [ebp - 0x1358], 0
jne 0xd57dff
mov dword [ebp - 0x1364], 0
jmp 0xd57c2a
mov ecx, dword [ebp - 0x1364]
add ecx, 1
mov dword [ebp - 0x1364], ecx
cmp dword [ebp - 0x1364], 8
jge 0xd57cad
mov byte [ebp - 0x1365], 0
mov dword [ebp - 0x136c], 0
jmp 0xd57c55
mov edx, dword [ebp - 0x136c]
add edx, 1
mov dword [ebp - 0x136c], edx
cmp dword [ebp - 0x136c], 8
jge 0xd57c8d
lea eax, [ebp - 0x1378]
push eax
call dword [0x1557682]
movzx edx, byte [ebp - 0x1365]
mov eax, dword [ebp - 0x1378]
and eax, 1
mov ecx, dword [ebp - 0x136c]
shl eax, cl
or edx, eax
mov byte [ebp - 0x1365], dl
jmp 0xd57c46
xor ecx, ecx
jne 0xd57c33
xor edx, edx
jne 0xd57c33
mov eax, dword [ebp - 0x1364]
mov cl, byte [ebp - 0x1365]
mov byte [ebp + eax - 0x124c], cl
jmp 0xd57c1b
xor edx, edx
jne 0xd57c0f
mov eax, fcn.01022080
test eax, eax
je 0xd57d35
push 8
call fcn.0115c14d
add esp, 4
mov dword [ebp - 0x17f4], eax
mov ecx, dword [ebp - 0x17f4]
mov dword [ebp - 0x137c], ecx
cmp dword [ebp - 0x137c], 0
je 0xd57d35
mov dword [ebp - 0x1380], 8
lea edx, [ebp - 0x1380]
push edx
mov eax, dword [ebp - 0x137c]
push eax
push 8
lea ecx, [ebp - 0x1350]
push ecx
push 1
call fcn.01022080
add esp, 0x14
mov dword [ebp - 0x1384], eax
cmp dword [ebp - 0x1384], 0
jne 0xd57d35
push 8
mov edx, dword [ebp - 0x137c]
push edx
lea eax, [ebp - 0x1350]
push eax
call fcn.0115b060
add esp, 0xc
xor ecx, ecx
jne 0xd57cb5
mov edx, fcn.01022080
test edx, edx
je 0xd57dbd
push 8
call fcn.0115c14d
add esp, 4
mov dword [ebp - 0x17f8], eax
mov eax, dword [ebp - 0x17f8]
mov dword [ebp - 0x1388], eax
cmp dword [ebp - 0x1388], 0
je 0xd57dbd
mov dword [ebp - 0x138c], 8
lea ecx, [ebp - 0x138c]
push ecx
mov edx, dword [ebp - 0x1388]
push edx
push 8
lea eax, [ebp - 0x124c]
push eax
push 1
call fcn.01022080
add esp, 0x14
mov dword [ebp - 0x1390], eax
cmp dword [ebp - 0x1390], 0
jne 0xd57dbd
push 8
mov ecx, dword [ebp - 0x1388]
push ecx
lea edx, [ebp - 0x124c]
push edx
call fcn.0115b060
add esp, 0xc
xor eax, eax
jne 0xd57d3d
lea ecx, [ebp - 0x1250]
push ecx
lea edx, [ebp - 0x1354]
push edx
lea eax, [ebp - 0x135c]
push eax
mov ecx, dword [ebp - 0x1360]
push ecx
call fcn.0108a3a0
add esp, 0x10
mov dword [ebp - 0x1358], eax
cmp dword [ebp - 0x1358], 0
jne 0xd57dff
mov byte [ebp - 0x1048], 1
xor edx, edx
jne 0xd57bd8
mov byte [ebp - 0x1047], 0
mov dword [ebp - 0x1394], 0
jmp 0xd57e29
mov eax, dword [ebp - 0x1394]
add eax, 1
mov dword [ebp - 0x1394], eax
cmp dword [ebp - 0x1394], 8
jge 0xd57eac
mov byte [ebp - 0x1395], 0
mov dword [ebp - 0x139c], 0
jmp 0xd57e54
mov ecx, dword [ebp - 0x139c]
add ecx, 1
mov dword [ebp - 0x139c], ecx
cmp dword [ebp - 0x139c], 8
jge 0xd57e8c
lea edx, [ebp - 0x13a8]
push edx
call dword [0x1557682]
movzx eax, byte [ebp - 0x1395]
mov edx, dword [ebp - 0x13a8]
and edx, 1
mov ecx, dword [ebp - 0x139c]
shl edx, cl
or eax, edx
mov byte [ebp - 0x1395], al
jmp 0xd57e45
xor eax, eax
jne 0xd57e32
xor ecx, ecx
jne 0xd57e32
mov edx, dword [ebp - 0x1394]
mov al, byte [ebp - 0x1395]
mov byte [ebp + edx - 0x1350], al
jmp 0xd57e1a
xor ecx, ecx
jne 0xd57e0e
mov dword [ebp - 0x1354], 8
lea edx, [ebp - 0x1354]
push edx
lea eax, [ebp - 0x135c]
push eax
mov ecx, dword [ebp - 0x1360]
push ecx
call fcn.0108a430
add esp, 0xc
mov dword [ebp - 0x1358], eax
cmp dword [ebp - 0x1358], 0
jne 0xd57fd0
lea edx, [ebp - 0x114c]
push edx
lea eax, [ebp - 0x14b0]
push eax
lea ecx, [ebp - 0x135c]
push ecx
mov edx, dword [ebp - 0x1360]
push edx
call fcn.0108a480
add esp, 0x10
mov dword [ebp - 0x1358], eax
cmp dword [ebp - 0x1358], 0
jne 0xd57fd0
mov eax, fcn.01022080
test eax, eax
je 0xd57fa5
push 8
call fcn.0115c14d
add esp, 4
mov dword [ebp - 0x17fc], eax
mov ecx, dword [ebp - 0x17fc]
mov dword [ebp - 0x14b4], ecx
cmp dword [ebp - 0x14b4], 0
je 0xd57fa5
mov dword [ebp - 0x14b8], 8
lea edx, [ebp - 0x14b8]
push edx
mov eax, dword [ebp - 0x14b4]
push eax
push 8
lea ecx, [ebp - 0x14ac]
push ecx
push 2
call fcn.01022080
add esp, 0x14
mov dword [ebp - 0x14bc], eax
cmp dword [ebp - 0x14bc], 0
jne 0xd57fa5
push 8
mov edx, dword [ebp - 0x14b4]
push edx
lea eax, [ebp - 0x14ac]
push eax
call fcn.0115b060
add esp, 0xc
xor ecx, ecx
jne 0xd57f25
push 8
lea edx, [ebp - 0x1350]
push edx
lea eax, [ebp - 0x14ac]
push eax
call fcn.0115c5b0
add esp, 0xc
test eax, eax
jne 0xd57fd0
mov byte [ebp - 0x1047], 1
xor ecx, ecx
jne 0xd57e07
movzx edx, byte [ebp - 0x1048]
test edx, edx
je 0xd5800a
movzx eax, byte [ebp - 0x1047]
test eax, eax
je 0xd5800a
lea ecx, [ebp - 0x135c]
push ecx
mov edx, dword [ebp - 0x1360]
push edx
call fcn.0108a500
add esp, 8
mov dword [ebp - 0x1358], eax
xor eax, eax
jne 0xd57b97
movzx ecx, byte [ebp - 0x1048]
test ecx, ecx
je 0xd58028
movzx edx, byte [ebp - 0x1047]
test edx, edx
jne 0xd5802f
mov dword [ebp - 0x28], 0x4b630fe3
mov dword [ebp - 0x16e4], 8
lea eax, [ebp - 0x16e4]
push eax
lea ecx, [ebp - 0x17ec]
push ecx
push 8
lea edx, [ebp - 0x1148]
push edx
push 2
call fcn.01022080
add esp, 0x14
mov dword [ebp - 0x16e4], 8
lea eax, [ebp - 0x16e4]
push eax
lea ecx, [ebp - 0x16dc]
push ecx
push 8
lea edx, [ebp - 0x124c]
push edx
push 2
call fcn.01022080
add esp, 0x14
mov eax, dword [ebp - 0x17ec]
xor eax, dword [ebp - 0x16dc]
mov dword [ebp - 0x15c4], eax
mov ecx, dword [ebp - 0x17e8]
xor ecx, dword [ebp - 0x16d8]
mov dword [ebp - 0x15c0], ecx
xor edx, edx
jne 0xd58085
push 0x104
push 0
lea eax, [ebp - 0x17f0]
push eax
call fcn.0115ae00
add esp, 0xc
push 0x104
push 0
lea ecx, [ebp - 0x16e0]
push ecx
call fcn.0115ae00
add esp, 0xc
xor edx, edx
jne 0xd5802f
mov dword [ebp - 0x15cc], 0x101f
mov eax, dword [ebp - 0x15cc]
push eax
call fcn.0115c14d
add esp, 4
mov dword [ebp - 0x1800], eax
mov ecx, dword [ebp - 0x1800]
mov dword [ebp - 0x14c0], ecx
mov edx, dword [ebp - 0x24]
add edx, 0xb
mov dword [ebp - 0x15d4], edx
mov eax, dword [ebp - 0x15d4]
push eax
call fcn.0115c14d
add esp, 4
mov dword [ebp - 0x1804], eax
mov ecx, dword [ebp - 0x1804]
mov dword [ebp - 0x15d0], ecx
lea edx, [ebp - 0x15cc]
push edx
mov eax, dword [ebp - 0x14c0]
push eax
push 0x1014
lea ecx, [ebp - 0x1040]
push ecx
push 8
lea edx, [ebp - 0x15c4]
push edx
push 1
call fcn.0108a570
add esp, 0x1c
lea eax, [ebp - 0x15d4]
push eax
mov ecx, dword [ebp - 0x15d0]
push ecx
mov edx, dword [ebp - 0x15cc]
push edx
mov eax, dword [ebp - 0x14c0]
push eax
lea ecx, [ebp - 0x135c]
push ecx
mov edx, dword [ebp - 0x1360]
push edx
call fcn.0108a540
add esp, 0x18
mov dword [ebp - 0x1358], eax
lea eax, [ebp - 0x20]
test eax, eax
je 0xd581d4
lea ecx, [ebp - 0x24]
push ecx
lea edx, [ebp - 0x20]
push edx
mov eax, dword [ebp - 0x15d4]
push eax
mov ecx, dword [ebp - 0x15d0]
push ecx
push 8
lea edx, [ebp - 0x15c4]
push edx
push 2
call fcn.0108a570
add esp, 0x1c
mov dword [ebp - 0x1358], eax
mov eax, dword [ebp - 0x14c0]
mov dword [ebp - 0x1808], eax
mov ecx, dword [ebp - 0x1808]
push ecx
call fcn.0115be08
add esp, 4
mov edx, dword [ebp - 0x15d0]
mov dword [ebp - 0x180c], edx
mov eax, dword [ebp - 0x180c]
push eax
call fcn.0115be08
add esp, 4
xor ecx, ecx
jne 0xd5802f
cmp dword [ebp - 0x1358], 0
je 0xd58222
mov dword [ebp - 0x28], 0x6ddb58ec
lea edx, [ebp - 0x135c]
push edx
mov eax, dword [ebp - 0x1360]
push eax
call fcn.0108a310
add esp, 8
mov dword [ebp - 0x1358], eax
push 0x31c
push 0
lea ecx, [ebp - 0x1360]
push ecx
call fcn.0115ae00
add esp, 0xc
xor edx, edx
jne 0xd58222
mov dword [ebp - 0x28], 0xb502cbf7
xor eax, eax
jne 0xd57b97
cmp dword [ebp - 0x28], 0xb502cbf7
je 0xd58278
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x28], ecx
jmp 0xd58284
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x28], eax
xor ecx, ecx
jne 0xd57b2d
xor edx, edx
jne 0xd57b2d
xor eax, eax
cmp dword [ebp - 4], 0
sete al
mov esp, ebp
pop ebp
ret