Function at 0x59056310
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x59154560
push eax
mov eax, dword [esp + 0x1c]
mov dword fs:[0], esp
sub esp, 0x70
test eax, eax
push ebx
push ebp
push esi
push edi
je 0x5905633a
mov dword [eax], 0
mov ebx, dword [esp + 0x90]
test ebx, ebx
je 0x59056d50
mov esi, dword [esp + 0x94]
test esi, esi
je 0x59056d50
mov eax, dword [0x59162880]
mov dword [esp + 0x20], eax
mov dword [esp + 0x88], 0
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x70]
mov byte [esp + 0x88], 1
call fcn.590abbc0
lea ecx, [esp + 0x50]
mov byte [esp + 0x88], 2
call fcn.590abbc0
lea ecx, [esp + 0x60]
mov byte [esp + 0x88], 3
call fcn.590b3a40
mov ebp, dword [esp + 0x98]
mov byte [esp + 0x88], 4
cmp ebp, 0x182
jg 0x59056491
je 0x5905648a
cmp ebp, 0x122
jg 0x59056443
je 0x59056439
cmp ebp, 0xd2
jg 0x59056413
je 0x59056409
cmp ebp, 0x12
je 0x590563ff
cmp ebp, 0x42
je 0x590563f5
cmp ebp, 0x72
jne case.0x590564a6.413
push 0x5918ed14
jmp 0x590564f8
push str.www.163.com
jmp 0x590564f8
push str.www.126.com
jmp 0x590564f8
push str.briefcase.yahoo.com
jmp 0x590564f8
mov eax, ebp
sub eax, 0x102
je 0x5905642f
sub eax, 0x10
jne case.0x590564a6.413
push 0x5918ec9c
jmp 0x590564f8
push str.www.qianlong.com
jmp 0x590564f8
push str.www.56.com
jmp 0x590564f8
lea eax, [ebp - 0x132]
cmp eax, 0x40
ja case.0x590564a6.413
xor ecx, ecx
mov cl, byte [eax + 0x59056d80]
jmp dword [ecx*4 + 0x59056d68]
push 0x5918ec44
jmp 0x590564f8
push str.www.mofile.com_cn
jmp 0x590564f8
push str.www.toodou.com
jmp 0x590564f8
push str.www.vdisk.cn
jmp 0x590564f8
push str.www.ys168.com
jmp 0x590564f8
push str.www.aeeboo.com
jmp 0x590564f8
lea eax, [ebp - 0x192]
cmp eax, 0xa0
ja case.0x590564a6.413
xor edx, edx
mov dl, byte [eax + 0x59056df4]
jmp dword [edx*4 + 0x59056dc4]
push str.www.gbaopan.com
jmp 0x590564f8
push 0x5918eb68
jmp 0x590564f8
push 0x5918eb4c
jmp 0x590564f8
push 0x5918eb2c
jmp 0x590564f8
push 0x5918eb08
jmp 0x590564f8
push str.www.dadangao.com
jmp 0x590564f8
push 0x5918eac8
jmp 0x590564f8
push str.www.gbdisk.com
jmp 0x590564f8
push 0x5918ea88
jmp 0x590564f8
push 0x5918ea6c
jmp 0x590564f8
push 0x5918ea40
lea ecx, [esp + 0x14]
call fcn.590a64c0
mov edi, str.Cookie:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.Cookie:
push esi
push ebx
call fcn.5900d6d0
add esp, 0x10
cmp eax, 0xffffffff
je 0x590566d0
mov eax, dword [0x5916287c]
mov dword [esp + 0x1c], eax
cmp ebp, 0x1b2
mov byte [esp + 0x88], 5
jg 0x59056590
je case.0x590565a3.450
cmp ebp, 0x122
jg 0x59056579
je 0x59056572
cmp ebp, 0x12
je 0x5905656b
cmp ebp, 0x42
je 0x59056564
cmp ebp, 0x72
jne case.0x590565a3.452
push str.TOM_USERNAME
jmp 0x590565b6
push str.MAIL163_SSN
jmp 0x590565b6
push str.MAIL126_SSN
jmp 0x590565b6
push str.member_id
jmp 0x590565b6
mov eax, ebp
sub eax, 0x142
je 0x59056589
sub eax, 0x60
je case.0x590565a3.450
jmp case.0x590565a3.452
push str.uname
jmp 0x590565b6
lea eax, [ebp - 0x1c2]
cmp eax, 0x40
ja case.0x590565a3.452
xor ecx, ecx
mov cl, byte [eax + 0x59056ea4]
jmp dword [ecx*4 + 0x59056e98]
push str.username
jmp 0x590565b6
push str.user_name
lea ecx, [esp + 0x20]
call fcn.590a1120
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx - 8]
test eax, eax
je 0x590566b8
mov edx, dword [esp + 0x94]
push eax
push ecx
push edx
push ebx
call fcn.5900d6d0
mov esi, eax
add esp, 0x10
cmp esi, 0xffffffff
je 0x590566b8
mov eax, dword [esp + 0x1c]
xor ecx, ecx
mov edi, dword [eax - 8]
lea edx, [edi + esi]
add edx, ebx
mov ebx, dword [esp + 0x94]
mov al, byte [edx]
cmp al, 0x3b
je 0x5905661e
cmp al, 0xd
je 0x5905661e
mov eax, ebx
sub eax, edi
sub eax, esi
cmp ecx, eax
jge 0x5905661e
mov al, byte [ecx + edx + 1]
inc ecx
cmp al, 0x3b
jne 0x59056607
sub ebx, edi
sub ebx, esi
cmp ecx, ebx
jl 0x59056637
mov byte [esp + 0x88], 4
lea ecx, [esp + 0x1c]
jmp 0x59056cf3
push ecx
push edx
lea ecx, [esp + 0x38]
call fcn.590a0970
push ecx
lea edx, [esp + 0x34]
mov bl, 6
mov ecx, esp
mov dword [esp + 0x50], esp
push edx
mov byte [esp + 0x90], bl
call fcn.590a0490
lea eax, [esp + 0x48]
mov byte [esp + 0x8c], bl
push eax
call fcn.5900b190
add esp, 8
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0x8c], 8
call fcn.590a1040
lea ecx, [esp + 0x44]
mov byte [esp + 0x88], bl
call fcn.590a0ec0
mov ecx, dword [esp + 0x30]
push ecx
lea ecx, [esp + 0x24]
call fcn.590a65a0
lea ecx, [esp + 0x30]
mov byte [esp + 0x88], 5
call fcn.590a0ec0
mov ebx, dword [esp + 0x90]
lea ecx, [esp + 0x1c]
mov byte [esp + 0x88], 4
call fcn.590a0ec0
mov esi, dword [esp + 0x94]
push str.Content_Type:_multipart_form_data__boundary
push esi
push ebx
call fcn.5900f930
mov edx, eax
add esp, 0xc
cmp edx, 0xffffffff
je 0x59056cf8
mov edi, str.Content_Type:_multipart_form_data__boundary
or ecx, 0xffffffff
xor eax, eax
push 0x59188854
repne scasb al, byte es:[edi]
not ecx
dec ecx
add edx, ecx
mov ecx, esi
sub ecx, edx
lea eax, [edx + ebx]
push ecx
push eax
mov dword [esp + 0x48], eax
call fcn.5900f930
add esp, 0xc
cmp eax, 0xffffffff
mov dword [esp + 0x30], eax
je 0x59056cf8
push 0x591892bc
push esi
push ebx
call fcn.5900f930
mov edx, eax
add esp, 0xc
cmp edx, 0xffffffff
je 0x59056cf8
mov edi, 0x591892bc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x94]
not ecx
dec ecx
add edx, ecx
xor ecx, ecx
add ebx, edx
sub eax, edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x18], ecx
lea edx, [esp + 0x18]
lea ecx, [esp + 0x2c]
push edx
mov edx, dword [esp + 0x34]
push ecx
mov ecx, dword [esp + 0x44]
push edx
push ecx
push eax
push ebx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], eax
call fcn.5900d630
mov esi, eax
mov eax, dword [0x5916287c]
add esp, 0x18
mov dword [esp + 0x14], eax
mov byte [esp + 0x88], 9
mov dword [esp + 0x28], eax
cmp ebp, 0x182
mov byte [esp + 0x88], 0xa
jg 0x59056892
je 0x5905688b
cmp ebp, 0x122
jg 0x5905683f
je 0x59056835
cmp ebp, 0xd2
jg 0x59056822
je case.0x59056856.309
cmp ebp, 0x12
je 0x59056806
cmp ebp, 0x42
je 0x59056806
cmp ebp, 0x72
jne case.0x590568a8.406
push str.file
lea ecx, [esp + 0x18]
call fcn.590a1120
push 0x5918ea04
lea ecx, [esp + 0x2c]
jmp 0x590568cd
push str.file
lea ecx, [esp + 0x18]
call fcn.590a1120
push str.uploadfile
lea ecx, [esp + 0x2c]
jmp 0x590568cd
mov eax, ebp
sub eax, 0x102
je case.0x59056856.306
sub eax, 0x10
je case.0x59056856.309
jmp case.0x590568a8.406
push str.movie
jmp 0x590568c9
add ebp, 0xfffffece
cmp ebp, 0x40
ja case.0x590568a8.406
xor edx, edx
mov dl, byte [ebp + 0x59056efc]
jmp dword [edx*4 + 0x59056ee8]
push str.file
jmp 0x590568c9
push 0x5918e9e8
jmp 0x590568c9
push str.filename
lea ecx, [esp + 0x18]
call fcn.590a1120
push str.myfile
lea ecx, [esp + 0x2c]
jmp 0x590568cd
push str.upfile
jmp 0x590568c9
push str.file_
jmp 0x590568c9
add ebp, 0xfffffe6e
cmp ebp, 0xa0
ja case.0x590568a8.406
xor eax, eax
mov al, byte [ebp + 0x59056f54]
jmp dword [eax*4 + 0x59056f40]
push 0x5918e9b8
jmp 0x590568c9
push str.m_file
jmp 0x590568c9
push str.upload_upfile
jmp 0x590568c9
push str.filedata
lea ecx, [esp + 0x18]
call fcn.590a1120
test esi, esi
je 0x59056c9a
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x18]
test eax, eax
je 0x59056c9a
mov ecx, dword [0x5916287c]
mov dword [esp + 0x1c], ecx
lea edx, [esp + 0x1c]
lea eax, [esp + 0x18]
push edx
push eax
push esi
mov byte [esp + 0x94], 0xb
call fcn.5900f830
add esp, 0xc
test eax, eax
je 0x59056c57
mov eax, dword [esp + 0x18]
push 0x591892bc
push eax
push esi
call fcn.5900f930
mov ebp, eax
add esp, 0xc
cmp ebp, 0xffffffff
je 0x59056c57
mov edi, 0x591892bc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x18]
not ecx
dec ecx
add ebp, ecx
sub eax, ebp
test eax, eax
jle 0x59056c57
mov eax, dword [esp + 0x1c]
push str.userid
push eax
call fcn.59088717
add esp, 8
test eax, eax
jne 0x590569b2
cmp dword [esp + 0x98], 0x162
jne 0x590569b2
mov ecx, dword [esp + 0x18]
lea edx, [esi + ebp]
sub ecx, ebp
push ecx
push edx
lea ecx, [esp + 0x48]
call fcn.590a5cf0
lea eax, [esp + 0x40]
lea ecx, [esp + 0x20]
push eax
mov byte [esp + 0x8c], 0xc
call fcn.590a63d0
lea ecx, [esp + 0x40]
mov byte [esp + 0x88], 0xb
call fcn.590a6240
mov ecx, dword [esp + 0x1c]
push str..briefcaseID
push ecx
call fcn.59088717
add esp, 8
test eax, eax
jne 0x59056a10
cmp dword [esp + 0x98], 0xd2
jne 0x59056a10
mov edx, dword [esp + 0x18]
lea eax, [esi + ebp]
sub edx, ebp
lea ecx, [esp + 0x44]
push edx
push eax
call fcn.590a5cf0
lea ecx, [esp + 0x44]
mov byte [esp + 0x88], 0xd
push ecx
lea ecx, [esp + 0x24]
call fcn.590a63d0
lea ecx, [esp + 0x44]
mov byte [esp + 0x88], 0xb
call fcn.590a6240
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov ecx, dword [eax - 8]
mov edi, dword [edx - 8]
push ecx
push eax
push edi
push edx
call fcn.59075b80
add esp, 0x10
test eax, eax
jne 0x59056a50
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x1c]
mov ecx, dword [eax - 8]
mov edi, dword [edx - 8]
push ecx
push eax
push edi
push edx
call fcn.59075b80
add esp, 0x10
test eax, eax
je 0x59056c57
mov edx, dword [esp + 0x18]
push str.filename_
push edx
push esi
call fcn.5900f930
mov edx, eax
add esp, 0xc
cmp edx, 0xffffffff
je 0x59056c57
mov edi, str.filename_
or ecx, 0xffffffff
xor eax, eax
push 0x591888e8
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x1c]
not ecx
dec ecx
add edx, ecx
sub eax, edx
lea edi, [edx + esi]
push eax
push edi
call fcn.5900f930
add esp, 0xc
cmp eax, 0xffffffff
je 0x59056c57
push eax
push edi
lea ecx, [esp + 0x2c]
call fcn.590a0970
mov ecx, dword [esp + 0x24]
mov byte [esp + 0x88], 0xe
mov eax, dword [ecx - 8]
test eax, eax
je 0x59056c46
push 0x5c
lea ecx, [esp + 0x28]
call fcn.590a2010
inc eax
lea edx, [esp + 0x38]
push eax
push edx
lea ecx, [esp + 0x2c]
call fcn.590a30b0
mov eax, dword [0x5916287c]
mov byte [esp + 0x88], 0xf
mov dword [esp + 0x3c], eax
push 0x2e
lea ecx, [esp + 0x3c]
mov byte [esp + 0x8c], 0x10
call fcn.590a2010
cmp eax, 0xffffffff
je 0x59056b39
inc eax
lea ecx, [esp + 0x48]
push eax
push ecx
lea ecx, [esp + 0x40]
call fcn.590a30b0
push eax
lea ecx, [esp + 0x40]
mov byte [esp + 0x8c], 0x11
call fcn.590a1040
lea ecx, [esp + 0x48]
mov byte [esp + 0x88], 0x10
call fcn.590a0ec0
mov edx, dword [esp + 0x3c]
lea eax, [esp + 0x4c]
push edx
push eax
call fcn.59059db0
add esp, 8
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0x8c], 0x12
call fcn.590a1040
lea ecx, [esp + 0x4c]
mov byte [esp + 0x88], 0x10
call fcn.590a0ec0
mov eax, dword [esp + 0x9c]
test eax, eax
jne 0x59056bb4
mov ecx, dword [esp + 0x24]
push 0x180
push 0x8101
push ecx
call fcn.5908928d
mov edi, eax
add esp, 0xc
cmp edi, 0xffffffff
je 0x59056c24
mov edx, dword [esp + 0x18]
add esi, ebp
sub edx, ebp
push edx
push esi
push edi
call fcn.5908909d
push edi
call fcn.59088fbd
add esp, 0x10
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x60]
sub eax, ebp
push eax
mov eax, dword [esp + 0x68]
push eax
call fcn.590b3c80
mov ecx, dword [esp + 0x24]
push ecx
lea ecx, [esp + 0x38]
call fcn.590a5940
mov eax, dword [esp + 0x54]
lea edx, [esp + 0x34]
push edx
push eax
lea ecx, [esp + 0x58]
mov byte [esp + 0x90], 0x13
call fcn.590ac1d0
mov ecx, dword [esp + 0x38]
push ecx
lea ecx, [esp + 0x38]
call fcn.590a65a0
mov eax, dword [esp + 0x74]
lea edx, [esp + 0x34]
push edx
push eax
lea ecx, [esp + 0x78]
call fcn.590ac1d0
lea ecx, [esp + 0x34]
mov byte [esp + 0x88], 0x10
call fcn.590a6240
lea ecx, [esp + 0x3c]
mov byte [esp + 0x88], 0xf
call fcn.590a0ec0
lea ecx, [esp + 0x38]
mov byte [esp + 0x88], 0xe
call fcn.590a0ec0
lea ecx, [esp + 0x24]
mov byte [esp + 0x88], 0xb
call fcn.590a0ec0
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x98]
push edx
mov edx, dword [esp + 0x98]
push eax
push ebx
push ecx
push edx
call fcn.5900d630
add esp, 0x18
lea ecx, [esp + 0x1c]
mov esi, eax
mov byte [esp + 0x88], 0xa
call fcn.590a0ec0
test esi, esi
jne 0x590568de
mov eax, dword [esp + 0x54]
test eax, eax
je 0x59056cd6
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x59056cb5
mov dword [eax], 1
jmp 0x59056cd6
lea eax, [esp + 0x60]
lea ecx, [esp + 0x50]
push eax
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x74]
push ecx
mov ecx, dword [esp + 0x28]
push edx
push eax
push ecx
call fcn.59056090
add esp, 0x14
lea ecx, [esp + 0x28]
mov byte [esp + 0x88], 9
call fcn.590a0ec0
mov byte [esp + 0x88], 4
lea ecx, [esp + 0x14]
call fcn.590a0ec0
lea ecx, [esp + 0x60]
mov byte [esp + 0x88], 3
call fcn.590b3a50
lea ecx, [esp + 0x50]
mov byte [esp + 0x88], 2
call fcn.590abbd0
lea ecx, [esp + 0x70]
mov byte [esp + 0x88], 1
call fcn.590abbd0
lea ecx, [esp + 0x10]
mov byte [esp + 0x88], 0
call fcn.590a6240
lea ecx, [esp + 0x20]
mov dword [esp + 0x88], 0xffffffff
call fcn.590a6240
mov ecx, dword [esp + 0x80]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x7c
ret