Function at 0x404ba4
Capabilities:
Extract http body

Disassembly:
mov eax, 0x419dc0
call fcn.00418ba0
sub esp, 0x138
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
xor edi, edi
mov dword [ebp - 0xbc], edi
mov dword [ebp - 4], edi
lea esi, [ebp - 0x50]
call fcn.00407de4
lea esi, [ebp - 0xa8]
call fcn.00407de4
lea eax, [ebp - 0x104]
push eax
call dword [0x41a1dc]
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
lea edx, [ebp - 0x104]
push edx
push edx
push edx
push edx
push str.http:__www.baidu.com_
push eax
call dword [ecx + 0x2c]
mov dword [ebp - 0xc4], edi
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
lea edx, [ebp - 0xc4]
push edx
push eax
call dword [ecx + 0xe0]
cmp eax, edi
jl 0x405f19
cmp dword [ebp - 0xc4], 4
jne 0x405f19
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
lea edx, [ebp - 0x20]
push edx
push eax
call dword [ecx + 0x48]
cmp eax, edi
jne 0x405812
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x44]
push edx
push 0x41a438
push eax
call dword [ecx]
cmp eax, edi
jne 0x405801
mov dword [ebp - 0x30], edi
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
lea edx, [ebp - 0x30]
push edx
push eax
call dword [ecx + 0x20]
cmp eax, edi
jne 0x4057f0
mov eax, dword [ebp - 0x30]
cmp eax, edi
je 0x4057f0
mov ecx, dword [eax]
lea edx, [ebp - 0x58]
push edx
push eax
call dword [ecx + 0x24]
cmp eax, edi
jne 0x4057f0
mov dword [ebp - 0xc0], edi
mov dword [ebp - 0x5c], edi
mov ebx, dword [0x41a280]
mov eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x58]
jge 0x4057f6
push 0x17
pop eax
mov word [ebp - 0x124], ax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x11c], eax
lea eax, [ebp - 0x144]
push eax
call dword [0x41a1dc]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
lea edx, [ebp - 0x18]
push edx
sub esp, 0x10
lea esi, [ebp - 0x144]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
lea esi, [ebp - 0x124]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
call dword [ecx + 0x2c]
test eax, eax
jne 0x4057dd
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x14]
push edx
push 0x41a3f8
push eax
call dword [ecx]
test eax, eax
jne 0x4057d4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0x3c]
push edx
push eax
call dword [ecx + 0x38]
lea esi, [ebp - 0x2c]
call fcn.00407de4
push dword [ebp - 0x3c]
mov eax, esi
push eax
call fcn.00407e6e
mov eax, esi
call fcn.00407fcc
push eax
mov edi, str.INPUT
call fcn.004081cb
pop ecx
test al, al
je 0x4054b5
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x40]
push edx
push 0x41a428
push eax
call dword [ecx]
test eax, eax
jne 0x405198
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax]
lea edx, [ebp - 0x3c]
push edx
push eax
call dword [ecx + 0x2c]
push dword [ebp - 0x3c]
lea eax, [ebp - 0xa8]
push eax
call fcn.00407e6e
lea esi, [ebp - 0xac]
call fcn.00407de4
lea eax, [ebp - 0xf4]
push eax
call dword [0x41a1dc]
push 0x41ceb0
call dword [0x41a1f4]
mov esi, eax
test esi, esi
jne 0x404dbe
push 0x8007000e
call fcn.0040e64a
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0xf4]
push edx
push 0
push esi
push eax
call dword [ecx + 0x20]
mov edi, eax
push esi
call dword [0x41a1f0]
xor esi, esi
cmp edi, esi
jne 0x404df3
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0xac]
push eax
call fcn.0040889a
lea eax, [ebp + 0x2c]
push eax
mov ecx, 0x41ceb8
call fcn.00408409
test eax, eax
je 0x404e32
lea eax, [ebp + 0x2c]
push eax
mov ecx, 0x41cebc
call fcn.00408409
test eax, eax
je 0x40516f
lea eax, [ebp + 0x2c]
push eax
mov ecx, dword [ebp - 0xac]
call fcn.00408409
test eax, eax
jne 0x40516f
lea eax, [ebp - 0xa8]
call fcn.00407ff5
push eax
mov ecx, dword [ebp + 0xc]
call fcn.00408409
test eax, eax
jne 0x40516f
cmp dword [ebp - 0xc0], esi
jne 0x40516f
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x28]
push edx
push 0x41a408
push eax
call dword [ecx]
cmp eax, esi
jne 0x40516f
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc8]
push 0x64
pop edi
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x78], 0x1e
mov dword [ebp - 0x90], esi
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
lea edx, [ebp - 0x90]
push edx
push eax
call dword [ecx + 0xb0]
test eax, eax
js 0x404ecd
mov eax, dword [ebp - 0x90]
cmp eax, esi
je 0x404ecd
mov ecx, dword [eax]
lea edx, [ebp - 0x78]
push edx
push eax
call dword [ecx + 0x28]
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax]
lea edx, [ebp - 0x74]
push edx
push eax
call dword [ecx + 0x20]
add dword [ebp - 0x74], 5
add dword [ebp - 0x78], 2
cmp dword [ebp + 0x18], esi
je 0x404f28
movzx eax, word [ebp - 0x78]
shl eax, 0x10
movzx ecx, word [ebp - 0x74]
or eax, ecx
push eax
push 1
push 0x201
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
idiv edi
push edx
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x78]
shl eax, 0x10
movzx ecx, word [ebp - 0x74]
or eax, ecx
push eax
push 1
push 0x202
push dword [ebp + 0x18]
call ebx
push 0x1f4
call fcn.00401eb6
pop ecx
mov dword [ebp - 0x88], esi
mov eax, dword [ebp - 0x28]
cmp eax, esi
je 0x404f46
mov ecx, dword [eax]
lea edx, [ebp - 0x88]
push edx
push 0x41e700
push eax
call dword [ecx]
mov dword [ebp - 0x7c], esi
mov eax, dword [ebp - 0x44]
cmp eax, esi
je 0x404f5e
mov ecx, dword [eax]
lea edx, [ebp - 0x7c]
push edx
push 0x41e710
push eax
call dword [ecx]
mov dword [ebp - 0x94], esi
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
lea edx, [ebp - 0x94]
push edx
push esi
push eax
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0x94]
cmp eax, esi
je 0x404fae
mov dword [ebp - 0x12c], eax
mov dword [ebp - 0x98], esi
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
lea edx, [ebp - 0x98]
push edx
lea edx, [ebp - 0x134]
push edx
push 0x41cec0
push eax
call dword [ecx + 0x7c]
mov dword [ebp - 4], esi
jmp 0x404fc3
push 0
call fcn.0041024e
push eax
call fcn.0041021b
pop ecx
pop ecx
push 0x41ced4
lea eax, [ebp - 0x50]
push eax
call fcn.00407e6e
xor ecx, ecx
mov dword [ebp - 0x34], ecx
mov eax, dword [ebp + 8]
cmp ecx, dword [eax - 0xc]
jge 0x405101
xor esi, esi
cmp ecx, esi
jl 0x4050f7
cmp ecx, dword [eax - 0xc]
jg 0x4050f7
movzx eax, word [eax + ecx*2]
push eax
lea edi, [ebp - 0x50]
lea eax, [ebp - 0x9c]
call fcn.00408192
pop ecx
call fcn.00407e2d
mov eax, dword [ebp - 0x9c]
add eax, 0xfffffff0
call fcn.00408ab8
mov ecx, dword [ebp - 0x50]
cmp dword [ecx - 4], 1
jle 0x405042
push dword [ecx - 0xc]
mov eax, edi
push eax
call fcn.00408ad0
mov ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
push ecx
push eax
call dword [edx + 0x20]
call fcn.0041022d
and eax, 0x80000003
jns 0x40505d
dec eax
or eax, 0xfffffffc
inc eax
imul eax, eax, 0x96
add eax, 0x64
push eax
call fcn.00401eb6
pop ecx
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc8]
mov byte [ebp - 4], 3
mov dword [ebp - 0xa0], esi
mov eax, dword [ebp - 0x7c]
mov ecx, dword [eax]
lea edx, [ebp - 0xa0]
push edx
push esi
push eax
call dword [ecx + 0x3c]
mov eax, dword [ebp - 0xa0]
cmp eax, esi
je 0x4050d9
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0xa4], esi
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax]
lea edx, [ebp - 0xa4]
push edx
lea edx, [ebp - 0x114]
push edx
push str.onkeydown
push eax
call dword [ecx + 0x7c]
mov eax, dword [ebp - 0xa0]
cmp eax, esi
je 0x4050d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], esi
jmp 0x4050ee
mov ecx, dword [ebp - 0x34]
inc ecx
jmp 0x404fe2
push 0x80070057
jmp 0x404db9
call fcn.0041022d
cdq
push 3
pop ecx
idiv ecx
imul edx, edx, 0xfa
add edx, 0xc8
push edx
call fcn.00401eb6
pop ecx
mov dword [ebp - 0xc0], 1
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
test eax, eax
je 0x405142
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x7c]
test eax, eax
je 0x40514f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x88]
test eax, eax
je 0x40515f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x90]
test eax, eax
je 0x40516f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea eax, [ebp - 0xf4]
push eax
call dword [0x41a1e0]
mov eax, dword [ebp - 0xac]
add eax, 0xfffffff0
call fcn.00408ab8
jmp 0x4057c9
lea eax, [ebp - 0xd4]
push eax
call dword [0x41a1dc]
push 0x41ceec
call dword [0x41a1f4]
mov esi, eax
test esi, esi
je 0x404db4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0xd4]
push edx
push 0
push esi
push eax
call dword [ecx + 0x20]
mov edi, eax
push esi
call dword [0x41a1f0]
test edi, edi
jne 0x4054aa
lea esi, [ebp - 0xb8]
call fcn.00407de4
lea eax, [ebp - 0xd4]
push eax
mov eax, esi
push eax
call fcn.0040889a
mov eax, esi
call fcn.00407fcc
push eax
mov edi, 0x41cef8
call fcn.004081cb
pop ecx
test al, al
je 0x40549c
push 0x41cf00
call dword [0x41a1f4]
mov edi, eax
test edi, edi
je 0x404db4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0xd4]
push edx
push 0
push edi
push eax
call dword [ecx + 0x20]
mov esi, eax
push edi
mov edi, dword [0x41a1f0]
call edi
test esi, esi
jne 0x40549c
lea esi, [ebp - 0x1c]
call fcn.00407de4
lea esi, [ebp - 0xb0]
call fcn.00407de4
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.0040889a
push 0x41cf0c
call dword [0x41a1f4]
mov esi, eax
test esi, esi
je 0x404db4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0xd4]
push edx
push 0
push esi
push eax
call dword [ecx + 0x20]
mov dword [ebp - 0x34], eax
push esi
call edi
xor edi, edi
cmp dword [ebp - 0x34], edi
jne 0x4052b9
lea eax, [ebp - 0xd4]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.0040889a
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x41cf18
call fcn.00408409
test eax, eax
je 0x4052db
lea eax, [ebp - 0x1c]
push eax
mov ecx, dword [ebp + 0x10]
call fcn.00408409
test eax, eax
je 0x405316
lea eax, [ebp - 0x1c]
push eax
mov ecx, 0x41cf1c
call fcn.00408409
test eax, eax
jne 0x405483
lea eax, [ebp + 0x14]
call fcn.00407fcc
mov esi, eax
lea eax, [ebp - 0xb0]
call fcn.00407fcc
mov ecx, dword [esi]
push eax
call fcn.00408409
test eax, eax
jne 0x405483
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x70]
push edx
push 0x41a408
push eax
call dword [ecx]
cmp eax, edi
jne 0x40547d
mov dword [ebp - 0x4c], 0x64
mov dword [ebp - 0x64], 0x1e
mov dword [ebp - 0x84], edi
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
lea edx, [ebp - 0x84]
push edx
push eax
call dword [ecx + 0xb0]
test eax, eax
js 0x40537e
mov eax, dword [ebp - 0x84]
cmp eax, edi
je 0x40537e
mov ecx, dword [eax]
lea edx, [ebp - 0x64]
push edx
push eax
call dword [ecx + 0x28]
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
lea edx, [ebp - 0x4c]
push edx
push eax
call dword [ecx + 0x20]
push edi
call fcn.0041024e
push eax
call fcn.0041021b
pop ecx
pop ecx
call fcn.0041022d
and eax, 0x80000007
jns 0x40539d
dec eax
or eax, 0xfffffff8
inc eax
mov ecx, dword [ebp - 0x4c]
lea eax, [ecx + eax + 1]
mov dword [ebp - 0x4c], eax
call fcn.0041022d
and eax, 0x80000003
jns 0x4053b8
dec eax
or eax, 0xfffffffc
inc eax
mov ecx, dword [ebp - 0x64]
lea eax, [ecx + eax + 1]
mov dword [ebp - 0x64], eax
cmp dword [ebp + 0x18], edi
je 0x405464
movzx eax, ax
shl eax, 0x10
movzx ecx, word [ebp - 0x4c]
or eax, ecx
push eax
push 1
mov edi, 0x201
push edi
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
push 0x64
pop ecx
idiv ecx
push edx
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x64]
shl eax, 0x10
movzx ecx, word [ebp - 0x4c]
or eax, ecx
push eax
push 1
lea esi, [edi + 1]
push esi
push dword [ebp + 0x18]
call ebx
push 0xc8
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x64]
shl eax, 0x10
movzx ecx, word [ebp - 0x4c]
or eax, ecx
push eax
push 1
push edi
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
push 0x64
pop ecx
idiv ecx
push edx
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x64]
shl eax, 0x10
movzx ecx, word [ebp - 0x4c]
or eax, ecx
push eax
push 1
push esi
push dword [ebp + 0x18]
call ebx
push 0x3e8
call fcn.00401eb6
pop ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x84]
test eax, eax
je 0x40547d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb0]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0xb8]
add eax, 0xfffffff0
call fcn.00408ab8
lea eax, [ebp - 0xd4]
jmp 0x4057c2
lea eax, [ebp - 0x2c]
call fcn.00407ff5
push eax
mov edi, str.button
call fcn.004081cb
pop ecx
test al, al
je 0x4057c9
lea eax, [ebp - 0xe4]
push eax
call dword [0x41a1dc]
push str.type
call dword [0x41a1f4]
mov esi, eax
test esi, esi
je 0x404db4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0xe4]
push edx
push 0
push esi
push eax
call dword [ecx + 0x20]
mov edi, eax
push esi
call dword [0x41a1f0]
test edi, edi
jne 0x4057bc
lea esi, [ebp - 0x68]
call fcn.00407de4
lea eax, [ebp - 0xe4]
push eax
mov eax, esi
push eax
call fcn.0040889a
mov eax, esi
call fcn.00407fcc
push eax
mov edi, str.SUBMIT
call fcn.004081cb
pop ecx
test al, al
je 0x4057b1
push str.value
call dword [0x41a1f4]
mov edi, eax
test edi, edi
je 0x404db4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0xe4]
push edx
push 0
push edi
push eax
call dword [ecx + 0x20]
mov esi, eax
push edi
mov edi, dword [0x41a1f0]
call edi
test esi, esi
jne 0x4057b1
lea esi, [ebp - 0x24]
call fcn.00407de4
lea esi, [ebp - 0x60]
call fcn.00407de4
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.0040889a
push str.name
call dword [0x41a1f4]
mov esi, eax
test esi, esi
je 0x404db4
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
lea edx, [ebp - 0xe4]
push edx
push 0
push esi
push eax
call dword [ecx + 0x20]
mov dword [ebp - 0x34], eax
push esi
call edi
xor edi, edi
cmp dword [ebp - 0x34], edi
jne 0x4055e9
lea eax, [ebp - 0xe4]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.0040889a
lea eax, [ebp - 0x24]
push eax
mov ecx, 0x41cf54
call fcn.00408409
test eax, eax
je 0x40560b
lea eax, [ebp - 0x24]
push eax
mov ecx, dword [ebp + 0x10]
call fcn.00408409
test eax, eax
je 0x405643
lea eax, [ebp - 0x24]
push eax
mov ecx, 0x41cf58
call fcn.00408409
test eax, eax
jne 0x40579b
lea eax, [ebp + 0x14]
call fcn.00407fcc
mov esi, eax
lea eax, [ebp - 0x60]
call fcn.00407fcc
mov ecx, dword [esi]
push eax
call fcn.00408409
test eax, eax
jne 0x40579b
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x6c]
push edx
push 0x41a408
push eax
call dword [ecx]
cmp eax, edi
jne 0x405795
mov dword [ebp - 0x48], 0x64
mov dword [ebp - 0x54], 0x1e
mov dword [ebp - 0x80], edi
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
lea edx, [ebp - 0x80]
push edx
push eax
call dword [ecx + 0xb0]
test eax, eax
js 0x40569f
mov eax, dword [ebp - 0x80]
cmp eax, edi
je 0x40569f
mov ecx, dword [eax]
lea edx, [ebp - 0x54]
push edx
push eax
call dword [ecx + 0x28]
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
lea edx, [ebp - 0x48]
push edx
push eax
call dword [ecx + 0x20]
push edi
call fcn.0041024e
push eax
call fcn.0041021b
pop ecx
pop ecx
call fcn.0041022d
and eax, 0x80000007
jns 0x4056be
dec eax
or eax, 0xfffffff8
inc eax
mov ecx, dword [ebp - 0x48]
lea eax, [ecx + eax + 1]
mov dword [ebp - 0x48], eax
call fcn.0041022d
cdq
push 3
pop ecx
idiv ecx
mov eax, dword [ebp - 0x54]
lea eax, [eax + edx + 1]
mov dword [ebp - 0x54], eax
cmp dword [ebp + 0x18], edi
je 0x40577f
movzx eax, ax
shl eax, 0x10
movzx ecx, word [ebp - 0x48]
or eax, ecx
push eax
push 1
mov edi, 0x201
push edi
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
push 0x64
pop ecx
idiv ecx
push edx
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x54]
shl eax, 0x10
movzx ecx, word [ebp - 0x48]
or eax, ecx
push eax
push 1
lea esi, [edi + 1]
push esi
push dword [ebp + 0x18]
call ebx
push 0xc8
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x54]
shl eax, 0x10
movzx ecx, word [ebp - 0x48]
or eax, ecx
push eax
push 1
push edi
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
push 0x64
pop ecx
idiv ecx
push edx
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x54]
shl eax, 0x10
movzx ecx, word [ebp - 0x48]
or eax, ecx
push eax
push 1
push esi
push dword [ebp + 0x18]
call ebx
push 0x3e8
call fcn.00401eb6
pop ecx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x80]
test eax, eax
je 0x405795
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x60]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0x68]
add eax, 0xfffffff0
call fcn.00408ab8
lea eax, [ebp - 0xe4]
push eax
call dword [0x41a1e0]
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
inc dword [ebp - 0x5c]
xor edi, edi
jmp 0x404ca3
mov ebx, dword [0x41a280]
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x405807
mov ebx, dword [0x41a280]
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x405818
mov ebx, dword [0x41a280]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0x38], edi
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
lea edx, [ebp - 0x38]
push edx
push eax
call dword [ecx + 0xe0]
cmp eax, edi
jl 0x405f09
cmp dword [ebp - 0x38], 4
jne 0x405f09
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
lea edx, [ebp - 0x20]
push edx
push eax
call dword [ecx + 0x48]
cmp eax, edi
jne 0x405e25
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x34]
push edx
push 0x41a438
push eax
call dword [ecx]
cmp eax, edi
jne 0x405e1c
mov dword [ebp - 0x3c], edi
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
lea edx, [ebp - 0x3c]
push edx
push eax
call dword [ecx + 0x34]
cmp eax, edi
jne 0x405e13
mov eax, dword [ebp - 0x3c]
cmp eax, edi
je 0x405e13
mov ecx, dword [eax]
lea edx, [ebp - 0xa4]
push edx
push eax
call dword [ecx + 0x24]
cmp eax, edi
jne 0x405e0a
mov dword [ebp - 0xb4], edi
push edi
call fcn.0041024e
push eax
call fcn.0041021b
pop ecx
pop ecx
call fcn.0041022d
cdq
push 3
pop ecx
idiv ecx
inc edx
mov dword [ebp - 0x98], edx
mov dword [ebp - 0x8c], edi
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xa4]
jge 0x405e0a
push 0x17
pop eax
mov word [ebp - 0xf4], ax
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xec], eax
lea eax, [ebp - 0x114]
push eax
call dword [0x41a1dc]
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
lea edx, [ebp - 0x20]
push edx
sub esp, 0x10
lea esi, [ebp - 0x114]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
lea esi, [ebp - 0xf4]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push eax
call dword [ecx + 0x2c]
test eax, eax
jne 0x405d56
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x44]
push edx
push 0x41a418
push eax
call dword [ecx]
test eax, eax
jne 0x405d56
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
lea edx, [ebp - 0x9c]
push edx
push eax
call dword [ecx + 0x20]
test eax, eax
jne 0x405d4d
lea esi, [ebp - 0x14]
call fcn.00407de4
push dword [ebp - 0x9c]
mov eax, esi
push eax
call fcn.00407e6e
push dword [ebp + 0x20]
mov eax, esi
call fcn.00407ff5
xor ecx, ecx
mov esi, eax
call fcn.00407f99
test eax, eax
jle 0x405bae
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x68]
push edx
push 0x41a3f8
push eax
call dword [ecx]
test eax, eax
jne 0x405bae
lea esi, [ebp - 0x30]
call fcn.00407de4
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
lea edx, [ebp - 0x6c]
push edx
push eax
call dword [ecx + 0xf0]
test eax, eax
jne 0x405b9a
cmp dword [ebp - 0x6c], 0x41cf5c
je 0x405b9a
push dword [ebp - 0x6c]
mov eax, esi
push eax
call fcn.00407e6e
lea eax, [ebp + 0x30]
call fcn.00407fcc
push dword [eax]
mov eax, esi
call fcn.00407fcc
xor ecx, ecx
mov esi, eax
call fcn.00407f99
test eax, eax
jns 0x405a37
lea eax, [ebp + 0x30]
call fcn.00407fcc
mov esi, eax
lea eax, [ebp - 0x30]
call fcn.00407fcc
mov ecx, dword [esi]
push eax
call fcn.00408409
test eax, eax
jne 0x405b9a
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
push str._self
push eax
call dword [ecx + 0x24]
xor edi, edi
inc edi
mov dword [ebp - 0xbc], edi
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x70]
push edx
push 0x41a408
push eax
call dword [ecx]
test eax, eax
jne 0x405b9a
push 0x64
pop esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x2c], 0x1e
and dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
lea edx, [ebp - 0x28]
push edx
push eax
call dword [ecx + 0xb0]
test eax, eax
js 0x405aa9
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x405aa9
mov ecx, dword [eax]
lea edx, [ebp - 0x2c]
push edx
push eax
call dword [ecx + 0x28]
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax]
lea edx, [ebp - 0x24]
push edx
push eax
call dword [ecx + 0x20]
call fcn.0041022d
cdq
idiv esi
mov eax, dword [ebp - 0x24]
lea eax, [eax + edx + 1]
mov dword [ebp - 0x24], eax
call fcn.0041022d
cdq
push 5
pop ecx
idiv ecx
mov eax, dword [ebp - 0x2c]
lea eax, [eax + edx + 1]
mov dword [ebp - 0x2c], eax
cmp dword [ebp + 0x18], 0
je 0x405b36
movzx eax, ax
shl eax, 0x10
movzx ecx, word [ebp - 0x24]
or eax, ecx
push eax
push edi
push 0x201
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
mov ecx, 0xc8
idiv ecx
push edx
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x2c]
shl eax, 0x10
movzx ecx, word [ebp - 0x24]
or eax, ecx
push eax
push edi
push 0x202
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
push 0xf
pop ecx
idiv ecx
add edx, 2
imul edx, edx, 0x3e8
push edx
call fcn.00401eb6
pop ecx
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
and dword [ebp - 0x38], 0
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
lea edx, [ebp - 0x38]
push edx
push eax
call dword [ecx + 0xe0]
test eax, eax
js 0x405d63
cmp dword [ebp - 0x38], 4
jne 0x405d63
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x1c]
call fcn.0041022d
cdq
push 0x19
pop ecx
idiv ecx
add edx, 5
imul edx, edx, 0x3e8
push edx
call fcn.00401eb6
pop ecx
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x405b9a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x30]
add eax, 0xfffffff0
call fcn.00408ab8
push dword [ebp + 0x1c]
lea eax, [ebp - 0x14]
call fcn.00407ff5
xor ecx, ecx
mov esi, eax
call fcn.00407f99
cmp eax, 0xffffffff
je 0x405be3
push dword [ebp + 0x20]
lea eax, [ebp - 0x14]
call fcn.00407ff5
xor ecx, ecx
mov esi, eax
call fcn.00407f99
test eax, eax
jle 0x405d73
lea eax, [ebp - 0x14]
call fcn.00407ff5
push eax
mov edi, str.http:__www.baidu.com_cache_sethelp_index.html
call fcn.00408206
pop ecx
test al, al
je 0x405d73
lea eax, [ebp - 0x14]
push eax
mov edi, 0x41cf9c
call fcn.00408206
pop ecx
test al, al
je 0x405d73
mov eax, dword [ebp - 0x98]
cmp dword [ebp - 0xb4], eax
jge 0x405d42
call fcn.0041022d
cdq
push 0x64
pop ecx
idiv ecx
cmp edx, 0x28
jle 0x405d42
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x60]
push edx
push 0x41a408
push eax
call dword [ecx]
test eax, eax
jne 0x405d3c
push 0x64
pop esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], 0x1e
and dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x60]
mov ecx, dword [eax]
lea edx, [ebp - 0x40]
push edx
push eax
call dword [ecx + 0xb0]
test eax, eax
js 0x405c97
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x405c97
mov ecx, dword [eax]
lea edx, [ebp - 0x18]
push edx
push eax
call dword [ecx + 0x28]
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax]
lea edx, [ebp - 0x1c]
push edx
push eax
call dword [ecx + 0x20]
call fcn.0041022d
cdq
idiv esi
mov eax, dword [ebp - 0x1c]
lea eax, [eax + edx + 1]
mov dword [ebp - 0x1c], eax
call fcn.0041022d
cdq
push 5
pop ecx
idiv ecx
mov eax, dword [ebp - 0x18]
lea eax, [eax + edx + 1]
mov dword [ebp - 0x18], eax
cmp dword [ebp + 0x18], 0
je 0x405d26
movzx eax, ax
shl eax, 0x10
movzx ecx, word [ebp - 0x1c]
or eax, ecx
push eax
push 1
push 0x201
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
mov ecx, 0xc8
idiv ecx
push edx
call fcn.00401eb6
pop ecx
movzx eax, word [ebp - 0x18]
shl eax, 0x10
movzx ecx, word [ebp - 0x1c]
or eax, ecx
push eax
push 1
push 0x202
push dword [ebp + 0x18]
call ebx
call fcn.0041022d
cdq
push 0x19
pop ecx
idiv ecx
add edx, 4
imul edx, edx, 0x3e8
push edx
call fcn.00401eb6
pop ecx
mov eax, dword [ebp - 0x60]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x405d3c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
inc dword [ebp - 0xb4]
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0x44]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
inc dword [ebp - 0x8c]
xor edi, edi
jmp 0x4058dc
push 0x1f4
call fcn.00401eb6
pop ecx
jmp 0x405b43
push dword [ebp + 0x24]
lea eax, [ebp - 0x14]
call fcn.00407ff5
xor ecx, ecx
mov esi, eax
call fcn.00407f99
cmp eax, 0xffffffff
jle 0x405d42
push dword [ebp + 0x28]
lea eax, [ebp - 0x14]
call fcn.00407ff5
xor ecx, ecx
mov esi, eax
call fcn.00407f99
test eax, eax
jle 0x405d42
call fcn.0041022d
cdq
push 0x64
pop ecx
idiv ecx
cmp edx, 0x32
jle 0x405d42
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
lea edx, [ebp - 0x58]
push edx
push 0x41a3f8
push eax
call dword [ecx]
test eax, eax
jne 0x405d42
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x114]
call fcn.0041022d
cdq
push 5
pop ecx
idiv ecx
add edx, 2
imul edx, edx, 0x3e8
push edx
call fcn.00401eb6
pop ecx
mov eax, dword [ebp - 0x58]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
add eax, 0xfffffff0
call fcn.00408ab8
xor edi, edi
mov eax, dword [ebp - 0x3c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0x38], edi
mov eax, dword [0x425bc4]
mov ecx, dword [eax]
lea edx, [ebp - 0x38]
push edx
push eax
call dword [ecx + 0xe0]
cmp eax, edi
jl 0x405ef9
cmp dword [ebp - 0x38], 4
jne 0x405ef9
lea eax, [ebp - 0x104]
push eax
call dword [0x41a1e0]
mov eax, dword [ebp - 0xa8]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
call fcn.00408ab8
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp + 8]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0xc]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x10]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x14]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x1c]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x20]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x24]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x28]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x2c]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp + 0x30]
add eax, 0xfffffff0
call fcn.00408ab8
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret
push 0x1f4
call fcn.00401eb6
pop ecx
jmp 0x405e28
push 0x1f4
call fcn.00401eb6
pop ecx
jmp 0x405824
push 0x1f4
call fcn.00401eb6
pop ecx
jmp 0x404c05