Function at 0x558210
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6602c9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x44
push ebx
mov dword [ebp - 0x1c], 0
mov eax, dword [0x700724]
mov edx, dword [eax + 0xc]
push esi
mov dword [ebp - 0x18], ecx
push edi
mov ecx, 0x700724
call edx
add eax, 0x10
mov dword [ebp - 0x34], eax
mov dword [ebp - 4], 1
mov eax, dword [0x700724]
mov edx, dword [eax + 0xc]
mov ecx, 0x700724
call edx
add eax, 0x10
mov dword [ebp - 0x14], eax
mov byte [ebp - 4], 3
mov eax, dword [0x700724]
mov edx, dword [eax + 0xc]
mov ecx, 0x700724
call edx
add eax, 0x10
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 5
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
push 0
lea edi, [esi + esi]
push edi
push ebx
call fcn.005bd2f0
add esp, 0xc
push 0x700724
push esi
push ebx
lea ecx, [ebp - 0x2c]
call fcn.004049b0
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x2c]
call fcn.00433920
mov esi, dword [ebp - 0x2c]
mov eax, dword [esi - 0xc]
mov dword [ebp - 0x38], 0
test eax, eax
jg 0x5582cc
or ebx, 0xffffffff
jmp 0x5582e6
push 0x3b
push esi
call fcn.00611e99
add esp, 8
test eax, eax
jne 0x5582e0
or ebx, 0xffffffff
jmp 0x5582e6
sub eax, esi
sar eax, 1
mov ebx, eax
cmp dword [esi - 0xc], 0
jl 0x55b23f
push 0x675d80
push esi
call fcn.00612c90
add esp, 8
test eax, eax
je 0x55b23f
sub eax, esi
sar eax, 1
mov dword [ebp - 0x3c], eax
cmp eax, 0xffffffff
je 0x55b23f
cmp ebx, 0xffffffff
je 0x55b23f
nop
cmp ebx, dword [ebp - 0x3c]
jge 0x558353
inc dword [ebp - 0x38]
mov ecx, dword [esi - 0xc]
lea eax, [ebx + 1]
test eax, eax
js 0x558353
cmp eax, ecx
jge 0x558353
lea eax, [esi + eax*2]
push 0x3b
push eax
call fcn.00611e99
add esp, 8
test eax, eax
je 0x558353
sub eax, esi
sar eax, 1
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x558320
mov ebx, dword [ebp - 0x38]
cmp ebx, 7
jne 0x5584a8
cmp dword [esi - 0xc], 0
jg 0x55836d
or ebx, 0xffffffff
mov dword [ebp - 0x24], ebx
jmp 0x55838e
push 0x3b
push esi
call fcn.00611e99
add esp, 8
test eax, eax
jne 0x558384
or ebx, 0xffffffff
mov dword [ebp - 0x24], ebx
jmp 0x55838e
sub eax, esi
sar eax, 1
mov dword [ebp - 0x24], eax
or ebx, 0xffffffff
mov ecx, dword [ebp - 0x24]
mov eax, dword [esi - 0xc]
inc ecx
mov dword [ebp - 0x40], ecx
js 0x5583b8
cmp ecx, eax
jge 0x5583b8
lea ecx, [esi + ecx*2]
push 0x3b
push ecx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x5583b8
sub eax, esi
sar eax, 1
mov edi, eax
jmp 0x5583ba
mov edi, ebx
mov ecx, dword [esi - 0xc]
lea eax, [edi + 1]
test eax, eax
js 0x5583e3
cmp eax, ecx
jge 0x5583e3
lea edx, [esi + eax*2]
push 0x3b
push edx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x5583e3
sub eax, esi
sar eax, 1
mov dword [ebp - 0x28], eax
jmp 0x5583e6
mov dword [ebp - 0x28], ebx
mov ecx, dword [ebp - 0x28]
mov eax, dword [esi - 0xc]
inc ecx
mov dword [ebp - 0x44], ecx
js 0x558418
cmp ecx, eax
jge 0x558418
lea eax, [esi + ecx*2]
push 0x3b
push eax
call fcn.00611e99
add esp, 8
test eax, eax
jne 0x55840f
mov eax, ebx
mov dword [ebp - 0x30], eax
jmp 0x55841d
sub eax, esi
sar eax, 1
mov dword [ebp - 0x30], eax
jmp 0x55841d
mov eax, ebx
mov dword [ebp - 0x30], ebx
lea ecx, [eax + 1]
mov eax, dword [esi - 0xc]
mov dword [ebp - 0x48], ecx
test ecx, ecx
js 0x558448
cmp ecx, eax
jge 0x558448
lea ecx, [esi + ecx*2]
push 0x3b
push ecx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x558448
sub eax, esi
sar eax, 1
mov ebx, eax
jmp 0x55844b
or ebx, 0xffffffff
mov ecx, dword [esi - 0xc]
lea eax, [ebx + 1]
test eax, eax
js 0x558471
cmp eax, ecx
jge 0x558471
lea edx, [esi + eax*2]
push 0x3b
push edx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x558471
sub eax, esi
sar eax, 1
jmp 0x558474
or eax, 0xffffffff
inc eax
mov ecx, dword [esi - 0xc]
js 0x558490
cmp eax, ecx
jge 0x558490
lea eax, [esi + eax*2]
push 0x3b
push eax
call fcn.00611e99
add esp, 8
test eax, eax
jne 0x55849c
mov dword [ebp - 0x38], 0xffffffff
jmp 0x55864c
sub eax, esi
sar eax, 1
mov dword [ebp - 0x38], eax
jmp 0x55864c
jle 0x55b23f
cmp dword [esi - 0xc], 0
jg 0x5584bd
mov dword [ebp - 0x24], 0xffffffff
jmp 0x5584dc
push 0x3b
push esi
call fcn.00611e99
add esp, 8
test eax, eax
jne 0x5584d5
mov dword [ebp - 0x24], 0xffffffff
jmp 0x5584dc
sub eax, esi
sar eax, 1
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [esi - 0xc]
inc ecx
mov dword [ebp - 0x40], ecx
js 0x558506
cmp ecx, eax
jge 0x558506
lea ecx, [esi + ecx*2]
push 0x3b
push ecx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x558506
sub eax, esi
sar eax, 1
mov edi, eax
jmp 0x558509
or edi, 0xffffffff
lea eax, [ebx - 7]
test eax, eax
jle 0x558540
mov ebx, eax
mov ecx, dword [esi - 0xc]
lea eax, [edi + 1]
test eax, eax
js 0x55853a
cmp eax, ecx
jge 0x55853a
lea edx, [esi + eax*2]
push 0x3b
push edx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x55853a
sub eax, esi
sar eax, 1
mov edi, eax
jmp 0x55853d
or edi, 0xffffffff
dec ebx
jne 0x558512
mov ecx, dword [esi - 0xc]
lea eax, [edi + 1]
test eax, eax
js 0x558569
cmp eax, ecx
jge 0x558569
lea eax, [esi + eax*2]
push 0x3b
push eax
call fcn.00611e99
add esp, 8
test eax, eax
je 0x558569
sub eax, esi
sar eax, 1
mov dword [ebp - 0x28], eax
jmp 0x558570
mov dword [ebp - 0x28], 0xffffffff
mov ecx, dword [ebp - 0x28]
mov eax, dword [esi - 0xc]
inc ecx
mov dword [ebp - 0x44], ecx
js 0x558598
cmp ecx, eax
jge 0x558598
lea ecx, [esi + ecx*2]
push 0x3b
push ecx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x558598
sub eax, esi
sar eax, 1
jmp 0x55859b
or eax, 0xffffffff
lea ecx, [eax + 1]
mov dword [ebp - 0x30], eax
mov eax, dword [esi - 0xc]
mov dword [ebp - 0x48], ecx
test ecx, ecx
js 0x5585c9
cmp ecx, eax
jge 0x5585c9
lea edx, [esi + ecx*2]
push 0x3b
push edx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x5585c9
sub eax, esi
sar eax, 1
mov ebx, eax
jmp 0x5585cc
or ebx, 0xffffffff
mov ecx, dword [esi - 0xc]
lea eax, [ebx + 1]
test eax, eax
js 0x5585f2
cmp eax, ecx
jge 0x5585f2
lea eax, [esi + eax*2]
push 0x3b
push eax
call fcn.00611e99
add esp, 8
test eax, eax
je 0x5585f2
sub eax, esi
sar eax, 1
jmp 0x5585f5
or eax, 0xffffffff
inc eax
mov ecx, dword [esi - 0xc]
js 0x558617
cmp eax, ecx
jge 0x558617
lea ecx, [esi + eax*2]
push 0x3b
push ecx
call fcn.00611e99
add esp, 8
test eax, eax
je 0x558617
sub eax, esi
sar eax, 1
jmp 0x55861a
or eax, 0xffffffff
mov ecx, dword [esi - 0xc]
mov dword [ebp - 0x38], eax
inc eax
js 0x558645
cmp eax, ecx
jg 0x558645
lea edx, [esi + eax*2]
push 0x675d80
push edx
call fcn.00612c90
add esp, 8
test eax, eax
je 0x558645
sub eax, esi
sar eax, 1
mov dword [ebp - 0x3c], eax
jmp 0x55864c
mov dword [ebp - 0x3c], 0xffffffff
mov esi, dword [ebp - 0x18]
lea eax, [ebp - 0x2c]
push eax
mov ecx, esi
call fcn.004f9820
sub edi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x40]
dec edi
push edi
push ecx
lea edx, [ebp - 0x40]
push edx
lea ecx, [ebp - 0x2c]
call fcn.00405730
mov byte [ebp - 4], 8
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
lea edi, [esi + 0x18]
push eax
mov ecx, edi
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x5586af
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x44]
dec ecx
push ecx
push edx
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00405730
mov byte [ebp - 4], 0xa
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
mov esi, dword [ebp - 0x18]
add esi, 0x20
push eax
mov ecx, esi
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55870a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
sub ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
dec ebx
push ebx
push ecx
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp - 0x2c]
call fcn.00405730
mov byte [ebp - 4], 0xc
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
mov ebx, dword [ebp - 0x18]
add ebx, 0x24
push eax
mov ecx, ebx
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x558762
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x30]
push ecx
push 0x671930
lea edx, [ebp - 0x48]
push edx
mov ecx, esi
mov dword [ebp - 0x30], 0
call fcn.0040d920
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x20]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x5587ad
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x20]
cmp dword [eax - 4], 1
jle 0x5587c5
mov ecx, dword [eax - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00401370
mov eax, dword [ebp - 0x20]
push eax
call fcn.006115cb
mov edx, dword [ebp - 0x18]
add esp, 4
mov word [edx + 0xa], ax
lea eax, [ebp - 0x30]
push eax
push 0x671930
lea ecx, [ebp - 0x48]
push ecx
mov ecx, esi
call fcn.0040d920
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x20]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x558819
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x20]
cmp dword [eax - 4], 1
jle 0x558831
mov ecx, dword [eax - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00401370
mov eax, dword [ebp - 0x20]
push eax
call fcn.006115cb
mov edx, dword [ebp - 0x18]
add esp, 4
mov word [edx + 6], ax
lea eax, [ebp - 0x30]
push eax
push 0x671930
lea ecx, [ebp - 0x48]
push ecx
mov ecx, esi
call fcn.0040d920
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x20]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x558885
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x20]
cmp dword [eax - 4], 1
jle 0x55889d
mov ecx, dword [eax - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00401370
mov eax, dword [ebp - 0x20]
push eax
call fcn.006115cb
mov esi, dword [ebp - 0x18]
add esp, 4
lea edx, [ebp - 0x30]
push edx
mov word [esi + 4], ax
push 0x66e128
lea eax, [ebp - 0x48]
push eax
mov ecx, ebx
mov dword [ebp - 0x30], 0
call fcn.0040d920
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x20]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x5588f8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x20]
cmp dword [eax - 4], 1
jle 0x558910
mov ecx, dword [eax - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00401370
mov eax, dword [ebp - 0x20]
push eax
call fcn.006115cb
add esp, 4
lea edx, [ebp - 0x30]
push edx
mov word [esi + 0xc], ax
push 0x66e128
lea eax, [ebp - 0x48]
push eax
mov ecx, ebx
call fcn.0040d920
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0x20]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x558961
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x20]
cmp dword [eax - 4], 1
jle 0x558979
mov ecx, dword [eax - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00401370
mov eax, dword [ebp - 0x20]
push eax
call fcn.006115cb
add esp, 4
lea edx, [ebp - 0x30]
push edx
mov word [esi + 0xe], ax
push 0x66e128
lea eax, [ebp - 0x48]
push eax
mov ecx, ebx
call fcn.0040d920
mov byte [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0x20]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x5589ca
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x20]
cmp dword [eax - 4], 1
jle 0x5589e2
mov ecx, dword [eax - 0xc]
push ecx
lea ecx, [ebp - 0x20]
call fcn.00401370
mov eax, dword [ebp - 0x20]
push eax
call fcn.006115cb
mov ecx, dword [ebp - 0x3c]
mov word [esi + 0x10], ax
mov eax, dword [ebp - 0x38]
sub ecx, eax
add esp, 4
dec ecx
xor edx, edx
push ecx
inc eax
mov word [esi + 0x12], dx
push eax
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp - 0x2c]
call fcn.00405730
mov byte [ebp - 4], 0x1a
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
lea ecx, [esi + 0x28]
push eax
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x558a4b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 7
lea ecx, [ebp - 0x48]
push ecx
mov ecx, edi
call fcn.00414520
mov byte [ebp - 4], 0x1c
mov eax, dword [eax]
mov ecx, 0x673664
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x558a89
test dx, dx
je 0x558a85
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x558a89
add eax, 4
add ecx, 4
test dx, dx
jne 0x558a63
xor eax, eax
jmp 0x558a8e
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
setne bl
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x558ab6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
test bl, bl
je 0x558b47
push 8
lea ecx, [ebp - 0x48]
push ecx
mov ecx, edi
call fcn.00414520
mov byte [ebp - 4], 0x1e
push str.https:__
push eax
call fcn.00439380
add esp, 8
mov bl, al
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x558b02
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
test bl, bl
je 0x558b47
push edi
lea ecx, [ebp - 0x48]
push 0x673664
push ecx
call fcn.004ee760
add esp, 0xc
mov byte [ebp - 4], 0x20
push eax
mov ecx, edi
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x558b47
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [edi]
push 0x2f
push eax
call fcn.00613b38
add esp, 8
test eax, eax
jne 0x558b5d
or esi, 0xffffffff
jmp 0x558b63
sub eax, dword [edi]
sar eax, 1
mov esi, eax
push esi
lea ecx, [ebp - 0x48]
push ecx
mov ecx, edi
call fcn.00414520
mov byte [ebp - 4], 0x22
push eax
lea ecx, [ebp - 0x34]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x558b9f
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x34]
mov eax, dword [ecx - 0xc]
add eax, 0xfffffff9
push eax
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp - 0x34]
call fcn.00427cb0
mov byte [ebp - 4], 0x24
push eax
lea ecx, [ebp - 0x34]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x558be5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [edi]
mov eax, dword [ecx - 0xc]
sub eax, esi
dec eax
push eax
lea edx, [ebp - 0x48]
push edx
mov ecx, edi
call fcn.00427cb0
mov byte [ebp - 4], 0x26
push eax
lea ecx, [ebp - 0x14]
call fcn.004078d0
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x558c29
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, dword [ebp - 0x18]
mov byte [edi + 0x3c], 0
mov ecx, dword [edi + 0x30]
mov edx, dword [ecx + 4]
push edx
lea ecx, [edi + 0x2c]
call fcn.00464a80
mov eax, dword [edi + 0x30]
mov dword [eax + 4], eax
mov eax, dword [edi + 0x30]
mov dword [eax], eax
mov eax, dword [edi + 0x30]
mov dword [eax + 8], eax
lea eax, [ebp - 0x14]
push 0x66f16a
push eax
mov dword [edi + 0x34], 0
call fcn.0040b580
mov ebx, dword [ebp - 0x34]
add esp, 8
test al, al
je 0x559937
xor esi, esi
mov eax, dword [esi*4 + 0x6fdaa8]
test eax, eax
je 0x558c9d
cmp dword [ebx - 0xc], 0
jl 0x558c9d
push eax
push ebx
call fcn.00612c90
add esp, 8
test eax, eax
je 0x558c9d
sub eax, ebx
sar eax, 1
cmp eax, 0xffffffff
jne 0x558ca8
inc esi
cmp esi, 0xd
jl 0x558c75
jmp 0x559937
mov edx, dword [esi*4 + 0x6fdaa8]
test edx, edx
jne 0x558cb7
xor eax, eax
jmp 0x558ccf
mov eax, edx
lea esi, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x558cc0
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [edi + 0x14]
call fcn.00401670
mov eax, dword [edi + 0x14]
mov ecx, str.google.
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x558d07
test dx, dx
je 0x558d03
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x558d07
add eax, 4
add ecx, 4
test dx, dx
jne 0x558ce1
xor eax, eax
jmp 0x558d0c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
test al, al
jne 0x55a8a3
push str.bing.
lea esi, [edi + 0x14]
push esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a8a3
push str.ask.
push esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a8a3
push str.mail.ru
push esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a8a3
push str.aol.
push esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a8a3
push str.yandex.
push esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a537
push 0x67bf28
push esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a537
push 0x67bf18
push esi
call fcn.004592a0
add esp, 8
test al, al
je 0x559070
lea ecx, [ebp - 0x14]
call fcn.004644a0
mov esi, dword [ebp - 0x14]
cmp dword [esi - 0xc], 0
jge 0x558dcc
or eax, 0xffffffff
jmp 0x558de7
push 0x675d74
push esi
call fcn.00612c90
add esp, 8
test eax, eax
jne 0x558de3
or eax, 0xffffffff
jmp 0x558de7
sub eax, esi
sar eax, 1
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x30]
inc eax
push edx
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x44], eax
call fcn.0040d920
mov byte [ebp - 4], 0x4d
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
je 0x558eef
mov bl, 0x4e
nop
lea ecx, [ebp - 0x48]
push ecx
push 0x67bf10
lea edx, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], bl
lea eax, [ebp - 0x38]
push 0x66f16a
push eax
call fcn.0040b580
add esp, 8
test al, al
je 0x558e9d
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx - 0xc]
sub eax, dword [ebp - 0x48]
lea edx, [ebp - 0x40]
push eax
push edx
lea ecx, [ebp - 0x30]
call fcn.00427cb0
mov byte [ebp - 4], 0x4f
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
mov esi, eax
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x2c]
call fcn.004cb880
push esi
mov ecx, eax
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x40]
call fcn.004014a0
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x50
push eax
lea ecx, [ebp - 0x30]
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x28]
call fcn.004014a0
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x38]
call fcn.004014a0
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
jne 0x558e20
push 0x6711ac
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x51
mov esi, dword [ebp - 0x18]
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x44]
lea edi, [esi + 0x2c]
push edx
mov ecx, edi
call fcn.00464500
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov eax, dword [esi + 0x30]
mov esi, dword [ebp - 0x44]
cmp esi, eax
je 0x5595b4
mov ebx, dword [ebp - 0x18]
lea eax, [esi + 0x10]
push eax
lea ecx, [ebx + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [ebx + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x5595ad
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
je 0x558f8d
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x558f75
xor ebx, ebx
jmp 0x558f8d
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov ebx, eax
push ebx
call fcn.00414340
add esp, 4
push str.that
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x52
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x50]
push ecx
mov ecx, edi
call fcn.00464500
mov edi, dword [eax]
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov eax, dword [ebp - 0x18]
cmp edi, dword [eax + 0x30]
je 0x558fe3
push ebx
add eax, 0x1c
push 0x66ea5c
push eax
call fcn.00405ab0
add esp, 0xc
jmp 0x5595ad
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x558fe8
sub eax, edx
lea edx, [eax*8]
push edx
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x559067
mov eax, ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559013
sub eax, edx
mov edx, eax
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559023
push edx
push esi
sub eax, edi
push eax
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x5595ad
lea eax, [edi + 0x10]
push eax
jmp 0x5595a2
push 0x67beec
push esi
call fcn.004592a0
add esp, 8
test al, al
je 0x5595c5
lea ecx, [ebp - 0x14]
call fcn.004644a0
mov esi, dword [ebp - 0x14]
cmp dword [esi - 0xc], 0
jge 0x55909c
or eax, 0xffffffff
jmp 0x5590b7
push 0x675d74
push esi
call fcn.00612c90
add esp, 8
test eax, eax
jne 0x5590b3
or eax, 0xffffffff
jmp 0x5590b7
sub eax, esi
sar eax, 1
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x30]
inc eax
push edx
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x44], eax
call fcn.0040d920
mov byte [ebp - 4], 0x53
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
je 0x5591bf
mov bl, 0x54
nop
lea ecx, [ebp - 0x48]
push ecx
push 0x67bf10
lea edx, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], bl
lea eax, [ebp - 0x38]
push 0x66f16a
push eax
call fcn.0040b580
add esp, 8
test al, al
je 0x55916d
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx - 0xc]
sub eax, dword [ebp - 0x48]
lea edx, [ebp - 0x40]
push eax
push edx
lea ecx, [ebp - 0x30]
call fcn.00427cb0
mov byte [ebp - 4], 0x55
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
mov esi, eax
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x2c]
call fcn.004cb880
push esi
mov ecx, eax
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x40]
call fcn.004014a0
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x56
push eax
lea ecx, [ebp - 0x30]
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x28]
call fcn.004014a0
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x38]
call fcn.004014a0
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
jne 0x5590f0
push 0x67bee8
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x44]
push edx
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov ebx, dword [ebp - 0x44]
cmp ebx, dword [edi + 0x30]
je 0x55931b
mov esi, dword [ebp - 0x18]
lea edi, [ebx + 0x10]
push edi
lea ecx, [esi + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [esi + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x559303
lea ecx, [ebx + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
je 0x559256
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x55923e
xor ebx, ebx
jmp 0x559256
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov ebx, eax
push ebx
call fcn.00414340
mov eax, ebx
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559264
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x5592f7
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559290
sub eax, edx
mov edx, eax
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5592a0
push edx
push esi
sub eax, edi
push eax
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 0x3c], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
jmp 0x559937
mov ecx, dword [ebp - 0x18]
push edi
add ecx, 0x1c
call fcn.004078d0
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 0x3c], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
jmp 0x559937
push 0x67bee4
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x58
lea edx, [ebp - 0x48]
push edx
lea eax, [ebp - 0x44]
push eax
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov ebx, dword [ebp - 0x44]
cmp ebx, dword [edi + 0x30]
je 0x55947b
mov esi, dword [ebp - 0x18]
lea edi, [ebx + 0x10]
push edi
lea ecx, [esi + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [esi + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x559463
lea ecx, [ebx + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
je 0x5593b2
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x55939a
xor ebx, ebx
jmp 0x5593b2
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov ebx, eax
push ebx
call fcn.00414340
mov eax, ebx
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5593c0
sub eax, edx
lea ecx, [eax*8]
push ecx
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x559457
mov eax, ebx
lea edx, [eax + 1]
jmp 0x5593f0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5593f0
sub eax, edx
mov edx, eax
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559400
push edx
push esi
sub eax, edi
push eax
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov edx, dword [ebp - 0x18]
mov byte [edx + 0x3c], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
jmp 0x559937
mov ecx, dword [ebp - 0x18]
push edi
add ecx, 0x1c
call fcn.004078d0
mov edx, dword [ebp - 0x18]
mov byte [edx + 0x3c], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
jmp 0x559937
push 0x67bee0
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x59
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov esi, dword [ebp - 0x44]
cmp esi, dword [edi + 0x30]
je 0x5595b4
mov ebx, dword [ebp - 0x18]
lea edi, [esi + 0x10]
push edi
lea ecx, [ebx + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [ebx + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x5595ad
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
je 0x559512
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x5594fa
xor ebx, ebx
jmp 0x559512
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov ebx, eax
push ebx
call fcn.00414340
mov eax, ebx
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559520
sub eax, edx
lea edx, [eax*8]
push edx
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x5595a1
mov eax, ebx
lea edx, [eax + 1]
jmp 0x559550
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559550
sub eax, edx
mov edx, eax
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559560
push edx
push esi
sub eax, edi
push eax
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x5595ad
push edi
mov ecx, dword [ebp - 0x18]
add ecx, 0x1c
call fcn.004078d0
mov eax, dword [ebp - 0x18]
mov byte [eax + 0x3c], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
jmp 0x559937
push str.rambler.
push esi
call fcn.004592a0
add esp, 8
test al, al
je 0x559c05
lea ecx, [ebp - 0x14]
call fcn.004644a0
push 5
lea ecx, [ebp - 0x40]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov byte [ebp - 4], 0x5a
push str.srch_
mov esi, 0x800
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
mov edi, 0x5b
test al, al
jne 0x559672
push 7
lea edx, [ebp - 0x44]
push edx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], edi
push str.search_
mov esi, 0x1800
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x559672
push 6
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x5c
push str.video_
mov esi, 0x3800
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x559672
xor bl, bl
jmp 0x559674
mov bl, 1
mov dword [ebp - 4], edi
test esi, 0x2000
je 0x559690
and esi, 0xffffdfff
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
mov dword [ebp - 4], 0x5a
test esi, 0x1000
je 0x5596b0
and esi, 0xffffefff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
mov dword [ebp - 4], 7
test esi, 0x800
je 0x5596d0
and esi, 0xfffff7ff
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
test bl, bl
je 0x55981b
mov esi, dword [ebp - 0x14]
cmp dword [esi - 0xc], 0
jge 0x5596e6
or eax, 0xffffffff
jmp 0x559701
push 0x675d74
push esi
call fcn.00612c90
add esp, 8
test eax, eax
jne 0x5596fd
or eax, 0xffffffff
jmp 0x559701
sub eax, esi
sar eax, 1
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x30]
inc eax
push edx
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x44], eax
call fcn.0040d920
mov byte [ebp - 4], 0x5d
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
je 0x55980f
mov edi, dword [ebp - 0x18]
mov bl, 0x5e
lea esp, [esp]
lea ecx, [ebp - 0x48]
push ecx
push 0x67bf10
lea edx, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], bl
lea eax, [ebp - 0x38]
push 0x66f16a
push eax
call fcn.0040b580
add esp, 8
test al, al
je 0x5597bd
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx - 0xc]
sub eax, dword [ebp - 0x48]
lea edx, [ebp - 0x40]
push eax
push edx
lea ecx, [ebp - 0x30]
call fcn.00427cb0
mov byte [ebp - 4], 0x5f
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
mov esi, eax
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x2c]
call fcn.004cb880
push esi
mov ecx, eax
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x40]
call fcn.004014a0
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x60
push eax
lea ecx, [ebp - 0x30]
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x28]
call fcn.004014a0
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x38]
call fcn.004014a0
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
jne 0x559740
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
push str.query
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x61
mov edi, dword [ebp - 0x18]
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x44]
push edx
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov esi, dword [ebp - 0x44]
cmp esi, dword [edi + 0x30]
je 0x559a75
lea eax, [esi + 0x10]
push eax
lea ecx, [edi + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [edi + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x559933
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
jne 0x55988b
xor esi, esi
jmp 0x5598b6
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x55989e
xor esi, esi
jmp 0x5598b6
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov esi, eax
push esi
call fcn.00414340
mov eax, esi
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x5598c4
sub eax, edx
cmp eax, 4
jb 0x559921
xor ecx, ecx
mov al, byte [ecx + esi]
cmp al, 0xd0
je 0x5598df
cmp al, 0xd1
jne 0x55990b
mov al, byte [ecx + esi + 1]
cmp al, 0xca
jb 0x5598eb
cmp al, 0xff
jbe 0x55990b
mov al, byte [ecx + esi + 2]
cmp al, 0xd0
je 0x5598f7
cmp al, 0xd1
jne 0x55990b
mov al, byte [ecx + esi + 3]
cmp al, 0xca
jb 0x5599fd
cmp al, 0xff
ja 0x5599fd
mov eax, esi
inc ecx
lea ebx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x559911
sub eax, ebx
add eax, 0xfffffffc
cmp ecx, eax
jbe 0x5598d4
push esi
lea eax, [edi + 0x1c]
push 0x66ea5c
push eax
call fcn.00405ab0
add esp, 0xc
mov byte [edi + 0x3c], 1
mov edi, dword [ebp - 0x3c]
lea ecx, [edi + edi + 4]
mov eax, 0xcccccccd
mul ecx
shr edx, 2
mov eax, ecx
add ecx, dword [ebp + 8]
lea edx, [edx + edx*4]
sub eax, edx
push eax
mov eax, dword [ebp + 0xc]
sub eax, edi
lea eax, [eax + eax - 4]
push eax
push ecx
call fcn.005bd2f0
add esp, 0xc
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x559989
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x5599ac
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
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 0x5599cf
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 - 0x34]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x5599f5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [edi + 2]
jmp 0x55b2dd
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559a02
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x55a525
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559a30
sub eax, edx
mov edx, eax
mov eax, esi
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559a40
push edx
push ebx
sub eax, edi
push eax
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push ebx
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push ebx
jmp 0x55a220
push str.words
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x44]
push edx
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov esi, dword [ebp - 0x44]
cmp esi, dword [edi + 0x30]
je 0x559937
mov edi, dword [ebp - 0x18]
lea eax, [esi + 0x10]
push eax
lea ecx, [edi + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [edi + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x559933
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
jne 0x559ae5
xor esi, esi
jmp 0x559b10
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x559af8
xor esi, esi
jmp 0x559b10
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov esi, eax
push esi
call fcn.00414340
mov eax, esi
add esp, 4
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559b20
sub eax, edx
cmp eax, 4
jb 0x559921
xor ecx, ecx
mov al, byte [ecx + esi]
cmp al, 0xd0
je 0x559b3f
cmp al, 0xd1
jne 0x559b63
mov al, byte [ecx + esi + 1]
cmp al, 0xca
jb 0x559b4b
cmp al, 0xff
jbe 0x559b63
mov al, byte [ecx + esi + 2]
cmp al, 0xd0
je 0x559b57
cmp al, 0xd1
jne 0x559b63
mov al, byte [ecx + esi + 3]
cmp al, 0xca
jb 0x559b85
cmp al, 0xff
ja 0x559b85
mov eax, esi
inc ecx
lea ebx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x559b70
sub eax, ebx
add eax, 0xfffffffc
cmp ecx, eax
jbe 0x559b34
jmp 0x559921
mov eax, esi
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559b90
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x55a525
mov eax, esi
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559bc0
sub eax, edx
mov edx, eax
mov eax, esi
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559bd0
push edx
push ebx
sub eax, edi
push eax
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push ebx
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push ebx
jmp 0x55a220
push str.lycos.com
push esi
call fcn.004592a0
add esp, 8
test al, al
je 0x559e85
lea ecx, [ebp - 0x14]
call fcn.004644a0
push 0
push 0x675d74
lea ecx, [ebp - 0x14]
call fcn.004144e0
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x30]
inc eax
push edx
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x44], eax
call fcn.0040d920
mov byte [ebp - 4], 0x63
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
je 0x559d38
mov bl, 0x64
lea ebx, [ebx]
lea ecx, [ebp - 0x48]
push ecx
push 0x67bf10
lea edx, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], bl
lea eax, [ebp - 0x38]
push 0x66f16a
push eax
call fcn.0040b580
add esp, 8
test al, al
je 0x559ce6
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx - 0xc]
sub eax, dword [ebp - 0x48]
lea edx, [ebp - 0x40]
push eax
push edx
lea ecx, [ebp - 0x30]
call fcn.00427cb0
mov byte [ebp - 4], 0x65
mov ecx, eax
call fcn.00433b20
mov esi, eax
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x2c]
call fcn.004cb880
push esi
mov ecx, eax
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x40]
call fcn.004014a0
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x66
push eax
lea ecx, [ebp - 0x30]
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x28]
call fcn.004014a0
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x38]
call fcn.004014a0
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
jne 0x559c70
push str.query
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x67
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x44]
push edx
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 0x63
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov esi, dword [ebp - 0x44]
cmp esi, dword [edi + 0x30]
je 0x559e74
mov ebx, dword [ebp - 0x18]
lea edi, [esi + 0x10]
push edi
lea ecx, [ebx + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [ebx + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x559e6d
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
je 0x559dcf
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x559db7
xor ebx, ebx
jmp 0x559dcf
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov ebx, eax
push ebx
call fcn.00414340
mov eax, ebx
add esp, 4
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559de0
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x559e61
mov eax, ebx
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559e10
sub eax, edx
mov edx, eax
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x559e20
push edx
push esi
sub eax, edi
push eax
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x559e6d
mov ecx, dword [ebp - 0x18]
push edi
add ecx, 0x1c
call fcn.004078d0
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 0x3c], 1
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
jmp 0x559937
push str.yahoo.
push esi
call fcn.004592a0
add esp, 8
test al, al
je 0x55a248
lea ecx, [ebp - 0x14]
call fcn.004644a0
push 7
lea edx, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov byte [ebp - 4], 0x68
push str.images_
mov esi, 0x4000
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
mov edi, 0x6a
test al, al
jne 0x559f65
push 7
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x69
push 0x67be44
mov esi, 0xc000
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x559f65
push 6
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], edi
push 0x67be34
mov esi, 0x1c000
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x559f65
push 5
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x6b
push 0x67be28
mov esi, 0x3c000
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x559f65
xor bl, bl
jmp 0x559f67
mov bl, 1
mov dword [ebp - 4], edi
test esi, 0x20000
je 0x559f83
and esi, 0xfffdffff
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
mov dword [ebp - 4], 0x69
test esi, 0x10000
je 0x559fa3
and esi, 0xfffeffff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
mov dword [ebp - 4], 0x68
test esi, 0x8000
je 0x559fc3
and esi, 0xffff7fff
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
mov dword [ebp - 4], 7
test esi, 0x4000
je 0x559fe3
and esi, 0xffffbfff
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
test bl, bl
je 0x55a10b
push 0
push 0x675d74
lea ecx, [ebp - 0x14]
call fcn.004144e0
inc eax
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x44]
push eax
push 0x67bf14
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x6c
lea edx, [ebp - 0x30]
push 0x66eba8
push edx
call fcn.00439380
mov edi, dword [ebp - 0x18]
add esp, 8
test al, al
je 0x55a0fd
mov bl, 0x6d
lea eax, [ebp - 0x48]
push eax
push 0x67bf10
lea ecx, [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], bl
lea edx, [ebp - 0x38]
push 0x66f16a
push edx
call fcn.0040b580
add esp, 8
test al, al
je 0x55a0ab
mov eax, dword [ebp - 0x30]
mov eax, dword [eax - 0xc]
sub eax, dword [ebp - 0x48]
lea ecx, [ebp - 0x40]
push eax
push ecx
lea ecx, [ebp - 0x30]
call fcn.00427cb0
mov byte [ebp - 4], 0x6e
mov ecx, eax
call fcn.00433b20
lea edx, [ebp - 0x38]
push edx
lea ecx, [edi + 0x2c]
mov esi, eax
call fcn.004cb880
push esi
mov ecx, eax
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x40]
call fcn.004014a0
lea eax, [ebp - 0x44]
push eax
push 0x67bf14
lea ecx, [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x6f
push eax
lea ecx, [ebp - 0x30]
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x28]
call fcn.004014a0
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x38]
call fcn.004014a0
lea edx, [ebp - 0x30]
push 0x66eba8
push edx
call fcn.00439380
add esp, 8
test al, al
jne 0x55a035
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
jmp 0x55a10e
mov edi, dword [ebp - 0x18]
push 0x67be24
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x70
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov esi, dword [ebp - 0x44]
cmp esi, dword [edi + 0x30]
je 0x559937
lea eax, [esi + 0x10]
push eax
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x48], eax
call fcn.004078d0
push 0x67aeb8
lea ecx, [edi + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x559933
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
je 0x55a1a5
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x55a18d
xor ebx, ebx
jmp 0x55a1a5
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov ebx, eax
push ebx
call fcn.00414340
mov eax, ebx
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a1b3
sub eax, edx
lea edx, [eax*8]
push edx
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x55a237
mov eax, ebx
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a1e0
sub eax, edx
mov edx, eax
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a1f0
push edx
push esi
sub eax, edi
push eax
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov edi, dword [ebp - 0x18]
jmp 0x559933
mov eax, dword [ebp - 0x48]
push eax
lea ecx, [edi + 0x1c]
call fcn.004078d0
jmp 0x559933
push str.wikipedia.org
push esi
call fcn.004592a0
add esp, 8
test al, al
je 0x559937
lea ecx, [ebp - 0x14]
call fcn.004644a0
push 0
push str.index.php_
lea ecx, [ebp - 0x14]
call fcn.004144e0
test eax, eax
js 0x55a398
push 0
push 0x675d74
lea ecx, [ebp - 0x14]
call fcn.004144e0
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x30]
inc eax
push edx
lea ecx, [ebp - 0x14]
mov dword [ebp - 0x44], eax
call fcn.0040d920
mov byte [ebp - 4], 0x71
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
je 0x55a38c
mov bl, 0x72
lea ecx, [ebp - 0x48]
push ecx
push 0x67bf10
lea edx, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], bl
lea eax, [ebp - 0x38]
push 0x66f16a
push eax
call fcn.0040b580
add esp, 8
test al, al
je 0x55a33a
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx - 0xc]
sub eax, dword [ebp - 0x48]
lea edx, [ebp - 0x40]
push eax
push edx
lea ecx, [ebp - 0x30]
call fcn.00427cb0
mov byte [ebp - 4], 0x73
mov ecx, eax
call fcn.00433b20
mov esi, eax
lea eax, [ebp - 0x38]
push eax
lea ecx, [edi + 0x2c]
call fcn.004cb880
push esi
mov ecx, eax
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x40]
call fcn.004014a0
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x74
push eax
lea ecx, [ebp - 0x30]
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x28]
call fcn.004014a0
mov byte [ebp - 4], 0x71
lea ecx, [ebp - 0x38]
call fcn.004014a0
lea eax, [ebp - 0x30]
push 0x66eba8
push eax
call fcn.00439380
add esp, 8
test al, al
jne 0x55a2c4
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
push str.search
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x75
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x44]
push edx
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov esi, dword [ebp - 0x44]
cmp esi, dword [edi + 0x30]
je 0x559937
lea eax, [esi + 0x10]
push eax
lea ecx, [edi + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [edi + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x559933
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
jne 0x55a405
xor esi, esi
jmp 0x55a430
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x55a418
xor esi, esi
jmp 0x55a430
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov esi, eax
push esi
call fcn.00414340
mov eax, esi
add esp, 4
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a440
sub eax, edx
cmp eax, 4
jb 0x559921
xor ecx, ecx
mov al, byte [ecx + esi]
cmp al, 0xd0
je 0x55a45f
cmp al, 0xd1
jne 0x55a483
mov al, byte [ecx + esi + 1]
cmp al, 0xca
jb 0x55a46b
cmp al, 0xff
jbe 0x55a483
mov al, byte [ecx + esi + 2]
cmp al, 0xd0
je 0x55a477
cmp al, 0xd1
jne 0x55a483
mov al, byte [ecx + esi + 3]
cmp al, 0xca
jb 0x55a4a5
cmp al, 0xff
ja 0x55a4a5
mov eax, esi
inc ecx
lea ebx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x55a490
sub eax, ebx
add eax, 0xfffffffc
cmp ecx, eax
jbe 0x55a454
jmp 0x559921
mov eax, esi
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a4b0
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x55a525
mov eax, esi
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a4e0
sub eax, edx
mov edx, eax
mov eax, esi
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a4f0
push edx
push ebx
sub eax, edi
push eax
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push ebx
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push ebx
jmp 0x55a220
push 0x66f16a
lea ecx, [edi + 0x1c]
call fcn.00405830
jmp 0x559933
lea ecx, [ebp - 0x14]
call fcn.004644a0
push 0xb
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov byte [ebp - 4], 0x44
push str.yandsearch_
mov esi, 0x200
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a59e
push 0xb
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x45
push str.search.xml_
mov esi, 0x600
push eax
mov dword [ebp - 0x1c], esi
call fcn.004592a0
add esp, 8
test al, al
jne 0x55a59e
xor bl, bl
jmp 0x55a5a0
mov bl, 1
mov dword [ebp - 4], 0x44
test esi, 0x400
je 0x55a5c0
and esi, 0xfffffbff
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
mov dword [ebp - 4], 7
test esi, 0x200
je 0x55a5e0
and esi, 0xfffffdff
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x1c], esi
call fcn.004014a0
test bl, bl
je 0x55a759
mov esi, dword [ebp - 0x14]
cmp dword [esi - 0xc], 0
jge 0x55a5f6
or eax, 0xffffffff
jmp 0x55a611
push 0x675d74
push esi
call fcn.00612c90
add esp, 8
test eax, eax
jne 0x55a60d
or eax, 0xffffffff
jmp 0x55a611
sub eax, esi
sar eax, 1
inc eax
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x44]
push eax
push 0x67bf14
lea ecx, [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x46
lea edx, [ebp - 0x30]
push 0x66eba8
push edx
call fcn.00439380
add esp, 8
test al, al
je 0x55a74d
mov bl, 0x47
lea esp, [esp]
lea eax, [ebp - 0x48]
push eax
push 0x67bf10
lea ecx, [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], bl
lea edx, [ebp - 0x38]
push 0x66f16a
push edx
call fcn.0040b580
add esp, 8
test al, al
je 0x55a6cd
mov eax, dword [ebp - 0x30]
mov eax, dword [eax - 0xc]
sub eax, dword [ebp - 0x48]
lea ecx, [ebp - 0x40]
push eax
push ecx
lea ecx, [ebp - 0x30]
call fcn.00427cb0
mov byte [ebp - 4], 0x48
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
lea edx, [ebp - 0x38]
push edx
lea ecx, [edi + 0x2c]
mov esi, eax
call fcn.004cb880
push esi
mov ecx, eax
call fcn.004078d0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x40]
call fcn.004014a0
lea eax, [ebp - 0x44]
push eax
push 0x67bf14
lea ecx, [ebp - 0x28]
push ecx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x49
push eax
lea ecx, [ebp - 0x30]
call fcn.004078d0
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x28]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x55a711
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x46
mov eax, dword [ebp - 0x38]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55a734
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x30]
push 0x66eba8
push ecx
call fcn.00439380
add esp, 8
test al, al
jne 0x55a650
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x30]
call fcn.004014a0
push str.text
lea ecx, [ebp - 0x48]
call fcn.0040bea0
mov byte [ebp - 4], 0x4c
lea edx, [ebp - 0x48]
push edx
lea eax, [ebp - 0x44]
push eax
lea ecx, [edi + 0x2c]
call fcn.00464500
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x48]
call fcn.004014a0
mov esi, dword [ebp - 0x44]
cmp esi, dword [edi + 0x30]
je 0x559937
mov ebx, dword [ebp - 0x18]
lea edi, [esi + 0x10]
push edi
lea ecx, [ebx + 0x1c]
call fcn.004078d0
push 0x67aeb8
lea ecx, [ebx + 0x1c]
call fcn.005581e0
cmp eax, 0xffffffff
je 0x55a897
lea ecx, [esi + 0x10]
call fcn.004014f0
mov ebx, eax
test ebx, ebx
je 0x55a7f0
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x55a7d8
xor ebx, ebx
jmp 0x55a7f0
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov ebx, eax
push ebx
call fcn.00414340
mov eax, ebx
add esp, 4
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a800
sub eax, edx
lea ecx, [eax*8]
push ecx
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov esi, eax
test esi, esi
je 0x55a88b
mov eax, ebx
lea edx, [eax + 1]
jmp 0x55a830
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a830
sub eax, edx
mov edx, eax
mov eax, ebx
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55a840
push edx
push esi
sub eax, edi
push eax
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push esi
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov edx, dword [ebp - 0x18]
mov byte [edx + 0x3c], 1
jmp 0x559937
mov ecx, dword [ebp - 0x18]
push edi
add ecx, 0x1c
call fcn.004078d0
mov edx, dword [ebp - 0x18]
mov byte [edx + 0x3c], 1
jmp 0x559937
mov ebx, dword [ebp - 0x14]
mov esi, dword [ebx - 0xc]
mov eax, dword [ebx - 8]
mov ecx, 1
sub ecx, dword [ebx - 4]
sub eax, esi
or eax, ecx
jge 0x55a8c6
push esi
lea ecx, [ebp - 0x14]
call fcn.00401400
mov ebx, dword [ebp - 0x14]
lea eax, [esi + 1]
push eax
push ebx
call fcn.00611807
add esp, 8
test esi, esi
js 0x55b235
cmp esi, dword [ebx - 8]
jg 0x55b235
xor ecx, ecx
mov dword [ebx - 0xc], esi
push 7
lea edx, [ebp - 0x50]
mov word [ebx + esi*2], cx
push edx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov byte [ebp - 4], 0x28
mov ebx, 1
mov dword [ebp - 0x1c], ebx
mov eax, dword [eax]
mov ecx, str.search_
mov edi, edi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x55a936
test dx, dx
je 0x55a932
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x55a936
add eax, 4
add ecx, 4
test dx, dx
jne 0x55a910
xor eax, eax
jmp 0x55a93b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sete al
mov edi, 0x2d
lea esi, [edi + 1]
test al, al
jne 0x55aad7
push 5
lea eax, [ebp - 0x4c]
push eax
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x29
push str.news_
mov ebx, 3
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
test al, al
jne 0x55aad7
push 7
lea ecx, [ebp - 0x24]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x2a
push 0x67bd88
mov ebx, 7
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
test al, al
jne 0x55aad7
push ebx
lea edx, [ebp - 0x28]
push edx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x2b
push str.pictures_
mov ebx, 0xf
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
test al, al
jne 0x55aad7
push 7
lea eax, [ebp - 0x30]
push eax
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x2c
push str.videos_
mov ebx, 0x1f
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
test al, al
jne 0x55aad7
push 6
lea ecx, [ebp - 0x38]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], edi
push str.image_
mov ebx, 0x3f
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
test al, al
jne 0x55aad7
push 2
lea edx, [ebp - 0x40]
push edx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], esi
push 0x67bd4c
mov ebx, 0x7f
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
test al, al
jne 0x55aad7
push 8
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x2f
push str.gen_204_
mov ebx, 0xff
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
test al, al
jne 0x55aad7
push 4
lea ecx, [ebp - 0x48]
push ecx
lea ecx, [ebp - 0x14]
call fcn.00414520
mov dword [ebp - 4], 0x30
push 0x67bd2c
mov ebx, 0x1ff
push eax
mov dword [ebp - 0x1c], ebx
call fcn.004592a0
add esp, 8
mov byte [ebp - 0xd], 0
test al, al
je 0x55aadb
mov byte [ebp - 0xd], 1
mov eax, 0x2f
mov dword [ebp - 4], eax
test ebx, 0x100
je 0x55ab16
and ebx, 0xfffffeff
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x55ab16
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], esi
test bl, bl
jns 0x55ab48
and ebx, 0xffffff7f
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], esi
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55ab48
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], edi
test bl, 0x40
je 0x55ab78
and ebx, 0xffffffbf
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], edi
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55ab78
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x2c
mov dword [ebp - 4], eax
test bl, 0x20
je 0x55abad
and ebx, 0xffffffdf
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x38]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55abad
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x2b
mov dword [ebp - 4], eax
test bl, 0x10
je 0x55abe2
and ebx, 0xffffffef
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x30]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55abe2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x2a
mov dword [ebp - 4], eax
test bl, 8
je 0x55ac17
and ebx, 0xfffffff7
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55ac17
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x29
mov dword [ebp - 4], eax
test bl, 4
je 0x55ac4c
and ebx, 0xfffffffb
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55ac4c
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, 0x28
mov dword [ebp - 4], eax
test bl, 2
je 0x55ac81
and ebx, 0xfffffffd
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55ac81
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [ebp - 4], 7
test bl, 1
je 0x55acb6
and ebx, 0xfffffffe
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55acb6
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp byte [ebp - 0xd], 0
je 0x55af14
mov ecx, dword [ebp - 0x14]
cmp dword [ecx - 0xc], 0
jge 0x55acce
or eax, 0xffffffff
jmp 0x55acec
mov esi, dword [ebp - 0x14]
push 0x675d74
push esi
call fcn.00612c90
add esp, 8
test eax, eax
jne 0x55ace8
or eax, 0xffffffff
jmp 0x55acec
sub eax, esi
sar eax, 1
inc eax
lea edx, [ebp - 0x44]
push edx
mov dword [ebp - 0x44], eax
push 0x67bf14
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0x28]
mov ecx, 0x66eba8
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x55ad37
test dx, dx
je 0x55ad33
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x55ad37
add eax, 4
add ecx, 4
test dx, dx
jne 0x55ad11
xor eax, eax
jmp 0x55ad3c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
setne al
test al, al
je 0x55aef1
lea ecx, [ebp - 0x48]
push ecx
push 0x67bf10
lea edx, [ebp - 0x38]
push edx
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x48], 0
call fcn.0040d920
mov byte [ebp - 4], 0x3b
lea eax, [ebp - 0x38]
push 0x66f16a
push eax
call fcn.0040b580
add esp, 8
test al, al
je 0x55ae35
mov ecx, dword [ebp - 0x28]
mov eax, dword [ecx - 0xc]
sub eax, dword [ebp - 0x48]
lea edx, [ebp - 0x4c]
push eax
push edx
lea ecx, [ebp - 0x28]
call fcn.00427cb0
mov byte [ebp - 4], 0x3c
mov ecx, eax
call fcn.00433a90
mov ecx, eax
call fcn.00433920
mov ecx, dword [ebp - 0x18]
mov esi, eax
lea eax, [ebp - 0x38]
push eax
add ecx, 0x2c
call fcn.004cb880
mov ecx, dword [esi]
mov ebx, eax
mov esi, dword [ebx]
lea eax, [ecx - 0x10]
sub esi, 0x10
cmp eax, esi
je 0x55ae12
cmp dword [esi + 0xc], 0
lea edi, [esi + 0xc]
jl 0x55ae06
mov edx, dword [eax]
cmp edx, dword [esi]
jne 0x55ae06
push eax
call fcn.004011f0
mov dword [ebp - 0x50], eax
add esp, 4
or eax, 0xffffffff
lock xadd dword [edi], eax
dec eax
test eax, eax
jg 0x55adfc
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
mov ecx, dword [ebp - 0x50]
add ecx, 0x10
mov dword [ebx], ecx
jmp 0x55ae12
mov eax, dword [ecx - 0xc]
push eax
push ecx
mov ecx, ebx
call fcn.00401670
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x55ae35
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ecx, [ebp - 0x44]
push ecx
push 0x67bf14
lea edx, [ebp - 0x40]
push edx
lea ecx, [ebp - 0x14]
call fcn.0040d920
mov byte [ebp - 4], 0x3e
mov ecx, dword [eax]
mov esi, dword [ebp - 0x28]
lea eax, [ecx - 0x10]
add esi, 0xfffffff0
cmp eax, esi
je 0x55aea2
cmp dword [esi + 0xc], 0
lea ebx, [esi + 0xc]
jl 0x55ae95
mov edx, dword [eax]
cmp edx, dword [esi]
jne 0x55ae95
push eax
call fcn.004011f0
mov edi, eax
add esp, 4
or eax, 0xffffffff
lock xadd dword [ebx], eax
dec eax
test eax, eax
jg 0x55ae8d
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
add edi, 0x10
mov dword [ebp - 0x28], edi
jmp 0x55aea2
mov eax, dword [ecx - 0xc]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00401670
mov byte [ebp - 4], 0x3b
mov eax, dword [ebp - 0x40]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55aec5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x3a
mov eax, dword [ebp - 0x38]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55ad09
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x55ad09
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x28]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55af14
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x67bee4
lea ecx, [ebp - 0x38]
call fcn.0040bea0
mov byte [ebp - 4], 0x42
mov edi, dword [ebp - 0x18]
lea ecx, [ebp - 0x38]
push ecx
lea ecx, [edi + 0x2c]
call fcn.004265c0
mov esi, dword [edi + 0x30]
mov dword [ebp - 0x50], eax
cmp eax, esi
je 0x55af99
mov ecx, dword [eax + 0xc]
xor eax, eax
test ecx, ecx
setne al
test eax, eax
jne 0x55af56
push 0x80004005
call fcn.004011d0
mov eax, dword [ebp - 0x38]
lea esp, [esp]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x55af86
test dx, dx
je 0x55af82
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x55af86
add eax, 4
add ecx, 4
test dx, dx
jne 0x55af60
xor eax, eax
jmp 0x55af8b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
sets al
test al, al
jne 0x55af99
lea eax, [ebp - 0x50]
jmp 0x55af9f
mov dword [ebp - 0x4c], esi
lea eax, [ebp - 0x4c]
mov esi, dword [eax]
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x38]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x55afc4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp esi, dword [edi + 0x30]
je 0x559937
mov ebx, dword [ebp - 0x18]
lea edi, [esi + 0x10]
push edi
lea ecx, [ebx + 0x1c]
call fcn.004078d0
mov eax, dword [ebx + 0x1c]
push 0x67aeb8
push eax
call fcn.00619c05
add esp, 8
test eax, eax
je 0x55b229
sub eax, dword [ebx + 0x1c]
sar eax, 1
cmp eax, 0xffffffff
je 0x55b229
mov eax, dword [esi + 0x10]
cmp dword [eax - 4], 1
jle 0x55b018
mov ecx, dword [eax - 0xc]
push ecx
lea ecx, [esi + 0x10]
call fcn.00401370
mov ebx, dword [esi + 0x10]
test ebx, ebx
jne 0x55b023
xor esi, esi
jmp 0x55b04e
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
cmp eax, 0x3fffffff
jle 0x55b036
xor esi, esi
jmp 0x55b04e
lea esi, [eax + eax]
mov eax, esi
call fcn.006123b0
mov eax, esp
push 3
push esi
push ebx
push eax
call fcn.00403a80
mov esi, eax
push esi
call fcn.00414340
mov eax, dword [ebp - 0x18]
add eax, 0x14
push str.mail.ru
push eax
call fcn.004592a0
add esp, 0xc
test al, al
mov eax, esi
lea edx, [eax + 1]
je 0x55b198
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55b075
sub eax, edx
cmp eax, 4
jb 0x55b0d0
xor ecx, ecx
mov al, byte [ecx + esi]
cmp al, 0xd0
je 0x55b090
cmp al, 0xd1
jne 0x55b0b4
mov al, byte [ecx + esi + 1]
cmp al, 0xca
jb 0x55b09c
cmp al, 0xff
jbe 0x55b0b4
mov al, byte [ecx + esi + 2]
cmp al, 0xd0
je 0x55b0a8
cmp al, 0xd1
jne 0x55b0b4
mov al, byte [ecx + esi + 3]
cmp al, 0xca
jb 0x55b0f1
cmp al, 0xff
ja 0x55b0f1
mov eax, esi
inc ecx
lea ebx, [eax + 1]
lea ebx, [ebx]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x55b0c0
sub eax, ebx
add eax, 0xfffffffc
cmp ecx, eax
jbe 0x55b085
mov eax, dword [ebp - 0x18]
push esi
add eax, 0x1c
push 0x66ea5c
push eax
call fcn.00405ab0
mov ecx, dword [ebp - 0x18]
add esp, 0xc
mov byte [ecx + 0x3c], 1
jmp 0x559937
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55b0f6
sub eax, edx
lea edx, [eax*8]
push edx
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x55b17c
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55b121
sub eax, edx
mov edx, eax
mov eax, esi
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55b131
push edx
push ebx
sub eax, edi
push eax
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push ebx
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push ebx
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 0x3c], 1
jmp 0x559937
mov ecx, dword [ebp - 0x18]
push 0x66f16a
add ecx, 0x1c
call fcn.00405830
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 0x3c], 1
jmp 0x559937
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55b198
sub eax, edx
add eax, eax
add eax, eax
add eax, eax
push eax
push 8
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x55b21d
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55b1c2
sub eax, edx
mov edx, eax
mov eax, esi
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x55b1d2
push edx
push ebx
sub eax, edi
push eax
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x18]
push ebx
add eax, 0x1c
push 0x66edc0
push eax
call fcn.00405ab0
add esp, 0xc
push ebx
push 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 0x3c], 1
jmp 0x559937
mov ecx, dword [ebp - 0x18]
push edi
add ecx, 0x1c
call fcn.004078d0
mov ecx, dword [ebp - 0x18]
mov byte [ecx + 0x3c], 1
jmp 0x559937
push 0x80070057
call fcn.004011d0
mov ecx, dword [ebp + 8]
push 0
push edi
push ecx
call fcn.005bd2f0
add esp, 0xc
mov byte [ebp - 4], 5
add esi, 0xfffffff0
lea edx, [esi + 0xc]
or eax, 0xffffffff
lock xadd dword [edx], eax
dec eax
test eax, eax
jg 0x55b26e
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55b291
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 1
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 0x55b2b4
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 - 0x34]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x55b2da
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
or eax, 0xffffffff
lea esp, [ebp - 0x5c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8