Function at 0x41fc38
Capabilities:
Encode data using xor

Disassembly:
inc eax
push ebp
inc ecx
push esp
inc ecx
push ebp
inc ecx
push esi
inc ecx
push edi
dec eax
sub esp, 0x1f0
dec eax
lea ebp, [esp + 0x20]
dec eax
mov dword [ebp + 0x208], ebx
dec eax
mov dword [ebp + 0x210], esi
dec eax
mov dword [ebp + 0x218], edi
dec eax
mov eax, dword [0x149e3e]
dec eax
xor eax, ebp
dec eax
mov dword [ebp + 0x1c0], eax
mov al, byte [ecx + 0x18]
mov edi, 0xfffffff
inc esp
mov esi, dword [ecx + 8]
dec esp
mov esp, ecx
inc esp
mov ebp, dword [ecx + 0x1c]
inc esp
and esi, edi
mov edx, dword [ecx + 0x10]
inc esp
and ebp, edi
dec eax
mov ebx, dword [ecx]
and edx, edi
mov byte [ebp], al
dec eax
mov dword [ebp + 0x68], ecx
dec eax
lea ecx, [0xfffe0b5d]
inc ecx
mov eax, ebp
dec eax
add eax, ecx
dec esp
mov dword [ebp + 0x40], esi
dec eax
mov dword [ebp + 0x30], eax
call fcn.00416f70
dec eax
mov dword [ebp + 0x60], eax
dec esp
mov edi, eax
mov esi, 8
dec ebp
test esi, esi
je 0x42013f
inc ecx
mov ecx, esi
and ecx, 7
mov dword [ebp + 0x10], ecx
inc ecx
mov ecx, ebp
not ecx
jne 0x41fcf8
inc esp
mov edx, dword [ebp + 0x10]
inc ebp
xor esi, esi
inc esp
mov dword [ebp + 0x1c], ebp
xor edx, edx
mov dword [ebp + 0x18], ecx
dec eax
mov ecx, dword [ebp + 0x18]
dec esp
mov dword [ebp + 8], esi
jmp 0x41ff0f
movzx edi, bx
dec eax
mov esi, ebx
dec eax
shr esi, 0x20
dec eax
mov eax, ebx
dec eax
shr eax, 0x10
mov edx, esi
inc ecx
xor edx, ebp
inc esp
movzx ebx, ax
ror edx, 0xc
inc ecx
mov eax, ebp
inc ecx
imul edx, ebx
dec esp
mov edx, ebx
ror eax, 0x1f
dec ecx
shr edx, 0x30
inc esp
movzx ecx, si
dec eax
mov dword [ebp + 0x80], ebx
xor edx, eax
dec eax
mov dword [ebp + 0x88], ebx
xor edx, ecx
dec eax
mov dword [ebp + 0x90], ebx
inc esp
mov eax, edx
dec eax
mov dword [ebp + 0x98], ebx
inc esp
xor eax, esi
dec eax
mov dword [ebp + 0xa0], ebx
inc ecx
rol eax, 7
mov eax, edx
inc esp
imul eax, edi
shr eax, 3
dec eax
mov dword [ebp + 0xa8], ebx
dec eax
mov dword [ebp + 0xb0], ebx
dec eax
mov dword [ebp + 0xb8], ebx
inc esp
sub eax, eax
dec eax
mov dword [ebp + 0xc0], ebx
inc ebp
xor eax, ebp
dec eax
mov dword [ebp + 0xc8], ebx
inc ecx
mov ecx, eax
dec eax
mov dword [ebp + 0xd0], ebx
inc ecx
mov eax, eax
dec eax
mov dword [ebp + 0xd8], ebx
inc ecx
xor ecx, ebx
ror eax, 0xd
rol ecx, 7
inc ecx
imul ecx, edx
dec eax
mov dword [ebp + 0xe0], ebx
dec eax
mov dword [ebp + 0xe8], ebx
dec eax
mov dword [ebp + 0xf0], ebx
dec eax
mov dword [ebp + 0xf8], ebx
sub ecx, eax
dec eax
mov dword [ebp + 0x100], ebx
xor ecx, edx
dec eax
mov dword [ebp + 0x108], ebx
mov edx, ecx
ror edx, 0xa
inc ecx
sub edx, ecx
imul edx, edi
inc ecx
xor edx, eax
inc esp
mov eax, edx
mov eax, edx
inc ebp
xor eax, ecx
shr eax, 0xc
inc ebp
imul eax, ebx
inc esp
add eax, eax
inc esp
xor eax, ecx
inc ecx
mov ecx, eax
sub ecx, edi
sub ecx, esi
xor ecx, edx
mov edx, ebx
sub edx, ecx
mov eax, ecx
ror edx, 5
inc ecx
imul edx, edx
ror eax, 0xb
add edx, eax
inc ecx
xor edx, eax
inc esp
mov eax, edx
inc ebp
sub eax, ecx
inc esp
xor eax, ecx
inc esp
xor eax, ebx
inc ebp
mov esi, eax
inc esp
sub esi, esi
inc esp
mov edx, dword [ebp + 0x10]
inc ecx
mov eax, eax
ror eax, 0x1e
xor ecx, ecx
inc ecx
ror esi, 0x12
inc ebp
imul esi, ebx
inc ebp
mov ebx, edx
dec eax
mov dword [ebp + 0x110], ebx
dec eax
mov dword [ebp + 0x118], ebx
dec eax
mov dword [ebp + 0x20], ecx
inc esp
xor esi, eax
inc esp
xor esi, edx
inc ecx
mov eax, esi
inc esp
mov dword [ebp + 8], esi
ror eax, 0x18
inc ecx
mov edx, esi
sub edx, esi
ror edx, 0x1a
imul edx, edi
xor edx, eax
dec eax
mov eax, dword [ebp + 0x30]
inc ecx
xor edx, eax
dec esp
mov ecx, eax
mov dword [ebp + 0xc], edx
inc ebp
mov eax, edx
inc ebp
test edx, edx
je 0x41feac
dec eax
lea ecx, [ebp + 0x20]
dec eax
sub ecx, eax
inc ecx
mov al, byte [ecx]
inc edx
mov byte [ecx + ecx], al
dec ecx
inc ecx
dec ecx
sub ebx, 1
jne 0x41fe91
mov edx, dword [ebp + 0xc]
inc esp
mov esi, dword [ebp + 8]
dec eax
mov ecx, dword [ebp + 0x20]
xor edx, dword [ebp + 0x24]
dec esp
lea ecx, [ebp + 8]
inc esp
xor esi, ecx
mov dword [ebp + 0xc], edx
mov esi, 8
inc esp
mov dword [ebp + 8], esi
mov eax, esi
dec eax
mov dword [ebp + 0x18], ecx
dec edi
lea ecx, [ecx + edx]
dec ecx
sub eax, edx
je 0x41fee5
inc ecx
mov byte [ecx], 0
dec ecx
inc ecx
dec eax
sub eax, 1
jne 0x41fed1
mov edx, dword [ebp + 0xc]
inc esp
mov esi, dword [ebp + 8]
dec esp
lea ecx, [ebp + 8]
inc ebp
test edx, edx
je 0x41ff0f
dec eax
lea eax, [ebp + 8]
dec ecx
mov edx, edi
dec eax
sub edx, eax
inc ecx
mov al, byte [ecx]
inc edx
mov byte [edx + ecx], al
dec ecx
inc ecx
dec ecx
sub eax, 1
jne 0x41fef8
mov edx, dword [ebp + 0xc]
inc esp
mov esi, dword [ebp + 8]
dec esp
mov ebp, dword [ebp + 0x40]
inc ecx
mov eax, edx
dec ecx
add eax, edi
dec eax
mov dword [ebp + 0x50], eax
dec ecx
mov eax, ebp
dec eax
shr eax, 3
dec eax
mov dword [ebp + 0x48], eax
dec eax
test eax, eax
je 0x420133
dec esp
mov esp, dword [ebp + 0x30]
dec eax
mov eax, ebx
dec esp
mov ebp, dword [ebp + 0x48]
dec esp
mov ecx, ebx
dec eax
shr eax, 0x30
dec esp
mov ebx, ebx
dec ecx
shr ecx, 0x10
dec ecx
shr ebx, 0x20
dec eax
mov dword [ebp + 0x58], eax
dec ebp
sub esp, edi
dec esp
mov edi, dword [ebp + 0x50]
movzx eax, bx
mov dword [ebp + 0x10], eax
dec eax
mov dword [ebp + 0x120], ebx
dec eax
mov dword [ebp + 0x128], ebx
dec eax
mov dword [ebp + 0x130], ebx
dec eax
mov dword [ebp + 0x138], ebx
dec eax
mov dword [ebp + 0x140], ebx
dec eax
mov dword [ebp + 0x148], ebx
dec eax
mov dword [ebp + 0x150], ebx
dec eax
mov dword [ebp + 0x158], ebx
dec eax
mov dword [ebp + 0x160], ebx
dec eax
mov dword [ebp + 0x168], ebx
dec eax
mov dword [ebp + 0x170], ebx
dec eax
mov dword [ebp + 0x178], ebx
dec eax
mov dword [ebp + 0x180], ebx
dec eax
mov dword [ebp + 0x188], ebx
dec eax
mov dword [ebp + 0x190], ebx
dec eax
mov dword [ebp + 0x198], ebx
dec eax
mov dword [ebp + 0x1a0], ebx
dec eax
mov dword [ebp + 0x1a8], ebx
dec esp
mov dword [ebp + 0x28], ecx
dec eax
mov dword [ebp + 0x1b0], ebx
dec eax
mov dword [ebp + 0x1b8], ebx
dec esp
mov dword [ebp + 0x38], ebx
dec ebx
mov eax, dword [esp + edi]
inc ecx
movzx edi, cx
dec esp
mov eax, eax
dec ecx
shr eax, 0x20
inc esp
xor eax, edx
dec eax
shr ecx, 0x20
inc ebp
mov ecx, eax
dec eax
mov dword [ebp + 0x20], eax
inc ebp
xor ecx, ebx
inc ecx
mov edx, eax
ror edx, 0x1f
inc ecx
ror ecx, 0xc
inc esp
imul ecx, edi
inc esp
xor ecx, edx
inc esp
xor ecx, eax
inc ebp
xor ecx, esi
dec esp
mov esi, dword [ebp + 0x58]
inc ebp
mov edx, ecx
inc ecx
mov edx, ecx
inc ebp
xor edx, ebx
shr edx, 3
inc ecx
rol edx, 7
inc esp
imul edx, dword [ebp + 0x10]
inc ebp
movzx ebx, bx
inc esp
sub edx, edx
inc ebp
xor edx, eax
inc ebp
mov eax, edx
inc ecx
mov edx, edx
inc esp
xor eax, edi
ror edx, 0xd
inc ecx
rol eax, 7
inc ebp
imul eax, esi
inc esp
sub eax, edx
inc ebp
xor eax, ecx
inc ebp
mov ecx, eax
inc ecx
ror ecx, 0xa
inc ebp
sub ecx, ebx
inc esp
imul ecx, dword [ebp + 0x10]
inc ebp
xor ecx, edx
inc ebp
mov edx, ebx
inc ebp
xor edx, ecx
inc ecx
mov edx, ecx
shr edx, 0xc
inc esp
imul edx, edi
inc esp
add edx, edx
inc ebp
xor edx, eax
inc ebp
mov eax, edx
inc esp
sub eax, dword [ebp + 0x10]
inc esp
sub eax, dword [ebp + 0x38]
inc ebp
xor eax, ecx
inc esp
mov ecx, ebx
inc ebp
sub ecx, eax
inc ecx
mov edx, eax
ror edx, 0xb
inc ecx
ror ecx, 5
inc ebp
imul ecx, esi
inc esp
add ecx, edx
inc ebp
xor ecx, edx
inc ebp
mov edx, ecx
inc ebp
sub edx, ebx
dec esp
mov ebx, dword [ebp + 0x38]
inc ebp
xor edx, eax
inc esp
xor edx, ebx
inc ebp
mov eax, edx
inc ecx
mov edx, edx
ror edx, 0x1e
inc ebp
sub eax, ebx
inc ecx
ror eax, 0x12
inc esp
imul eax, edi
inc esp
xor eax, edx
inc ebp
xor eax, ecx
inc ecx
mov edx, eax
inc ebp
mov esi, eax
inc esp
xor esi, dword [ebp + 0x18]
inc ecx
sub edx, ebx
ror edx, 0x1a
imul edx, dword [ebp + 0x10]
inc ecx
ror eax, 0x18
inc ecx
xor edx, eax
xor edx, ecx
inc ecx
xor edx, edx
dec esp
mov ecx, dword [ebp + 0x28]
dec eax
mov ecx, eax
inc ebp
mov dword [edi], esi
inc ecx
mov dword [edi + 4], edx
dec esp
add edi, esi
dec eax
mov dword [ebp + 0x18], eax
dec ecx
sub ebp, 1
jne 0x41fff3
dec esp
mov edi, dword [ebp + 0x60]
dec esp
mov esp, dword [ebp + 0x68]
dec esp
mov ebp, dword [ebp + 0x40]
mov dword [ebp + 0xc], edx
inc esp
mov dword [ebp + 8], esi
inc ebx
mov al, byte [edi + ebp - 1]
mov edi, 0xfffffff
jmp 0x420142
mov al, byte [ebp]
cmp al, byte [ebp]
je 0x42014c
call fcn.00416770
inc ecx
mov ecx, dword [esp + 0xc]
test edi, ecx
je 0x42017a
dec eax
lea eax, [0xfffe06a4]
dec eax
and ecx, edi
dec eax
mov dword [ebp + 0x28], eax
dec eax
lea edx, [ebp + 0x28]
dec ecx
add ecx, edi
mov al, byte [edx]
dec eax
inc edx
mov byte [ecx], al
dec eax
inc ecx
dec eax
sub esi, 1
jne 0x42016a
inc ecx
mov ecx, dword [esp + 0x14]
test edi, ecx
je 0x4201a5
dec eax
and ecx, edi
dec eax
lea eax, [ecx + 0xf]
dec eax
cmp eax, ecx
ja 0x420199
dec eax
mov eax, 0xfffffff0
invalid
dec eax
and eax, 0xfffffff0
call 0x47b1f0
dec eax
sub esp, eax
dec eax
and dword [ebp + 0x78], 0
dec esp
lea ecx, [ebp + 0x70]
dec eax
and dword [ebp + 0x70], 0
dec esp
lea eax, [ebp + 0x78]
dec ecx
mov edx, edi
call fcn.004173fc
dec ecx
mov eax, edi
dec eax
mov ecx, dword [ebp + 0x1c0]
dec eax
xor ecx, ebp
call fcn.0043bd60
dec eax
mov ebx, dword [ebp + 0x208]
dec eax
mov esi, dword [ebp + 0x210]
dec eax
mov edi, dword [ebp + 0x218]
dec eax
lea esp, [ebp + 0x1d0]
inc ecx
pop edi
inc ecx
pop esi
inc ecx
pop ebp
inc ecx
pop esp
pop ebp
ret