Function at 0x4026a0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x542104
mov eax, dword fs:[0]
push eax
sub esp, 0x20c
mov eax, dword [0x593dc0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 4], 1
xor ecx, ecx
xor esi, esi
mov word [ebp - 0x40], cx
mov dword [ebp - 0x44], 0x690025
mov dword [ebp - 0x5c], 0x59005b
mov dword [ebp - 0x58], 0x580016
mov dword [ebp - 0x54], 0x40004f
mov dword [ebp - 0x50], 0x5d000d
mov dword [ebp - 0x4c], 0x180016
mov dword [ebp - 0x48], 0x12
xor eax, eax
lea esp, [esp]
xor word [ebp + eax*2 - 0x5c], 0x2b
inc eax
cmp eax, 0xb
jb 0x402720
xor ecx, ecx
xor edx, edx
mov word [ebp - 0xb4], cx
mov dword [ebp - 0xc8], 0x680063
mov dword [ebp - 0xc4], 0x6e0061
mov dword [ebp - 0xc0], 0x65006e
mov dword [ebp - 0xbc], 0x5f006c
mov dword [ebp - 0xb8], 0x640069
mov dword [ebp - 0x98], 0x5d004e
mov dword [ebp - 0x94], 0x45004e
mov dword [ebp - 0x90], 0x74005f
mov dword [ebp - 0x8c], 0x5d004e
mov dword [ebp - 0x88], 0x45004e
mov dword [ebp - 0x84], 0x74005f
mov dword [ebp - 0x80], 0x4f0042
mov word [ebp - 0x7c], dx
xor eax, eax
xor word [ebp + eax*2 - 0x98], 0x2b
inc eax
cmp eax, 0xe
jb 0x4027b2
xor eax, eax
mov dword [ebp - 0x78], 0x5f005e
mov dword [ebp - 0x74], 0x740046
mov dword [ebp - 0x70], 0x4f004a
mov dword [ebp - 0x6c], 0x42004f
mov dword [ebp - 0x68], 0x42005f
mov dword [ebp - 0x64], 0x450044
mov word [ebp - 0x60], ax
xor word [ebp + eax*2 - 0x78], 0x2b
inc eax
cmp eax, 0xc
jb 0x4027f1
xor ecx, ecx
mov word [ebp - 0x9c], cx
mov ecx, 0x65
xor eax, eax
xor edx, edx
mov word [ebp - 0x14], cx
xor ecx, ecx
mov dword [ebp - 0xa4], 0x750067
mov dword [ebp - 0xa0], 0x640069
mov word [ebp - 0xa8], ax
mov dword [ebp - 0xb0], 0x610064
mov dword [ebp - 0xac], 0x610074
mov word [ebp - 0x12], dx
mov dword [ebp - 0x1c], 0x610074
mov dword [ebp - 0x18], 0x6c0062
mov dword [ebp - 0x3c], 0x5d004e
mov dword [ebp - 0x38], 0x45004e
mov dword [ebp - 0x34], 0x74005f
mov dword [ebp - 0x30], 0x4a0043
mov dword [ebp - 0x2c], 0x740058
mov dword [ebp - 0x28], 0x58005e
mov dword [ebp - 0x24], 0x59004e
mov word [ebp - 0x20], cx
jmp 0x402890
xor word [ebp + eax*2 - 0x3c], 0x2b
inc eax
cmp eax, 0xe
jb 0x402890
mov dword [ebp - 0x138], 0x5f0043
mov dword [ebp - 0x134], 0x5b005f
mov dword [ebp - 0x130], 0x40011
mov dword [ebp - 0x12c], 0x420004
mov dword [ebp - 0x128], 0x4d0049
mov dword [ebp - 0x124], 0x480006
mov dword [ebp - 0x120], 0x420046
mov dword [ebp - 0x11c], 0x1a0006
mov dword [ebp - 0x118], 0x180012
mov dword [ebp - 0x114], 0x120013
mov dword [ebp - 0x110], 0x18001e
mov dword [ebp - 0x10c], 0x1c001a
mov dword [ebp - 0x108], 0x5001e
mov dword [ebp - 0x104], 0x58005e
mov dword [ebp - 0x100], 0x4e0006
mov dword [ebp - 0xfc], 0x58004a
mov dword [ebp - 0xf8], 0x6005f
mov dword [ebp - 0xf4], 0x5001a
mov dword [ebp - 0xf0], 0x47004e
mov dword [ebp - 0xec], 0x50049
mov dword [ebp - 0xe8], 0x46004a
mov dword [ebp - 0xe4], 0x51004a
mov dword [ebp - 0xe0], 0x450044
mov dword [ebp - 0xdc], 0x5c004a
mov dword [ebp - 0xd8], 0x50058
mov dword [ebp - 0xd4], 0x440048
mov dword [ebp - 0xd0], 0x46
xor eax, eax
lea esp, [esp]
xor word [ebp + eax*2 - 0x138], 0x2b
inc eax
cmp eax, 0x35
jb 0x4029b0
call fcn.00415eb7
xor ecx, ecx
cmp eax, esi
setne cl
cmp ecx, esi
jne 0x4029d9
push 0x80004005
call fcn.00402460
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x1b4], eax
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x44]
push edx
lea eax, [ebp - 0x1b4]
push eax
mov byte [ebp - 4], 2
call fcn.00404a60
mov ecx, dword [ebp + 0xc]
add esp, 0xc
cmp dword [ecx - 0xc], esi
je 0x402a40
lea eax, [ebp - 0x17c]
mov dword [ebp - 0x17c], 0x26
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x402a21
sub eax, edx
sar eax, 1
push eax
lea ecx, [ebp - 0x17c]
push ecx
lea ecx, [ebp + 0xc]
call fcn.004048e0
lea eax, [ebp - 0x5c]
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x402a46
sub eax, edx
sar eax, 1
push eax
lea edx, [ebp - 0x5c]
push edx
lea ecx, [ebp + 0xc]
call fcn.004048e0
mov dword [ebp - 0x16c], esi
push 0x400
lea edi, [ebp - 0x168]
mov byte [ebp - 4], 3
call fcn.00403240
mov dword [ebp - 0x150], esi
mov dword [ebp - 0x14c], esi
mov ebx, dword [ebp - 0x168]
xor eax, eax
mov dword [ebp - 0x16c], 3
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x13c], 3
mov dword [ebp - 0x148], eax
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov eax, dword [ebp - 0x1b0]
push ebx
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 5
mov edx, dword [eax]
push ecx
lea ecx, [ebp - 0xc8]
call fcn.004033b0
push ebx
lea edx, [ebp - 0x148]
push edx
mov edx, dword [ebp - 0x1b4]
lea ecx, [ebp - 0x98]
call fcn.004033b0
mov edx, dword [ebp + 0xc]
push ebx
lea eax, [ebp - 0x148]
push eax
lea ecx, [ebp - 0x78]
call fcn.004033b0
mov edx, dword [ebp + 0x14]
push ebx
lea ecx, [ebp - 0x148]
push ecx
lea ecx, [ebp - 0xa4]
call fcn.004033b0
push 1
mov dword [ebp - 0x1ac], esi
mov dword [ebp - 0x1a8], esi
mov dword [ebp - 0x1a4], esi
mov dword [ebp - 0x1a0], esi
mov dword [ebp - 0x19c], esi
mov dword [ebp - 0x198], 0x100
call fcn.00415244
add esp, 4
cmp eax, esi
je 0x402b64
mov byte [eax], 0
jmp 0x402b66
xor eax, eax
mov esi, dword [ebp - 0x198]
push esi
mov dword [ebp - 0x1ac], eax
mov dword [ebp - 0x1a8], eax
call fcn.0051e231
add esi, eax
add esp, 4
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], esi
lea edx, [ebp - 0x1ac]
mov byte [ebp - 4], 6
push 0x100
lea edi, [ebp - 0x210]
mov dword [ebp - 0x214], edx
call fcn.00403240
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x148]
mov byte [ebp - 4], 7
call fcn.00403460
mov ecx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x1a4]
mov esi, ecx
lea edx, [ecx + 2]
sub esi, eax
cmp edx, dword [ebp - 0x19c]
jb 0x402c18
mov edi, dword [ebp - 0x198]
add edi, edi
lea ecx, [esi + 2]
cmp edi, ecx
jae 0x402bf7
mov edi, ecx
push edi
push eax
call fcn.0051e2c5
add esp, 8
mov dword [ebp - 0x1a4], eax
lea ecx, [eax + esi]
add eax, edi
mov dword [ebp - 0x198], edi
mov dword [ebp - 0x19c], eax
mov eax, ecx
add ecx, 2
mov dword [ebp - 0x1a0], ecx
xor ecx, ecx
mov word [eax], cx
mov edi, dword [ebp - 0x1a4]
sub dword [ebp - 0x1a0], 2
mov dword [ebp - 0x1b0], edi
shr esi, 1
call fcn.00415eb7
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x402c57
push 0x80004005
call fcn.00402460
test edi, edi
jne 0x402c69
test esi, esi
je 0x402c69
push 0x80070057
call fcn.00402460
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx]
push esi
call eax
test eax, eax
jne 0x402c7d
call fcn.004017d0
lea edi, [eax + 0x10]
mov dword [ebp - 0x1bc], edi
test esi, esi
js 0x402c5f
cmp esi, dword [edi - 8]
jg 0x402c5f
mov edx, dword [ebp - 0x1b0]
lea eax, [esi + esi]
push eax
push edx
push eax
xor ecx, ecx
mov dword [edi - 0xc], esi
push edi
mov word [eax + edi], cx
call fcn.0051dbc1
add esp, 0x10
push ebx
lea eax, [ebp - 0x178]
push eax
mov edx, edi
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 8
call fcn.004033b0
xor esi, esi
lea eax, [ebp - 0x1c]
cmp word [ebp - 0x1c], si
je 0x402cd9
add eax, 2
cmp word [eax], si
jne 0x402cd1
lea ecx, [ebp - 0x1c]
sub eax, ecx
sar eax, 1
mov dword [ebp - 0x1d8], eax
lea eax, [ebp - 0x3c]
cmp word [ebp - 0x3c], si
je 0x402cf8
nop
add eax, 2
cmp word [eax], si
jne 0x402cf0
mov ecx, dword [ebp - 0x170]
lea edx, [ebp - 0x3c]
sub eax, edx
sar eax, 1
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x1c0], 0x100005
cmp eax, ecx
jb 0x402d9e
cmp ecx, esi
jne 0x402d76
mov dword [ebp - 0x170], 0x10
mov eax, dword [ebx]
mov ecx, dword [eax + 4]
add ecx, 0x200
cmp ecx, dword [eax]
jbe 0x402d64
mov edi, dword [ebx + 4]
cmp edi, 0x200
ja 0x402d4c
mov edi, 0x200
lea edx, [edi + 0xc]
push edx
call fcn.0051e231
mov dword [eax], edi
mov dword [eax + 4], esi
mov ecx, dword [ebx]
mov dword [eax + 8], ecx
add esp, 4
mov dword [ebx], eax
mov ebx, dword [ebx]
mov edx, dword [ebx + 4]
add dword [ebx + 4], 0x200
lea eax, [ebx + edx + 0xc]
jmp 0x402d92
mov edx, dword [ebp - 0x178]
lea eax, [ecx + ecx]
mov dword [ebp - 0x170], eax
shl eax, 5
push eax
shl ecx, 5
push ebx
call fcn.00404740
mov dword [ebp - 0x178], eax
mov eax, dword [ebp - 0x174]
mov edx, dword [ebp - 0x1d4]
shl eax, 5
add eax, dword [ebp - 0x178]
lea ecx, [ebp - 0x1c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1d8]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x1c8]
mov ecx, 0x100005
mov dword [eax + 0xc], ecx
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x178]
shl eax, 5
lea eax, [eax + ecx + 0x10]
lea ecx, [ebp - 0x3c]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x1c4]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x1c0]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
inc dword [ebp - 0x174]
mov byte [ebp - 4], 8
push 1
mov dword [ebp - 0x194], esi
mov dword [ebp - 0x190], esi
mov dword [ebp - 0x18c], esi
mov dword [ebp - 0x188], esi
mov dword [ebp - 0x184], esi
mov dword [ebp - 0x180], 0x100
call fcn.00415244
add esp, 4
cmp eax, esi
je 0x402e3e
mov byte [eax], 0
jmp 0x402e40
xor eax, eax
mov esi, dword [ebp - 0x180]
push esi
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x190], eax
call fcn.0051e231
add esi, eax
add esp, 4
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x184], esi
lea eax, [ebp - 0x194]
mov byte [ebp - 4], 0xa
push 0x100
lea edi, [ebp - 0x1f4]
mov dword [ebp - 0x1f8], eax
call fcn.00403240
lea ecx, [ebp - 0x1f8]
push ecx
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0xb
call fcn.00403460
mov ecx, dword [ebp - 0x188]
mov eax, dword [ebp - 0x18c]
mov esi, ecx
lea edx, [ecx + 2]
sub esi, eax
cmp edx, dword [ebp - 0x184]
jb 0x402ef2
mov edi, dword [ebp - 0x180]
add edi, edi
lea ecx, [esi + 2]
cmp edi, ecx
jae 0x402ed1
mov edi, ecx
push edi
push eax
call fcn.0051e2c5
add esp, 8
mov dword [ebp - 0x18c], eax
lea ecx, [eax + esi]
add eax, edi
mov dword [ebp - 0x180], edi
mov dword [ebp - 0x184], eax
mov eax, ecx
add ecx, 2
mov dword [ebp - 0x188], ecx
xor ecx, ecx
mov word [eax], cx
sub dword [ebp - 0x188], 2
mov edi, dword [ebp - 0x18c]
shr esi, 1
call fcn.00415eb7
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x402f2b
push 0x80004005
call fcn.00402460
test edi, edi
jne 0x402f3d
test esi, esi
je 0x402f3d
push 0x80070057
call fcn.00402460
mov edx, dword [eax]
push 2
mov ecx, eax
mov eax, dword [edx]
push esi
call eax
test eax, eax
jne 0x402f51
call fcn.004017d0
lea ecx, [eax + 0x10]
mov dword [ebp - 0x17c], ecx
test esi, esi
js 0x402c5f
cmp esi, dword [ecx - 8]
jg 0x402c5f
lea eax, [esi + esi]
push eax
push edi
push eax
xor edx, edx
mov dword [ecx - 0xc], esi
push ecx
mov word [ecx + eax], dx
call fcn.0051dbc1
lea eax, [ebp - 0x17c]
push eax
lea esi, [ebp - 0x1b8]
mov byte [ebp - 4], 0xc
call fcn.004013e0
add esp, 0x14
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x17c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x402fbf
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edx, dword [ebp - 0x1b8]
mov eax, edx
lea esi, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x402fd0
push 0
push 0
sub eax, esi
push eax
push 0x5720e0
push str.POST
lea ecx, [ebp - 0x138]
call fcn.00414c50
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x1b8]
add eax, 0xfffffff0
add esp, 0x14
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40301c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x1f0]
test esi, esi
je 0x403059
cmp dword [esi], 0
je 0x403044
mov eax, dword [esi]
cmp eax, dword [esi + 8]
je 0x403044
mov edi, dword [eax + 8]
push eax
call fcn.0051dda7
add esp, 4
mov dword [esi], edi
test edi, edi
jne 0x40302b
mov eax, dword [esi + 0x10]
push eax
call fcn.00415273
add esp, 4
push esi
call fcn.00415273
add esp, 4
mov ecx, dword [ebp - 0x18c]
push ecx
call fcn.0051dda7
mov edx, dword [ebp - 0x190]
add esp, 4
push edx
call fcn.00415273
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x1bc]
add eax, 0xfffffff0
add esp, 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40309d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x20c]
test esi, esi
je 0x4030da
cmp dword [esi], 0
je 0x4030c5
mov eax, dword [esi]
cmp eax, dword [esi + 8]
je 0x4030c5
mov edi, dword [eax + 8]
push eax
call fcn.0051dda7
add esp, 4
mov dword [esi], edi
test edi, edi
jne 0x4030ac
mov eax, dword [esi + 0x10]
push eax
call fcn.00415273
add esp, 4
push esi
call fcn.00415273
add esp, 4
mov ecx, dword [ebp - 0x1a4]
push ecx
call fcn.0051dda7
mov edx, dword [ebp - 0x1a8]
add esp, 4
push edx
call fcn.00415273
mov esi, dword [ebp - 0x164]
add esp, 4
test esi, esi
je 0x403135
cmp dword [esi], 0
je 0x403120
mov eax, dword [esi]
cmp eax, dword [esi + 8]
je 0x403120
mov edi, dword [eax + 8]
push eax
call fcn.0051dda7
add esp, 4
mov dword [esi], edi
test edi, edi
jne 0x403107
mov eax, dword [esi + 0x10]
push eax
call fcn.00415273
add esp, 4
push esi
call fcn.00415273
add esp, 4
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x1b4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40315b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40317e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 0x14]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4031a4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051d79f
mov esp, ebp
pop ebp
ret