Function at 0x100dc640
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
mov eax, dword [0x103c4120]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x44]
push edi
push eax
mov esi, ecx
mov dword [edi + 0x20], 1
call fcn.100dc3a0
push 0x103d9618
lea eax, [ebp - 0x44]
mov ecx, esi
push eax
call fcn.100d8a30
mov ecx, dword [0x103d9578]
xor ecx, dword [0x103d9698]
mov eax, dword [0x103d957c]
xor eax, dword [0x103d969c]
mov dword [0x103d92f8], ecx
mov ecx, dword [0x103d9598]
xor ecx, dword [0x103d9638]
mov dword [0x103d92fc], eax
mov eax, dword [0x103d959c]
xor eax, dword [0x103d963c]
mov dword [0x103d9318], ecx
mov ecx, dword [0x103d95b8]
xor ecx, dword [0x103d9658]
mov dword [0x103d931c], eax
mov eax, dword [0x103d95bc]
xor eax, dword [0x103d965c]
mov dword [0x103d9338], ecx
mov ecx, dword [0x103d95d8]
xor ecx, dword [0x103d9678]
mov dword [0x103d933c], eax
mov eax, dword [0x103d95dc]
xor eax, dword [0x103d967c]
mov dword [0x103d9358], ecx
mov ecx, dword [0x103d95f8]
xor ecx, dword [0x103d9698]
mov dword [0x103d935c], eax
mov eax, dword [0x103d95fc]
xor eax, dword [0x103d969c]
mov dword [0x103d9378], ecx
mov ecx, dword [0x103d96a0]
xor ecx, dword [0x103d9580]
mov dword [0x103d937c], eax
mov eax, dword [0x103d96a4]
xor eax, dword [0x103d9584]
mov dword [0x103d9300], ecx
mov ecx, dword [0x103d9640]
xor ecx, dword [0x103d95a0]
mov dword [0x103d9304], eax
mov eax, dword [0x103d9644]
xor eax, dword [0x103d95a4]
mov dword [0x103d9320], ecx
mov ecx, dword [0x103d9660]
xor ecx, dword [0x103d95c0]
mov dword [0x103d9324], eax
mov eax, dword [0x103d9664]
xor eax, dword [0x103d95c4]
mov dword [0x103d9340], ecx
mov ecx, dword [0x103d9680]
xor ecx, dword [0x103d95e0]
mov dword [0x103d9344], eax
mov eax, dword [0x103d9684]
xor eax, dword [0x103d95e4]
mov dword [0x103d9360], ecx
mov ecx, dword [0x103d9600]
xor ecx, dword [0x103d96a0]
mov dword [0x103d9364], eax
mov eax, dword [0x103d9604]
xor eax, dword [0x103d96a4]
mov dword [0x103d9380], ecx
mov ecx, dword [0x103d96a8]
xor ecx, dword [0x103d9588]
mov dword [0x103d9384], eax
mov eax, dword [0x103d96ac]
xor eax, dword [0x103d958c]
mov dword [0x103d9308], ecx
mov ecx, dword [0x103d9648]
mov dword [0x103d930c], eax
xor ecx, dword [0x103d95a8]
mov eax, dword [0x103d964c]
xor eax, dword [0x103d95ac]
mov dword [0x103d9328], ecx
mov ecx, dword [0x103d9668]
xor ecx, dword [0x103d95c8]
mov dword [0x103d932c], eax
mov eax, dword [0x103d966c]
xor eax, dword [0x103d95cc]
mov dword [0x103d9348], ecx
mov ecx, dword [0x103d9688]
xor ecx, dword [0x103d95e8]
mov dword [0x103d934c], eax
mov eax, dword [0x103d968c]
xor eax, dword [0x103d95ec]
mov dword [0x103d9368], ecx
mov ecx, dword [0x103d9608]
xor ecx, dword [0x103d96a8]
mov dword [0x103d936c], eax
mov eax, dword [0x103d960c]
xor eax, dword [0x103d96ac]
mov dword [0x103d9388], ecx
mov ecx, dword [0x103d96b0]
xor ecx, dword [0x103d9590]
mov dword [0x103d938c], eax
mov eax, dword [0x103d96b4]
xor eax, dword [0x103d9594]
mov dword [0x103d9310], ecx
mov ecx, dword [0x103d9650]
xor ecx, dword [0x103d95b0]
mov dword [0x103d9314], eax
mov eax, dword [0x103d9654]
xor eax, dword [0x103d95b4]
mov dword [0x103d9330], ecx
mov ecx, dword [0x103d9670]
xor ecx, dword [0x103d95d0]
mov dword [0x103d9334], eax
mov eax, dword [0x103d9674]
xor eax, dword [0x103d95d4]
mov dword [0x103d9350], ecx
mov ecx, dword [0x103d9690]
xor ecx, dword [0x103d95f0]
mov dword [0x103d9354], eax
mov eax, dword [0x103d9694]
xor eax, dword [0x103d95f4]
mov dword [0x103d9370], ecx
mov ecx, dword [0x103d9610]
xor ecx, dword [0x103d96b0]
mov dword [0x103d9374], eax
mov eax, dword [0x103d9614]
xor eax, dword [0x103d96b4]
mov dword [0x103d9390], ecx
xor ecx, ecx
mov dword [0x103d9394], eax
mov eax, dword [ecx + 0x103d92f8]
mov dword [ecx + 0x103d9398], eax
mov eax, dword [ecx + 0x103d92fc]
mov dword [ecx + 0x103d939c], eax
mov eax, dword [ecx + 0x103d92f8]
mov dword [ecx + 0x103d9438], eax
mov eax, dword [ecx + 0x103d92fc]
mov dword [ecx + 0x103d943c], eax
mov eax, dword [ecx + 0x103d9578]
mov dword [ecx + 0x103d94d8], eax
mov eax, dword [ecx + 0x103d957c]
mov dword [ecx + 0x103d94dc], eax
mov eax, dword [ecx + 0x103d9300]
mov dword [ecx + 0x103d93a0], eax
mov eax, dword [ecx + 0x103d9304]
mov dword [ecx + 0x103d93a4], eax
mov eax, dword [ecx + 0x103d9300]
mov dword [ecx + 0x103d9440], eax
mov eax, dword [ecx + 0x103d9304]
mov dword [ecx + 0x103d9444], eax
mov eax, dword [ecx + 0x103d9580]
mov dword [ecx + 0x103d94e0], eax
mov eax, dword [ecx + 0x103d9584]
mov dword [ecx + 0x103d94e4], eax
mov eax, dword [ecx + 0x103d9308]
mov dword [ecx + 0x103d93a8], eax
mov eax, dword [ecx + 0x103d930c]
mov dword [ecx + 0x103d93ac], eax
mov eax, dword [ecx + 0x103d9308]
mov dword [ecx + 0x103d9448], eax
mov eax, dword [ecx + 0x103d930c]
mov dword [ecx + 0x103d944c], eax
mov eax, dword [ecx + 0x103d9588]
mov dword [ecx + 0x103d94e8], eax
mov eax, dword [ecx + 0x103d958c]
mov dword [ecx + 0x103d94ec], eax
mov eax, dword [ecx + 0x103d9310]
mov dword [ecx + 0x103d93b0], eax
mov eax, dword [ecx + 0x103d9314]
mov dword [ecx + 0x103d93b4], eax
mov eax, dword [ecx + 0x103d9310]
mov dword [ecx + 0x103d9450], eax
mov eax, dword [ecx + 0x103d9314]
mov dword [ecx + 0x103d9454], eax
mov eax, dword [ecx + 0x103d9590]
mov dword [ecx + 0x103d94f0], eax
mov eax, dword [ecx + 0x103d9594]
mov dword [ecx + 0x103d94f4], eax
add ecx, 0x20
cmp ecx, 0xa0
jl 0x100dc922
mov edx, 0x103d9450
mov esi, 0x103d94e0
jmp 0x100dca60
xor dword [edx - 0xa0], 0x4c0cbb6f
lea edx, [edx + 0x20]
xor dword [edx - 0xbc], 0x6135f68d
xor dword [edx - 0x20], 0x5cf5b7a4
xor dword [edx - 0x1c], 0x79cc4519
xor dword [edx + 0x80], 0x5cf5b7a4
xor dword [edx + 0x84], 0x79cc4519
mov ecx, dword [esi - 8]
mov eax, dword [esi - 4]
not ecx
mov dword [esi - 8], ecx
not eax
mov dword [esi - 4], eax
mov ecx, dword [esi]
mov eax, dword [esi + 4]
not ecx
not eax
mov dword [esi], ecx
mov dword [esi + 4], eax
add esi, 0x20
cmp esi, 0x103d9580
jl 0x100dca60
lea eax, [edi + 0x70]
mov edx, 0x103d9300
mov esi, eax
lea esp, [esp]
mov edi, 5
mov ecx, dword [edx - 8]
mov dword [esi - 8], ecx
mov ecx, dword [edx - 4]
mov dword [esi - 4], ecx
mov ecx, dword [edx]
mov dword [esi], ecx
mov ecx, dword [edx + 4]
mov dword [esi + 4], ecx
mov ecx, dword [edx + 8]
mov dword [esi + 8], ecx
mov ecx, dword [edx + 0xc]
mov dword [esi + 0xc], ecx
mov ecx, dword [edx + 0x10]
mov dword [esi + 0x10], ecx
mov ecx, dword [edx + 0x14]
add edx, 0x20
mov dword [esi + 0x14], ecx
add esi, 0x20
dec edi
jne 0x100dcad5
cmp edx, 0x103d94e0
jl 0x100dcad0
lea esi, [edi + 2]
jmp 0x100dcb20
mov edx, 5
jmp 0x100dcb30
mov ecx, 2
xor dword [eax], 1
xor dword [eax + 4], 0
add eax, 0x10
dec ecx
jne 0x100dcb35
dec edx
jne 0x100dcb30
dec esi
jne 0x100dcb20
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.101c6a5b
mov esp, ebp
pop ebp
ret 4