Function at 0x483cd0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
push ebx
mov ebp, ebp
mov ebx, ecx
push esi
push edi
mov dword [esp - 0x30], 0x385df82d
mov dword [ebp - 8], ebx
mov esi, 0x19639d0c
xor esi, 0x2cef058c
xchg edi, edi
add esi, 0x288cfc73
sub esi, 0x48277225
sub esi, 0x15f222cc
cmp dword [ebx + 0x830], 0
mov esp, esp
jne 0x483fc8
mov dword [ebp - 0x18], 0x4347f394
xor dword [ebp - 0x18], 0x14d9a4b9
xor dword [ebp - 0x18], 0x597d6ae1
mov dword [esp - 0x38], 0x3918b723
xor dword [ebp - 0x18], 0x1ad6e9a1
add dword [ebp - 0x18], 0x34995451
mov cl, 0x2d
xchg esp, esp
sub cl, 1
sub cl, 0x12
add cl, 0x3a
add cl, 0x49
mov dword [esp - 0x2c], 0x5db1ca4c
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], 0x4f90b736
xor dword [ebp - 0x14], 0x2a6d1214
xor dword [ebp - 0x14], 0xf4adb65
xchg edx, edx
xor dword [ebp - 0x14], 0x279c927b
xor dword [ebp - 0x14], 0x5ae586ff
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x14]
xchg esi, esi
nop
sub esp, 4
mov dword [esp], 0x1bdbb285
mov dword [esp - 0x24], ebp
add dword [esp], 0x4e0ad27c
sub dword [esp], 0x2608b438
xor dword [esp], 0x28171c7e
sub dword [esp], 0x657efea
xchg esi, esi
sub dword [esp], 0x6572dcbb
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x1c], cl
mov dword [esp - 0x18], 0x58ad4a2d
mov dword [ebp - 0x14], 0xeb06920
xor dword [ebp - 0x14], 0x58a90aeb
add dword [ebp - 0x14], 0x11a1619a
mov ebp, ebp
xor dword [ebp - 0x14], 0x43c04662
add dword [ebp - 0x14], 0x455486bd
xor dword [ebp - 0x14], 0x69cf09cd
xchg ebx, ebx
call fcn.00490c90
add esp, 4
mov dword [ebp - 0x18], eax
mov dword [esp - 0x10], 0x6b40d0c8
xor edx, edx
movsx cx, byte [ebp + edx - 0x24]
mov word [eax + edx*2], cx
mov dword [esp - 0xc], 0x6976040a
inc edx
mov edi, dword [ebp - 0x14]
cmp edx, edi
mov dword [esp - 0x20], esp
jb 0x483e0e
cmp edi, esi
lea eax, [ebp - 0x18]
pushf
mov ecx, ecx
mov ecx, 0x41b7518f
sub ecx, 0x36d79282
xor ecx, 0x68733f85
mov esp, esp
xor ecx, 0x28297243
add ecx, 0xb57a0d34
popf
cmova eax, dword [ebp - 0x18]
xchg esi, esi
mov dword [ebp - 4], eax
lea eax, [edi + 1]
mul esi
mov dword [esp - 0x2c], edi
cmovb eax, ecx
push eax
call fcn.00490c90
xchg ebp, ebp
add esp, 4
mov esi, eax
xor ebx, ebx
mov edx, edx
mov dword [ebp - 0xc], esi
test edi, edi
je 0x483eea
sub dword [ebp - 4], esi
mov dword [esp - 0x40], edx
mov edx, esi
mov esi, dword [ebp - 4]
lea esp, [esp]
mov ecx, ebx
mov dword [esp - 0x30], ebp
lea edx, [edx + 2]
and ecx, 3
mov eax, 0x34453ca8
add eax, 0x1bf0a396
xchg edi, edi
xor eax, 0x49212f4b
xor eax, 0x6e064705
xor eax, 0x1ab1114d
mov dword [esp - 0xc], 0x32243d19
sub eax, 0x5e4e4ca2
add eax, 0x6c54f856
shl ecx, 3
mov esp, esp
inc ebx
sar eax, cl
cbw
xchg ebp, ebp
xor ax, word [esi + edx - 2]
mov word [edx - 2], ax
cmp ebx, edi
mov ebp, ebp
jb 0x483e93
mov esi, dword [ebp - 0xc]
xor eax, eax
push eax
xchg ebx, ebx
push esi
mov word [esi + edi*2], ax
call fcn.00477270
mov ebx, dword [ebp - 8]
mov dword [esp - 0x1c], 0x1de65364
push esi
mov dword [ebx + 0x830], eax
call fcn.00490c60
add esp, 0xc
mov edi, edi
cmp edi, 2
jbe 0x483f27
push dword [ebp - 0x18]
xchg ebp, ebp
call fcn.00490c60
add esp, 4
mov ecx, dword [ebx + 0x830]
mov edi, edi
mov dword [ebp - 0xc], ecx
test ecx, ecx
je 0x484293
xor edi, edi
mov dword [esp - 0x1c], ecx
lea esi, [ebx + 0x630]
lea ecx, [ecx]
mov eax, dword [esi + 4]
xchg ebx, ebx
xor eax, 0x1d6a61f8
push eax
push ecx
call fcn.00475760
mov dword [esp - 0x18], 0x3a699a3b
add esp, 8
test eax, eax
je 0x484293
xor eax, dword [0x4c0968]
mov dword [esp - 0x28], esi
inc edi
mov ecx, dword [ebp - 0xc]
mov dword [esi], eax
mov dword [esp - 0x14], 0x1a45fecb
add esi, 8
cmp edi, 5
jb 0x483f49
mov esi, 0x11593f28
mov edx, edx
add esi, 0x454cfeaa
sub esi, 0x33877049
xor esi, 0x61866c99
mov dword [esp - 0x10], 0x68aa6967
add esi, 0xb3e0f65
sub esi, 0xc3c683c
sub esi, 0x419a4837
mov dword [esp - 0x44], 0x453f2aab
cmp dword [ebx + 0x834], 0
jne 0x484276
mov dword [ebp - 0x24], 0x7d572eb5
sub dword [ebp - 0x24], 0x276dbab3
mov edx, edx
sub dword [ebp - 0x24], 0x333e4e0e
add dword [ebp - 0x24], 0x45e29fcf
sub dword [ebp - 0x24], 0x3f792a12
mov dword [esp - 0x30], 0x4cf0c3df
xor dword [ebp - 0x24], 0x13dbb30f
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x20], 0x7ba642a2
mov dword [esp - 0x40], edx
sub dword [ebp - 0x20], 0x5bf966aa
xor dword [ebp - 0x20], 0x2509d375
xor dword [ebp - 0x20], 0x462a993c
sub dword [ebp - 0x20], 0x6cb2bb88
xchg ecx, ecx
add dword [ebp - 0x20], 0x28d2389f
add dword [ebp - 0x20], 0x10ea21bc
mov eax, dword [ebp - 0x20]
mov ebp, ebp
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x1c], 0x1308b62a
add dword [ebp - 0x1c], 0x15df7db
xchg esp, esp
add dword [ebp - 0x1c], 0x41ac2f6b
sub dword [ebp - 0x1c], 0x2f58dd6a
xor dword [ebp - 0x1c], 0x317c20d9
mov ebp, ebp
mov eax, dword [ebp - 0x1c]
nop
mov dword [esp - 4], 0x11f530fb
mov dword [esp - 0x10], 0x2fd413ac
add dword [esp - 4], 0x4c47ea58
xor dword [esp - 4], 0x2761b5cf
sub dword [esp - 4], 0x3b2a431c
mov dword [esp - 0x28], edx
sub dword [esp - 4], 0x1ae5d9
sub dword [esp - 4], 0x3e17858f
sub esp, 4
mov edx, edx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x14], 0x6848fda4
sub dword [ebp - 0x14], 0x1a33c638
mov dword [esp - 0xc], edx
sub dword [ebp - 0x14], 0xcbe310a
sub dword [ebp - 0x14], 0x241ca128
xor dword [ebp - 0x14], 0x1d3a6536
call fcn.00490c90
mov edi, edi
add esp, 4
mov dword [ebp - 0x18], eax
xor edx, edx
lea ecx, [ecx]
mov ebp, ebp
movsx cx, byte [ebp + edx - 0x30]
mov word [eax + edx*2], cx
inc edx
xchg esi, esi
mov edi, dword [ebp - 0x14]
cmp edx, edi
jb 0x4840f8
mov dword [esp - 0x10], 0x6cfffa25
cmp edi, 2
lea eax, [ebp - 0x18]
pushf
xchg edx, edx
mov ecx, 0x395e286
xor ecx, 0x6bc4f54c
sub ecx, 0x369b6246
mov esi, esi
add ecx, 0xea8c1cf
add ecx, 0xbfa188ac
popf
cmova eax, dword [ebp - 0x18]
mov dword [esp - 0x44], edx
mov dword [ebp - 4], eax
lea eax, [edi + 1]
mul esi
cmovb eax, ecx
xchg ebx, ebx
push eax
call fcn.00490c90
add esp, 4
mov esi, eax
mov dword [esp - 0x40], 0x61d61170
xor ebx, ebx
mov dword [ebp - 0xc], esi
test edi, edi
mov dword [esp - 0x18], edi
je 0x4841d9
sub dword [ebp - 4], esi
mov edx, esi
xchg ebx, ebx
mov esi, dword [ebp - 4]
mov ecx, ebx
lea edx, [edx + 2]
and ecx, 3
mov dword [esp - 0x20], 0x13bb1e87
mov eax, 0x7667455e
xor eax, 0x7b48798b
xor eax, 0x528b4781
add eax, 0x1b9531cd
xchg edx, edx
sub eax, 0x733c071d
add eax, 0x5d65539f
add eax, 0x16474b4e
mov dword [esp - 0x28], ebp
shl ecx, 3
inc ebx
sar eax, cl
cbw
xchg ecx, ecx
xor ax, word [esi + edx - 2]
mov word [edx - 2], ax
cmp ebx, edi
jb 0x48417e
mov dword [esp - 0x34], 0xc88c243
mov esi, dword [ebp - 0xc]
xor eax, eax
push eax
mov dword [esp - 0x20], 0x4cc3a15f
push esi
mov word [esi + edi*2], ax
call fcn.00477270
mov dword [esp - 0x20], 0x5574c58e
mov ecx, dword [ebp - 8]
push esi
mov dword [ecx + 0x834], eax
call fcn.00490c60
xchg edi, edi
add esp, 0xc
cmp edi, 2
jbe 0x48421e
mov dword [esp - 0xc], edx
push dword [ebp - 0x18]
call fcn.00490c60
add esp, 4
mov eax, dword [ebp - 8]
xchg edx, edx
mov ebx, dword [eax + 0x834]
test ebx, ebx
je 0x484293
mov edi, edi
xor edi, edi
lea esi, [eax + 0x658]
mov eax, dword [esi + 4]
mov ecx, ecx
xor eax, 0x1d6a61f8
push eax
push ebx
mov dword [esp - 0x28], edi
call fcn.00475760
add esp, 8
test eax, eax
xchg ebp, ebp
je 0x484293
xor eax, dword [0x4c0968]
inc edi
mov dword [esp - 0x30], 0x221385a8
mov dword [esi], eax
add esi, 8
cmp edi, 2
jb 0x484237
mov dword [esp - 0xc], 0x663062b8
pop edi
pop esi
mov al, 0x62
mov edx, edx
xor al, 0x7b
add al, 0x35
xor al, 0x1f
xchg edx, edx
sub al, 0x17
sub al, 0x17
sub al, 0x22
xchg esi, esi
pop ebx
mov esp, ebp
pop ebp
xchg ecx, ecx
ret
pop edi
pop esi
mov esi, esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
mov dword [esp - 0x24], 0x7584106f
ret