Function at 0x5904bed0
Capabilities:
Contain obfuscated stackstrings
Encode data using base64
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x591540dd
push eax
mov dword fs:[0], esp
sub esp, 0xa0
push ebx
push ebp
push esi
mov esi, dword [esp + 0xcc]
test esi, esi
push edi
je 0x5904bf00
mov dword [esi], 0
mov ebx, dword [esp + 0xc0]
mov ebp, dword [esp + 0xc4]
test ebx, ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x48], ebp
je 0x5904d72d
test ebp, ebp
je 0x5904d72d
mov eax, dword [0x591ae1c8]
test eax, eax
je 0x5904bf4b
push 0x5918ee24
push str.MailLog
push 0xffffffffffffffff
push 0x591ae15c
call fcn.590851e0
add esp, 0x10
mov edi, str.Cookie:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.Cookie:
push ebp
push ebx
call fcn.5900d550
add esp, 0x10
cmp eax, 0xffffffff
jne 0x5904bf8f
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xc8]
push esi
push eax
push ecx
push ebp
push ebx
call fcn.590135e0
add esp, 0x14
jmp 0x5904d72d
mov edi, 0x5918a2dc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x5918a2dc
push ebp
push ebx
call fcn.5900d550
add esp, 0x10
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
je 0x5904d72d
mov edi, 0x5918a2dc
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [esp + 0x10]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edx, ecx
add edx, esi
xor esi, esi
add edx, ebx
cmp byte [edx], 0xd
je 0x5904c009
mov ecx, dword [esp + 0x10]
mov eax, ebp
sub eax, ecx
mov dword [esp + 0x14], eax
mov edi, 0x5918a2dc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x14]
not ecx
dec ecx
sub eax, ecx
cmp esi, eax
jge 0x5904c009
mov al, byte [esi + edx + 1]
inc esi
cmp al, 0xd
jne 0x5904bfe7
mov edi, 0x5918a2dc
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov edi, dword [esp + 0x10]
mov eax, ebp
not ecx
dec ecx
sub eax, edi
sub eax, ecx
cmp esi, eax
jge 0x5904d72d
test esi, esi
jle 0x5904d72d
mov edi, 0x5918ee20
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x5918ee20
push esi
push edx
call fcn.5900d550
mov eax, dword [0x591638c0]
mov dword [esp + 0x48], eax
mov dword [esp + 0xc8], 0
mov dword [esp + 0x30], eax
mov byte [esp + 0xc8], 1
mov dword [esp + 0x3c], eax
mov byte [esp + 0xc8], 2
mov dword [esp + 0x4c], eax
mov byte [esp + 0xc8], 3
mov dword [esp + 0x44], eax
mov byte [esp + 0xc8], 4
mov dword [esp + 0x40], eax
mov byte [esp + 0xc8], 5
mov dword [esp + 0x38], eax
push 0x5918a2d4
push ebp
push ebx
mov byte [esp + 0xd4], 6
call fcn.5900f7b0
mov edx, eax
add esp, 0x1c
cmp edx, 0xffffffff
je 0x5904d6b3
mov edi, 0x5918a2d4
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add edx, ecx
sub ebp, edx
add ebx, edx
mov dword [esp + 0xc0], ebx
lea edi, [ebp + 1]
push edi
call fcn.5913e1e0
mov esi, eax
add esp, 4
test esi, esi
je 0x5904c34e
mov ecx, edi
xor eax, eax
mov edx, ecx
mov edi, esi
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
push ebp
and ecx, 3
rep stosb byte es:[edi], al
mov eax, ebx
push eax
push esi
call fcn.5908b460
mov ecx, dword [0x591638c0]
add esp, 0xc
mov dword [esp + 0x10], ecx
push 0xfde9
push esi
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 7
call fcn.590abac0
push esi
call fcn.5913e209
add esp, 4
lea ecx, [esp + 0x4c]
call fcn.59105050
mov edx, dword [esp + 0x10]
mov bl, 8
push edx
lea ecx, [esp + 0x50]
mov byte [esp + 0xbc], bl
call fcn.59105db0
lea eax, [esp + 0x4c]
push 0
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.5904bb60
add esp, 0xc
push eax
lea ecx, [esp + 0x40]
mov byte [esp + 0xbc], 9
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea edx, [esp + 0x4c]
push 0
lea eax, [esp + 0x18]
push edx
push eax
call fcn.5904bbc0
add esp, 0xc
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0xbc], 0xa
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea ecx, [esp + 0x4c]
push 0
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.5904bc20
add esp, 0xc
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0xbc], 0xb
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
push 0
lea eax, [esp + 0x50]
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.5904bb00
add esp, 0xc
push eax
lea ecx, [esp + 0x3c]
mov byte [esp + 0xbc], 0xc
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea edx, [esp + 0x4c]
push 0
lea eax, [esp + 0x18]
push edx
push eax
call fcn.5904bdb0
add esp, 0xc
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xbc], 0xd
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea ecx, [esp + 0x4c]
push 0
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.5904bd50
add esp, 0xc
push eax
lea ecx, [esp + 0x30]
mov byte [esp + 0xbc], 0xe
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
mov eax, dword [esp + 0x20]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x5904c2ef
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x5904c2ef
lea ecx, [esp + 0x14]
push eax
push ecx
call fcn.5900b3f0
add esp, 8
lea edx, [esp + 0x14]
lea ecx, [esp + 0x20]
push edx
mov byte [esp + 0xbc], 0xf
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea eax, [esp + 0x4c]
push 0
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.5904be10
add esp, 0xc
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0xbc], 0x10
call fcn.590a77f0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea ecx, [esp + 0x4c]
mov byte [esp + 0xb8], 7
call fcn.591050e0
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 6
call fcn.590a7660
mov ebx, dword [esp + 0xc0]
mov edx, dword [esp + 0x38]
xor esi, esi
cmp dword [edx - 8], esi
jne 0x5904d21c
mov eax, dword [esp + 0x3c]
cmp dword [eax - 8], esi
jne 0x5904d21c
mov ecx, dword [esp + 0x34]
cmp dword [ecx - 8], esi
jne 0x5904d21c
mov edx, dword [esp + 0x28]
cmp dword [edx - 8], esi
jne 0x5904d21c
mov eax, dword [esp + 0x20]
cmp dword [eax - 8], esi
jne 0x5904d21c
mov ecx, dword [esp + 0x30]
cmp dword [ecx - 8], esi
jne 0x5904d21c
mov edx, dword [esp + 0x2c]
cmp dword [edx - 8], esi
jne 0x5904d21c
mov ecx, 6
xor eax, eax
lea edi, [esp + 0x98]
mov dword [esp + 0x94], esi
rep stosd dword es:[edi], eax
push ebp
push ebx
lea ecx, [esp + 0x20]
mov dword [esp + 0x54], str._subject_:
mov dword [esp + 0x58], str._from_:
mov dword [esp + 0x5c], str._to_:
mov dword [esp + 0x60], str._cc_:
mov dword [esp + 0x64], str._bcc_:
mov dword [esp + 0x68], str._text_:
mov dword [esp + 0x6c], str._method_:
call fcn.590a1d90
mov eax, dword [esp + 0x18]
mov byte [esp + 0xb8], 0x12
cmp dword [eax - 8], esi
jne 0x5904c427
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x18]
jmp 0x5904d6ae
mov ecx, dword [esp + esi + 0x4c]
push ecx
lea ecx, [esp + 0x1c]
call fcn.590a6b20
mov dword [esp + esi + 0x94], eax
add esi, 4
cmp esi, 0x1c
jb 0x5904c427
mov esi, dword [esp + 0xac]
cmp esi, 0xffffffff
je 0x5904c52e
mov edx, dword [0x591638bc]
mov dword [esp + 0x10], edx
mov bl, 0x14
push esi
push 0x591898f0
lea ecx, [esp + 0x20]
mov byte [esp + 0xc0], bl
call fcn.590833f0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904c4f1
mov edi, str._method_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, str._method_:
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x18]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.590a4500
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x15
call fcn.590a2460
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
mov ecx, dword [esp + 0x10]
push str.SaveMessage
push ecx
call fcn.59089b37
add esp, 8
mov byte [esp + 0xb8], 0x12
test eax, eax
lea ecx, [esp + 0x10]
jne 0x5904c529
call fcn.590a22e0
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x18]
jmp 0x5904d6ae
call fcn.590a22e0
mov esi, dword [esp + 0x94]
cmp esi, 0xffffffff
je 0x5904c6d3
mov edx, dword [0x591638bc]
mov dword [esp + 0x10], edx
mov bl, 0x17
push esi
push 0x591898f0
lea ecx, [esp + 0x20]
mov byte [esp + 0xc0], bl
call fcn.590833f0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904c5db
mov edi, str._subject_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, str._subject_:
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x18]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.590a4500
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x18
call fcn.590a2460
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
test eax, eax
je 0x5904c6c2
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x20], esp
push edx
call fcn.590a18b0
lea eax, [esp + 0x18]
mov byte [esp + 0xbc], bl
push eax
call fcn.5900b260
add esp, 8
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x1a
call fcn.590a2460
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
push ecx
push eax
call fcn.5900ad70
add esp, 8
test eax, eax
je 0x5904c6af
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
jle 0x5904c6c2
push 1
push 0
push eax
call fcn.5900ae80
mov ebp, eax
lea edi, [ebp + ebp + 4]
push edi
call fcn.5913e1e0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x5904c6c2
mov ecx, edi
xor eax, eax
mov edx, ecx
mov edi, esi
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
push 2
and ecx, 3
push esi
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x18]
push eax
call fcn.5900ae80
add esp, 0xc
lea ecx, [esp + 0x28]
mov word [esi + ebp*2], 0
push esi
call fcn.590a78e0
push esi
call fcn.5913e209
add esp, 4
jmp 0x5904c6c2
mov ecx, dword [esp + 0x10]
push 0xfde9
push ecx
lea ecx, [esp + 0x30]
call fcn.590abac0
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.590a22e0
mov esi, dword [esp + 0x98]
cmp esi, 0xffffffff
je 0x5904c8a4
mov eax, dword [0x591638bc]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x1c
mov dword [esp + 0x24], eax
push esi
push 0x5918edfc
lea ecx, [esp + 0x20]
mov byte [esp + 0xc0], 0x1d
call fcn.590833f0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904c7b6
mov edi, str._from_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, str._from_:
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x44]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.590a4500
mov bl, 0x1e
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], bl
call fcn.590a18b0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x20
push ecx
lea ecx, [esp + 0x14]
call fcn.590a2460
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x1d
call fcn.590a22e0
mov edx, dword [esp + 0x10]
mov eax, dword [edx - 8]
test eax, eax
je 0x5904c882
push str._email_:
lea ecx, [esp + 0x14]
call fcn.590833e0
mov esi, eax
cmp esi, 0xffffffff
je 0x5904c882
push esi
push 0x591898f0
lea ecx, [esp + 0x18]
call fcn.590833f0
mov edx, eax
sub edx, esi
test edx, edx
jle 0x5904c868
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str._email_:
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, 0x59189900
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x44]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.590a4500
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], 0x22
call fcn.590a2460
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x1d
call fcn.590a22e0
mov eax, dword [esp + 0x24]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x5904c882
push 0xfde9
push eax
lea ecx, [esp + 0x40]
call fcn.590abac0
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x1c
call fcn.590a22e0
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.590a22e0
mov esi, dword [esp + 0x9c]
cmp esi, 0xffffffff
je 0x5904cb01
mov eax, dword [0x591638bc]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x25
mov dword [esp + 0x14], eax
push esi
push 0x5918b3ac
lea ecx, [esp + 0x20]
mov byte [esp + 0xc0], 0x26
call fcn.590833f0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904c987
mov edi, str._to_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, str._to_:
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x44]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.590a4500
mov bl, 0x27
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], bl
call fcn.590a18b0
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x29
push ecx
lea ecx, [esp + 0x14]
call fcn.590a2460
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x26
call fcn.590a22e0
xor ebp, ebp
mov bl, 0x2c
test ebp, ebp
je 0x5904c9a0
mov edi, 0x5918edec
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ebp, ecx
mov edx, dword [esp + 0x10]
mov eax, dword [edx - 8]
test eax, eax
je 0x5904cac5
push ebp
push str._email_:
lea ecx, [esp + 0x18]
call fcn.590833f0
mov esi, eax
cmp esi, 0xffffffff
je 0x5904cac5
push esi
push 0x591898f0
lea ecx, [esp + 0x18]
call fcn.590833f0
mov edx, eax
sub edx, esi
test edx, edx
jle 0x5904ca53
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str._email_:
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, 0x59189900
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x44]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.590a4500
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], 0x2b
call fcn.590a2460
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x26
call fcn.590a22e0
mov ecx, dword [0x591638c0]
mov dword [esp + 0x24], ecx
mov eax, dword [esp + 0x14]
mov byte [esp + 0xb8], bl
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x5904ca7e
push 0xfde9
push eax
lea ecx, [esp + 0x2c]
call fcn.590abac0
lea edx, [esp + 0x24]
push 0x59188548
lea eax, [esp + 0x20]
push edx
push eax
call fcn.590a7dd0
push eax
lea ecx, [esp + 0x40]
mov byte [esp + 0xbc], 0x2d
call fcn.590a8310
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x26
call fcn.590a7660
push ebp
push 0x5918edec
lea ecx, [esp + 0x18]
call fcn.590833f0
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x5904c98b
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x25
call fcn.590a22e0
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.590a22e0
mov esi, dword [esp + 0xa0]
cmp esi, 0xffffffff
je 0x5904cd5e
mov eax, dword [0x591638bc]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x30
mov dword [esp + 0x24], eax
push esi
push 0x5918b3ac
lea ecx, [esp + 0x20]
mov byte [esp + 0xc0], 0x31
call fcn.590833f0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904cbe4
mov edi, str._cc_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, str._cc_:
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x20]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.590a4500
mov bl, 0x32
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], bl
call fcn.590a18b0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x34
push ecx
lea ecx, [esp + 0x14]
call fcn.590a2460
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], 0x31
call fcn.590a22e0
xor ebp, ebp
mov bl, 0x37
test ebp, ebp
je 0x5904cbfd
mov edi, 0x5918edec
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ebp, ecx
mov edx, dword [esp + 0x10]
mov eax, dword [edx - 8]
test eax, eax
je 0x5904cd22
push ebp
push str._email_:
lea ecx, [esp + 0x18]
call fcn.590833f0
mov esi, eax
cmp esi, 0xffffffff
je 0x5904cd22
push esi
push 0x591898f0
lea ecx, [esp + 0x18]
call fcn.590833f0
mov edx, eax
sub edx, esi
test edx, edx
jle 0x5904ccb0
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str._email_:
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, 0x59189900
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x20]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.590a4500
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], 0x36
call fcn.590a2460
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], 0x31
call fcn.590a22e0
mov ecx, dword [0x591638c0]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x24]
mov byte [esp + 0xb8], bl
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x5904ccdb
push 0xfde9
push eax
lea ecx, [esp + 0x1c]
call fcn.590abac0
lea edx, [esp + 0x14]
push 0x59188548
lea eax, [esp + 0x44]
push edx
push eax
call fcn.590a7dd0
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0xbc], 0x38
call fcn.590a8310
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x31
call fcn.590a7660
push ebp
push 0x5918edec
lea ecx, [esp + 0x18]
call fcn.590833f0
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x5904cbe8
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x30
call fcn.590a22e0
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.590a22e0
mov esi, dword [esp + 0xa4]
cmp esi, 0xffffffff
je 0x5904cfbb
mov eax, dword [0x591638bc]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x3b
mov dword [esp + 0x24], eax
push esi
push 0x5918b3ac
lea ecx, [esp + 0x20]
mov byte [esp + 0xc0], 0x3c
call fcn.590833f0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904ce41
mov edi, str._bcc_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, str._bcc_:
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x20]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.590a4500
mov bl, 0x3d
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], bl
call fcn.590a18b0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x3f
push ecx
lea ecx, [esp + 0x14]
call fcn.590a2460
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], 0x3c
call fcn.590a22e0
xor ebp, ebp
mov bl, 0x42
test ebp, ebp
je 0x5904ce5a
mov edi, 0x5918edec
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ebp, ecx
mov edx, dword [esp + 0x10]
mov eax, dword [edx - 8]
test eax, eax
je 0x5904cf7f
push ebp
push str._email_:
lea ecx, [esp + 0x18]
call fcn.590833f0
mov esi, eax
cmp esi, 0xffffffff
je 0x5904cf7f
push esi
push 0x591898f0
lea ecx, [esp + 0x18]
call fcn.590833f0
mov edx, eax
sub edx, esi
test edx, edx
jle 0x5904cf0d
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59189900
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str._email_:
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
mov edx, ecx
mov edi, 0x59189900
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x20]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.590a4500
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], 0x41
call fcn.590a2460
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], 0x3c
call fcn.590a22e0
mov ecx, dword [0x591638c0]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x24]
mov byte [esp + 0xb8], bl
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x5904cf38
push 0xfde9
push eax
lea ecx, [esp + 0x1c]
call fcn.590abac0
lea edx, [esp + 0x14]
push 0x59188548
lea eax, [esp + 0x44]
push edx
push eax
call fcn.590a7dd0
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0xbc], 0x43
call fcn.590a8310
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x3c
call fcn.590a7660
push ebp
push 0x5918edec
lea ecx, [esp + 0x18]
call fcn.590833f0
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x5904ce45
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x3b
call fcn.590a22e0
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.590a22e0
mov esi, dword [esp + 0xa8]
cmp esi, 0xffffffff
je 0x5904d168
mov ecx, dword [0x591638bc]
mov dword [esp + 0x10], ecx
mov bl, 0x45
push esi
push 0x591898f0
lea ecx, [esp + 0x20]
mov byte [esp + 0xc0], bl
call fcn.590833f0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904d046
mov edi, str._text_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str._text_:
sub edx, ecx
or ecx, 0xffffffff
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
add ecx, esi
lea edx, [esp + 0x20]
push ecx
push edx
lea ecx, [esp + 0x24]
call fcn.590a4500
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x46
call fcn.590a2460
mov byte [esp + 0xb8], bl
lea ecx, [esp + 0x1c]
jmp 0x5904d0a8
push 0x22
lea ecx, [esp + 0x1c]
call fcn.590833b0
mov edx, eax
cmp edx, 0xffffffff
je 0x5904d0ad
mov edi, str._text_:
or ecx, 0xffffffff
xor eax, eax
sub edx, esi
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str._text_:
sub edx, ecx
or ecx, 0xffffffff
inc edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
add ecx, esi
lea eax, [esp + 0x20]
push ecx
push eax
lea ecx, [esp + 0x24]
call fcn.590a4500
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x47
call fcn.590a2460
mov byte [esp + 0xb8], bl
lea ecx, [esp + 0x1c]
call fcn.590a22e0
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
test eax, eax
je 0x5904d157
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.590a18b0
lea eax, [esp + 0x20]
mov byte [esp + 0xbc], bl
push eax
call fcn.5900b260
add esp, 8
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x49
call fcn.590a2460
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.590a18b0
lea eax, [esp + 0x20]
mov byte [esp + 0xbc], bl
push eax
call fcn.590301a0
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xbc], 0x4b
call fcn.590a77f0
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], bl
call fcn.590a7660
lea ecx, [esp + 0x20]
push ecx
call fcn.5900bc70
add esp, 4
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.590a22e0
mov eax, dword [0x591ae1c8]
test eax, eax
je 0x5904d1ad
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x20]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [esp + 0x3c]
push ecx
mov ecx, dword [esp + 0x48]
push edx
mov edx, dword [esp + 0x48]
push eax
push ecx
push edx
push str.AnalyseYahooEMailXml__wstrAccount_:__s___wstrTo_:__s____wstrCC_:__s___wstrSubject_:__s___wstrText_:__s___wstrBCC_:__s___wstrHtml_:__s_
push str.MailLog
push 0xffffffffffffffff
push 0x591ae15c
call fcn.590851e0
add esp, 0x2c
mov eax, dword [esp + 0x38]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x5904d20b
mov ecx, dword [esp + 0x3c]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x5904d20b
mov edx, dword [esp + 0x34]
mov eax, dword [edx - 8]
test eax, eax
jne 0x5904d20b
mov eax, dword [esp + 0x28]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x5904d20b
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x5904d20b
mov edx, dword [esp + 0x30]
mov eax, dword [edx - 8]
test eax, eax
jne 0x5904d20b
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x5904d20b
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x18]
jmp 0x5904d6ae
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], 6
call fcn.590a22e0
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x5904d232
mov dword [eax], 1
jmp 0x5904d6b3
mov eax, dword [0x591638c0]
mov dword [esp + 0x14], eax
mov esi, dword [esp + 0xcc]
mov byte [esp + 0xb8], 0x4e
test esi, esi
je 0x5904d5e5
mov dword [esp + 0x68], eax
mov byte [esp + 0xb8], 0x4f
mov dword [esp + 0x6c], eax
mov byte [esp + 0xb8], 0x50
mov dword [esp + 0x70], eax
mov byte [esp + 0xb8], 0x51
mov dword [esp + 0x74], eax
mov byte [esp + 0xb8], 0x52
mov dword [esp + 0x78], eax
mov byte [esp + 0xb8], 0x53
mov dword [esp + 0x7c], eax
mov byte [esp + 0xb8], 0x54
mov dword [esp + 0x80], eax
mov byte [esp + 0xb8], 0x55
mov dword [esp + 0x84], eax
mov ecx, dword [0x591638bc]
mov byte [esp + 0xb8], 0x56
mov dword [esp + 0x88], ecx
mov eax, dword [esi + 4]
mov edx, dword [esi]
mov ecx, dword [esi + 8]
mov bl, 0x58
mov byte [esp + 0xb8], bl
mov dword [esp + 0x54], eax
mov dword [esp + 0x50], edx
mov edx, dword [esi + 0xc]
lea eax, [esp + 0x60]
mov dword [esp + 0x58], ecx
push eax
mov dword [esp + 0x60], edx
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov ecx, dword [esp + 0xc8]
lea edx, [esp + 0x38]
mov dword [esp + 0x4c], ecx
push edx
lea ecx, [esp + 0x70]
call fcn.590a77f0
lea eax, [esp + 0x3c]
lea ecx, [esp + 0x74]
push eax
call fcn.590a77f0
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x7c]
call fcn.590a77f0
lea edx, [esp + 0x30]
lea ecx, [esp + 0x7c]
push edx
call fcn.590a77f0
lea eax, [esp + 0x28]
lea ecx, [esp + 0x70]
push eax
call fcn.590a77f0
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0x84]
call fcn.590a77f0
lea edx, [esp + 0x2c]
lea ecx, [esp + 0x84]
push edx
call fcn.590a77f0
lea eax, [esp + 0x14]
lea ecx, [esp + 0x68]
push eax
call fcn.590a77f0
lea ecx, [esp + 0x1c]
push 0x5918a49c
push ecx
call fcn.59059510
add esp, 8
push eax
lea ecx, [esp + 0x8c]
mov byte [esp + 0xbc], 0x59
call fcn.590a2460
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], bl
call fcn.590a22e0
mov edx, dword [esp + 0x88]
push 0x180
push 0x8101
push edx
call fcn.5908a6ad
mov edi, eax
mov eax, dword [0x591638bc]
add esp, 0xc
mov dword [esp + 0x10], eax
cmp edi, 0xffffffff
mov byte [esp + 0xb8], 0x5a
je 0x5904d442
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x90]
push ecx
push edx
push edi
call fcn.5908a4bd
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esi + 0xc]
add esp, 0xc
push eax
mov eax, dword [esi + 8]
push ecx
mov ecx, dword [esi + 4]
push edx
mov edx, dword [esi]
push eax
push ecx
push edx
lea eax, [esp + 0x28]
push str._r_n_r_nliTickBegin:_I64u__liTickEnd:_I64u__liTickRecord:_I64u
push eax
call fcn.590a5140
mov ecx, dword [esp + 0x30]
add esp, 0x20
mov eax, dword [ecx - 8]
lea ecx, [esp + 0x10]
push eax
push 0
call fcn.590a2f70
push eax
push edi
call fcn.5908a4bd
push edi
call fcn.5908a3dd
add esp, 0x10
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x48]
mov esi, dword [0x591af034]
mov eax, dword [edx - 8]
add eax, ecx
cmp esi, esi
mov dword [esp + 0x8c], eax
jl 0x5904d470
lea edx, [esi + 1]
push 0xffffffffffffffff
push edx
mov ecx, 0x591af030
call fcn.59060250
mov ecx, dword [0x591af030]
mov eax, esi
mov edx, dword [esp + 0x4c]
shl eax, 4
add eax, esi
lea esi, [esp + 0x50]
lea ebp, [ecx + eax*4]
mov ecx, 6
lea eax, [esp + 0x68]
lea edi, [ebp + 4]
mov dword [ebp], edx
rep movsd dword es:[edi], dword [esi]
push eax
lea ecx, [ebp + 0x1c]
call fcn.590a77f0
lea ecx, [esp + 0x6c]
push ecx
lea ecx, [ebp + 0x20]
call fcn.590a77f0
lea edx, [esp + 0x70]
lea ecx, [ebp + 0x24]
push edx
call fcn.590a77f0
lea eax, [esp + 0x74]
lea ecx, [ebp + 0x28]
push eax
call fcn.590a77f0
lea ecx, [esp + 0x78]
push ecx
lea ecx, [ebp + 0x2c]
call fcn.590a77f0
lea edx, [esp + 0x7c]
lea ecx, [ebp + 0x30]
push edx
call fcn.590a77f0
lea eax, [esp + 0x80]
lea ecx, [ebp + 0x34]
push eax
call fcn.590a77f0
lea ecx, [esp + 0x84]
push ecx
lea ecx, [ebp + 0x38]
call fcn.590a77f0
lea edx, [esp + 0x88]
lea ecx, [ebp + 0x3c]
push edx
call fcn.590a2460
mov eax, dword [esp + 0x8c]
lea ecx, [esp + 0x10]
mov dword [ebp + 0x40], eax
mov byte [esp + 0xb8], bl
call fcn.590a22e0
lea ecx, [esp + 0x88]
mov byte [esp + 0xb8], 0x62
call fcn.590a22e0
lea ecx, [esp + 0x84]
mov byte [esp + 0xb8], 0x61
call fcn.590a7660
lea ecx, [esp + 0x80]
mov byte [esp + 0xb8], 0x60
call fcn.590a7660
lea ecx, [esp + 0x7c]
mov byte [esp + 0xb8], 0x5f
call fcn.590a7660
lea ecx, [esp + 0x78]
mov byte [esp + 0xb8], 0x5e
call fcn.590a7660
lea ecx, [esp + 0x74]
mov byte [esp + 0xb8], 0x5d
call fcn.590a7660
mov byte [esp + 0xb8], 0x5c
lea ecx, [esp + 0x70]
call fcn.590a7660
lea ecx, [esp + 0x6c]
mov byte [esp + 0xb8], 0x5b
call fcn.590a7660
lea ecx, [esp + 0x68]
mov byte [esp + 0xb8], 0x4e
call fcn.590a7660
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 6
call fcn.590a7660
jmp 0x5904d6b3
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 6
call fcn.590a7660
lea ecx, [esp + 0x44]
push 0
push ecx
call fcn.590593f0
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
push 1
push 0
push 0
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x6c]
push ecx
push edx
push eax
mov byte [esp + 0xec], 0x64
call fcn.5900c510
add esp, 0x34
test eax, eax
je 0x5904d6a2
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x90]
mov ecx, dword [esp + 0x44]
push edi
push esi
push ecx
call fcn.5900c300
add esp, 0xc
test eax, eax
je 0x5904d6a2
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
push 0
push 0
push 0
push 0
push 0
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x50]
push ecx
mov ecx, dword [esp + 0x5c]
push edx
mov edx, dword [esp + 0x5c]
push eax
mov eax, dword [esp + 0x6c]
push ecx
push edx
push 2
push 1
push eax
push edi
push esi
call fcn.5900e5d0
add esp, 0x44
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x44]
call fcn.590a22e0
lea ecx, [esp + 0x28]
mov byte [esp + 0xb8], 5
call fcn.590a7660
lea ecx, [esp + 0x30]
mov byte [esp + 0xb8], 4
call fcn.590a7660
lea ecx, [esp + 0x34]
mov byte [esp + 0xb8], 3
call fcn.590a7660
lea ecx, [esp + 0x3c]
mov byte [esp + 0xb8], 2
call fcn.590a7660
lea ecx, [esp + 0x2c]
mov byte [esp + 0xb8], 1
call fcn.590a7660
lea ecx, [esp + 0x20]
mov byte [esp + 0xb8], 0
call fcn.590a7660
lea ecx, [esp + 0x38]
mov dword [esp + 0xb8], 0xffffffff
call fcn.590a7660
mov ecx, dword [esp + 0xb0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xac
ret