Function at 0x4286b3
Capabilities:
Encode data using xor

Disassembly:
push 0x50
mov eax, 0x4b1073
call fcn.0048f423
mov edi, dword [ebp + 8]
xor ebx, ebx
inc ebx
call fcn.004251b4
xor edx, edx
test al, al
mov ecx, ebx
cmovne ecx, edx
xor eax, eax
push eax
push eax
push eax
push ecx
push 0x4c03a0
call fcn.004290c4
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x4286f3
xor al, al
jmp 0x428946
push 0
lea ecx, [ebp - 0x48]
call fcn.0042f326
and dword [ebp - 4], 0
push 0x4c4d10
lea ecx, [ebp - 0x38]
call fcn.0042f2f7
lea eax, [ebp - 0x38]
push eax
push str.method
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.0042f5f2
mov ecx, eax
call fcn.0042f4ab
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0
call fcn.0042f451
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.00438012
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call fcn.0042f275
lea eax, [ebp - 0x38]
push eax
push 0x4c0d60
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 3
call fcn.0042f5f2
mov ecx, eax
call fcn.0042f4ab
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 2
call fcn.0042f451
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0
call fcn.00401056
push 0x4c4d28
lea ecx, [ebp - 0x38]
call fcn.0042f2f7
push 4
pop eax
mov byte [ebp - 4], al
lea eax, [ebp - 0x38]
push eax
push str.acceptedStatusCodes
lea ecx, [ebp - 0x48]
call fcn.0042f5f2
mov ecx, eax
call fcn.0042fa35
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0
call fcn.0042f451
mov ecx, dword [0x507340]
push 0x16
lea edx, [ecx + 2]
lea eax, [ecx + 1]
imul eax, edx
imul eax, ecx
cdq
pop ecx
idiv ecx
cmp edx, 0xb
jne 0x4287dc
dec dword [0x5083b8]
push 0x4c4d38
lea ecx, [ebp - 0x38]
call fcn.0042f2f7
lea eax, [ebp - 0x38]
push eax
push str.acceptTypes
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 5
call fcn.0042f5f2
mov ecx, eax
call fcn.0042f4ab
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0
call fcn.0042f451
mov ecx, dword [0x507340]
mov eax, ecx
imul eax, ecx
push 0x18
cdq
pop edi
idiv edi
cmp edx, 0xe
jne 0x428851
mov eax, ecx
push 0x64
cdq
pop ecx
idiv ecx
xor ecx, ecx
push 4
lea eax, [edx + 0x141]
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0048dbeb
push eax
call fcn.0048fbd7
pop ecx
pop ecx
push ebx
lea ecx, [ebp - 0x38]
call fcn.0042f3a9
lea eax, [ebp - 0x38]
push eax
push str.noResponse
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 6
call fcn.0042f5f2
mov ecx, eax
call fcn.0042f4ab
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0
call fcn.0042f451
xor eax, eax
push eax
push eax
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x5c]
push esi
push eax
call fcn.00425e85
add esp, 0x18
mov byte [ebp - 4], 7
call fcn.00428d85
test al, al
jne 0x4288b8
xor eax, eax
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetMailslotInfo]
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov esi, dword [0x507340]
mov eax, esi
imul eax, esi
push 0x12
cdq
pop ecx
idiv ecx
cmp edx, 8
jne 0x4288fd
xor edx, edx
push 8
mov ecx, edx
pop edi
mov eax, ecx
and eax, ebx
dec eax
not eax
and eax, esi
sar ecx, 1
xor ecx, eax
dec edi
jne 0x4288dc
add esi, ecx
inc edx
cmp edx, 0x100
jl 0x4288d7
mov dword [0x507340], esi
mov esi, str.result
push esi
lea ecx, [ebp - 0x5c]
call fcn.0042f5f2
mov ecx, eax
call fcn.0043020e
test al, al
je 0x42892a
push esi
lea ecx, [ebp - 0x5c]
call fcn.0042f5f2
mov ecx, eax
call fcn.0042fa57
test al, al
jne 0x42892c
xor bl, bl
lea ecx, [ebp - 0x5c]
mov byte [ebp - 4], 0
call fcn.0042f451
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x48]
call fcn.0042f451
mov al, bl
call fcn.0048f3d2
ret