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

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x59141088
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 0x59042a00
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 0x59044255
test ebp, ebp
je 0x59044255
mov eax, dword [0x59194a20]
test eax, eax
je 0x59042a4b
push 0x59176b68
push str.MailLog
push 0xffffffffffffffff
push 0x591949b4
call fcn.59078030
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.5900cfc0
add esp, 0x10
cmp eax, 0xffffffff
jne 0x59042a8f
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xc8]
push esi
push eax
push ecx
push ebp
push ebx
call fcn.590131e0
add esp, 0x14
jmp 0x59044255
mov edi, 0x59173d08
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x59173d08
push ebp
push ebx
call fcn.5900cfc0
add esp, 0x10
cmp eax, 0xffffffff
mov dword [esp + 0x10], eax
je 0x59044255
mov edi, 0x59173d08
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 0x59042b09
mov ecx, dword [esp + 0x10]
mov eax, ebp
sub eax, ecx
mov dword [esp + 0x14], eax
mov edi, 0x59173d08
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 0x59042b09
mov al, byte [esi + edx + 1]
inc esi
cmp al, 0xd
jne 0x59042ae7
mov edi, 0x59173d08
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 0x59044255
test esi, esi
jle 0x59044255
mov edi, 0x59176b64
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push 0x59176b64
push esi
push edx
call fcn.5900cfc0
mov eax, dword [0x5914f850]
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 0x59173d00
push ebp
push ebx
mov byte [esp + 0xd4], 6
call fcn.5900f220
mov edx, eax
add esp, 0x1c
cmp edx, 0xffffffff
je 0x590441db
mov edi, 0x59173d00
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.5912c500
mov esi, eax
add esp, 4
test esi, esi
je 0x59042e4e
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.5907e1f0
mov ecx, dword [0x5914f850]
add esp, 0xc
mov dword [esp + 0x10], ecx
push 0xfde9
push esi
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 7
call fcn.5909e870
push esi
call fcn.5912c529
add esp, 4
lea ecx, [esp + 0x4c]
call fcn.590f52a0
mov edx, dword [esp + 0x10]
mov bl, 8
push edx
lea ecx, [esp + 0x50]
mov byte [esp + 0xbc], bl
call fcn.590f6000
lea eax, [esp + 0x4c]
push 0
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.59042660
add esp, 0xc
push eax
lea ecx, [esp + 0x40]
mov byte [esp + 0xbc], 9
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea edx, [esp + 0x4c]
push 0
lea eax, [esp + 0x18]
push edx
push eax
call fcn.590426c0
add esp, 0xc
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0xbc], 0xa
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea ecx, [esp + 0x4c]
push 0
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.59042720
add esp, 0xc
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0xbc], 0xb
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
push 0
lea eax, [esp + 0x50]
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.59042600
add esp, 0xc
push eax
lea ecx, [esp + 0x3c]
mov byte [esp + 0xbc], 0xc
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea edx, [esp + 0x4c]
push 0
lea eax, [esp + 0x18]
push edx
push eax
call fcn.590428b0
add esp, 0xc
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xbc], 0xd
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea ecx, [esp + 0x4c]
push 0
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.59042850
add esp, 0xc
push eax
lea ecx, [esp + 0x30]
mov byte [esp + 0xbc], 0xe
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
mov eax, dword [esp + 0x20]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x59042def
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x59042def
lea ecx, [esp + 0x14]
push eax
push ecx
call fcn.5900abe0
add esp, 8
lea edx, [esp + 0x14]
lea ecx, [esp + 0x20]
push edx
mov byte [esp + 0xbc], 0xf
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea eax, [esp + 0x4c]
push 0
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.59042910
add esp, 0xc
push eax
lea ecx, [esp + 0x2c]
mov byte [esp + 0xbc], 0x10
call fcn.5909a5a0
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea ecx, [esp + 0x4c]
mov byte [esp + 0xb8], 7
call fcn.590f5330
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 6
call fcn.5909a410
mov ebx, dword [esp + 0xc0]
mov edx, dword [esp + 0x38]
xor esi, esi
cmp dword [edx - 8], esi
jne 0x59043d43
mov eax, dword [esp + 0x3c]
cmp dword [eax - 8], esi
jne 0x59043d43
mov ecx, dword [esp + 0x34]
cmp dword [ecx - 8], esi
jne 0x59043d43
mov edx, dword [esp + 0x28]
cmp dword [edx - 8], esi
jne 0x59043d43
mov eax, dword [esp + 0x20]
cmp dword [eax - 8], esi
jne 0x59043d43
mov ecx, dword [esp + 0x30]
cmp dword [ecx - 8], esi
jne 0x59043d43
mov edx, dword [esp + 0x2c]
cmp dword [edx - 8], esi
jne 0x59043d43
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 + 0x24]
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.59094b40
mov eax, dword [esp + 0x1c]
mov byte [esp + 0xb8], 0x12
cmp dword [eax - 8], esi
jne 0x59042f27
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x1c]
jmp 0x590441d6
mov ecx, dword [esp + esi + 0x4c]
push ecx
lea ecx, [esp + 0x20]
call fcn.590998d0
mov dword [esp + esi + 0x94], eax
add esi, 4
cmp esi, 0x1c
jb 0x59042f27
mov esi, dword [esp + 0xac]
cmp esi, 0xffffffff
je 0x5904302e
mov edx, dword [0x5914f84c]
mov dword [esp + 0x10], edx
mov bl, 0x14
push esi
push 0x59173344
lea ecx, [esp + 0x24]
mov byte [esp + 0xc0], bl
call fcn.59076240
mov edx, eax
cmp edx, 0xffffffff
je 0x59042ff1
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, 0x59173354
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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 + 0x28]
call fcn.590972b0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x15
call fcn.59095210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.59095090
mov ecx, dword [esp + 0x10]
push str.SaveMessage
push ecx
call fcn.5907c906
add esp, 8
mov byte [esp + 0xb8], 0x12
test eax, eax
lea ecx, [esp + 0x10]
jne 0x59043029
call fcn.59095090
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x1c]
jmp 0x590441d6
call fcn.59095090
mov esi, dword [esp + 0x94]
cmp esi, 0xffffffff
je 0x590431d3
mov edx, dword [0x5914f84c]
mov dword [esp + 0x10], edx
mov bl, 0x17
push esi
push 0x59173344
lea ecx, [esp + 0x24]
mov byte [esp + 0xc0], bl
call fcn.59076240
mov edx, eax
cmp edx, 0xffffffff
je 0x590430db
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, 0x59173354
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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 + 0x28]
call fcn.590972b0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x18
call fcn.59095210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.59095090
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
test eax, eax
je 0x590431c2
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x1c], esp
push edx
call fcn.59094660
lea eax, [esp + 0x18]
mov byte [esp + 0xbc], bl
push eax
call fcn.5900aa80
add esp, 8
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x1a
call fcn.59095210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.59095090
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
push ecx
push eax
call fcn.5900a590
add esp, 8
test eax, eax
je 0x590431af
mov eax, dword [esp + 0x10]
mov ecx, dword [eax - 8]
test ecx, ecx
jle 0x590431c2
push 1
push 0
push eax
call fcn.5900a6a0
mov ebp, eax
lea edi, [ebp + ebp + 4]
push edi
call fcn.5912c500
mov esi, eax
add esp, 0x10
test esi, esi
je 0x590431c2
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.5900a6a0
add esp, 0xc
lea ecx, [esp + 0x28]
mov word [esi + ebp*2], 0
push esi
call fcn.5909a690
push esi
call fcn.5912c529
add esp, 4
jmp 0x590431c2
mov ecx, dword [esp + 0x10]
push 0xfde9
push ecx
lea ecx, [esp + 0x30]
call fcn.5909e870
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.59095090
mov esi, dword [esp + 0x98]
cmp esi, 0xffffffff
je 0x590433a4
mov eax, dword [0x5914f84c]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x1c
mov dword [esp + 0x24], eax
push esi
push 0x59176b40
lea ecx, [esp + 0x24]
mov byte [esp + 0xc0], 0x1d
call fcn.59076240
mov edx, eax
cmp edx, 0xffffffff
je 0x590432b6
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, 0x59173354
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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 + 0x28]
call fcn.590972b0
mov bl, 0x1e
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], bl
call fcn.59094660
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x20
push ecx
lea ecx, [esp + 0x14]
call fcn.59095210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.59095090
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x1d
call fcn.59095090
mov edx, dword [esp + 0x10]
mov eax, dword [edx - 8]
test eax, eax
je 0x59043382
push str._email_:
lea ecx, [esp + 0x14]
call fcn.59076230
mov esi, eax
cmp esi, 0xffffffff
je 0x59043382
push esi
push 0x59173344
lea ecx, [esp + 0x18]
call fcn.59076240
mov edx, eax
sub edx, esi
test edx, edx
jle 0x59043368
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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, 0x59173354
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.590972b0
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], 0x22
call fcn.59095210
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x1d
call fcn.59095090
mov eax, dword [esp + 0x24]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x59043382
push 0xfde9
push eax
lea ecx, [esp + 0x40]
call fcn.5909e870
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x1c
call fcn.59095090
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.59095090
mov esi, dword [esp + 0x9c]
cmp esi, 0xffffffff
je 0x59043601
mov eax, dword [0x5914f84c]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x25
mov dword [esp + 0x14], eax
push esi
push 0x59174d44
lea ecx, [esp + 0x24]
mov byte [esp + 0xc0], 0x26
call fcn.59076240
mov edx, eax
cmp edx, 0xffffffff
je 0x59043487
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, 0x59173354
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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 + 0x28]
call fcn.590972b0
mov bl, 0x27
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], bl
call fcn.59094660
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x29
push ecx
lea ecx, [esp + 0x14]
call fcn.59095210
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], bl
call fcn.59095090
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x26
call fcn.59095090
xor ebp, ebp
mov bl, 0x2c
test ebp, ebp
je 0x590434a0
mov edi, 0x59176b30
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 0x590435c5
push ebp
push str._email_:
lea ecx, [esp + 0x18]
call fcn.59076240
mov esi, eax
cmp esi, 0xffffffff
je 0x590435c5
push esi
push 0x59173344
lea ecx, [esp + 0x18]
call fcn.59076240
mov edx, eax
sub edx, esi
test edx, edx
jle 0x59043553
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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, 0x59173354
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.590972b0
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], 0x2b
call fcn.59095210
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], 0x26
call fcn.59095090
mov ecx, dword [0x5914f850]
mov dword [esp + 0x24], ecx
mov eax, dword [esp + 0x14]
mov byte [esp + 0xb8], bl
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x5904357e
push 0xfde9
push eax
lea ecx, [esp + 0x2c]
call fcn.5909e870
lea edx, [esp + 0x24]
push 0x59172460
lea eax, [esp + 0x1c]
push edx
push eax
call fcn.5909ab80
push eax
lea ecx, [esp + 0x40]
mov byte [esp + 0xbc], 0x2d
call fcn.5909b0c0
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x26
call fcn.5909a410
push ebp
push 0x59176b30
lea ecx, [esp + 0x18]
call fcn.59076240
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x5904348b
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x25
call fcn.59095090
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.59095090
mov esi, dword [esp + 0xa0]
cmp esi, 0xffffffff
je 0x5904385e
mov eax, dword [0x5914f84c]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x30
mov dword [esp + 0x24], eax
push esi
push 0x59174d44
lea ecx, [esp + 0x24]
mov byte [esp + 0xc0], 0x31
call fcn.59076240
mov edx, eax
cmp edx, 0xffffffff
je 0x590436e4
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, 0x59173354
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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 + 0x1c]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x28]
call fcn.590972b0
mov bl, 0x32
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], bl
call fcn.59094660
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x34
push ecx
lea ecx, [esp + 0x14]
call fcn.59095210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.59095090
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], 0x31
call fcn.59095090
xor ebp, ebp
mov bl, 0x37
test ebp, ebp
je 0x590436fd
mov edi, 0x59176b30
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 0x59043822
push ebp
push str._email_:
lea ecx, [esp + 0x18]
call fcn.59076240
mov esi, eax
cmp esi, 0xffffffff
je 0x59043822
push esi
push 0x59173344
lea ecx, [esp + 0x18]
call fcn.59076240
mov edx, eax
sub edx, esi
test edx, edx
jle 0x590437b0
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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, 0x59173354
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x1c]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.590972b0
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], 0x36
call fcn.59095210
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], 0x31
call fcn.59095090
mov ecx, dword [0x5914f850]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x24]
mov byte [esp + 0xb8], bl
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x590437db
push 0xfde9
push eax
lea ecx, [esp + 0x1c]
call fcn.5909e870
lea edx, [esp + 0x14]
push 0x59172460
lea eax, [esp + 0x44]
push edx
push eax
call fcn.5909ab80
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0xbc], 0x38
call fcn.5909b0c0
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x31
call fcn.5909a410
push ebp
push 0x59176b30
lea ecx, [esp + 0x18]
call fcn.59076240
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x590436e8
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x30
call fcn.59095090
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.59095090
mov esi, dword [esp + 0xa4]
cmp esi, 0xffffffff
je 0x59043abb
mov eax, dword [0x5914f84c]
mov dword [esp + 0x10], eax
mov byte [esp + 0xb8], 0x3b
mov dword [esp + 0x24], eax
push esi
push 0x59174d44
lea ecx, [esp + 0x24]
mov byte [esp + 0xc0], 0x3c
call fcn.59076240
mov edx, eax
cmp edx, 0xffffffff
je 0x59043941
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, 0x59173354
sub edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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 + 0x1c]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x28]
call fcn.590972b0
mov bl, 0x3d
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xbc], bl
call fcn.59094660
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x3f
push ecx
lea ecx, [esp + 0x14]
call fcn.59095210
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], bl
call fcn.59095090
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], 0x3c
call fcn.59095090
xor ebp, ebp
mov bl, 0x42
test ebp, ebp
je 0x5904395a
mov edi, 0x59176b30
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 0x59043a7f
push ebp
push str._email_:
lea ecx, [esp + 0x18]
call fcn.59076240
mov esi, eax
cmp esi, 0xffffffff
je 0x59043a7f
push esi
push 0x59173344
lea ecx, [esp + 0x18]
call fcn.59076240
mov edx, eax
sub edx, esi
test edx, edx
jle 0x59043a0d
mov edi, str._email_:
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x59173354
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, 0x59173354
or ecx, 0xffffffff
add esi, edx
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x1c]
add ecx, esi
push ecx
push eax
lea ecx, [esp + 0x1c]
call fcn.590972b0
push eax
lea ecx, [esp + 0x28]
mov byte [esp + 0xbc], 0x41
call fcn.59095210
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], 0x3c
call fcn.59095090
mov ecx, dword [0x5914f850]
mov dword [esp + 0x14], ecx
mov eax, dword [esp + 0x24]
mov byte [esp + 0xb8], bl
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x59043a38
push 0xfde9
push eax
lea ecx, [esp + 0x1c]
call fcn.5909e870
lea edx, [esp + 0x14]
push 0x59172460
lea eax, [esp + 0x44]
push edx
push eax
call fcn.5909ab80
push eax
lea ecx, [esp + 0x34]
mov byte [esp + 0xbc], 0x43
call fcn.5909b0c0
lea ecx, [esp + 0x40]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 0x3c
call fcn.5909a410
push ebp
push 0x59176b30
lea ecx, [esp + 0x18]
call fcn.59076240
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x59043945
lea ecx, [esp + 0x24]
mov byte [esp + 0xb8], 0x3b
call fcn.59095090
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.59095090
mov esi, dword [esp + 0xa8]
cmp esi, 0xffffffff
je 0x59043c8f
mov ecx, dword [0x5914f84c]
mov dword [esp + 0x10], ecx
mov bl, 0x45
push esi
push 0x59173344
lea ecx, [esp + 0x24]
mov byte [esp + 0xc0], bl
call fcn.59076240
mov edx, eax
cmp edx, 0xffffffff
je 0x59043b46
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 + 0x1c]
push ecx
push edx
lea ecx, [esp + 0x28]
call fcn.590972b0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x46
call fcn.59095210
mov byte [esp + 0xb8], bl
lea ecx, [esp + 0x18]
jmp 0x59043ba8
push 0x22
lea ecx, [esp + 0x20]
call fcn.59076200
mov edx, eax
cmp edx, 0xffffffff
je 0x59043bad
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 + 0x1c]
push ecx
push eax
lea ecx, [esp + 0x28]
call fcn.590972b0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x47
call fcn.59095210
mov byte [esp + 0xb8], bl
lea ecx, [esp + 0x18]
call fcn.59095090
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
test eax, eax
je 0x59043c7e
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.59094660
lea eax, [esp + 0x1c]
mov byte [esp + 0xbc], bl
push eax
call fcn.5900aa80
add esp, 8
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xbc], 0x49
call fcn.59095210
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], bl
call fcn.59095090
push ecx
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x44], esp
push edx
call fcn.59094660
lea eax, [esp + 0x1c]
mov byte [esp + 0xbc], bl
push eax
call fcn.59029320
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xbc], 0x4b
call fcn.5909a5a0
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], bl
call fcn.5909a410
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x18]
push ecx
push edx
call fcn.5900b440
add esp, 8
push eax
lea ecx, [esp + 0x24]
mov byte [esp + 0xbc], 0x4c
call fcn.5909a5a0
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], bl
call fcn.5909a410
lea ecx, [esp + 0x10]
mov byte [esp + 0xb8], 0x12
call fcn.59095090
mov eax, dword [0x59194a20]
test eax, eax
je 0x59043cd4
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
push str.AnalyseYahooEMailXml__wstrAccount_:__s___wstrTo_:__s____wstrCC_:__s___wstrSubject_:__s___wstrText_:__s___wstrBCC_:__s___wstrHtml_:__s_
push str.MailLog
push 0xffffffffffffffff
push 0x591949b4
call fcn.59078030
add esp, 0x2c
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x59043d32
mov edx, dword [esp + 0x3c]
mov eax, dword [edx - 8]
test eax, eax
jne 0x59043d32
mov eax, dword [esp + 0x34]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x59043d32
mov ecx, dword [esp + 0x28]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x59043d32
mov edx, dword [esp + 0x20]
mov eax, dword [edx - 8]
test eax, eax
jne 0x59043d32
mov eax, dword [esp + 0x30]
mov ecx, dword [eax - 8]
test ecx, ecx
jne 0x59043d32
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx - 8]
test eax, eax
jne 0x59043d32
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x1c]
jmp 0x590441d6
lea ecx, [esp + 0x1c]
mov byte [esp + 0xb8], 6
call fcn.59095090
mov eax, dword [esp + 0xd0]
test eax, eax
je 0x59043d59
mov dword [eax], 1
jmp 0x590441db
mov eax, dword [0x5914f850]
mov dword [esp + 0x14], eax
mov esi, dword [esp + 0xcc]
mov byte [esp + 0xb8], 0x4f
test esi, esi
je 0x5904410d
mov dword [esp + 0x68], eax
mov byte [esp + 0xb8], 0x50
mov dword [esp + 0x6c], eax
mov byte [esp + 0xb8], 0x51
mov dword [esp + 0x70], eax
mov byte [esp + 0xb8], 0x52
mov dword [esp + 0x74], eax
mov byte [esp + 0xb8], 0x53
mov dword [esp + 0x78], eax
mov byte [esp + 0xb8], 0x54
mov dword [esp + 0x7c], eax
mov byte [esp + 0xb8], 0x55
mov dword [esp + 0x80], eax
mov byte [esp + 0xb8], 0x56
mov dword [esp + 0x84], eax
mov edx, dword [0x5914f84c]
mov byte [esp + 0xb8], 0x57
mov dword [esp + 0x88], edx
mov ecx, dword [esi + 4]
mov eax, dword [esi]
mov edx, dword [esi + 8]
mov bl, 0x59
mov byte [esp + 0xb8], bl
mov dword [esp + 0x54], ecx
mov dword [esp + 0x50], eax
mov eax, dword [esi + 0xc]
lea ecx, [esp + 0x60]
mov dword [esp + 0x58], edx
push ecx
mov dword [esp + 0x60], eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov edx, dword [esp + 0xc8]
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x70]
mov dword [esp + 0x50], edx
call fcn.5909a5a0
lea ecx, [esp + 0x3c]
push ecx
lea ecx, [esp + 0x78]
call fcn.5909a5a0
lea edx, [esp + 0x34]
lea ecx, [esp + 0x78]
push edx
call fcn.5909a5a0
lea eax, [esp + 0x30]
lea ecx, [esp + 0x7c]
push eax
call fcn.5909a5a0
lea ecx, [esp + 0x28]
push ecx
lea ecx, [esp + 0x74]
call fcn.5909a5a0
lea edx, [esp + 0x20]
lea ecx, [esp + 0x80]
push edx
call fcn.5909a5a0
lea eax, [esp + 0x2c]
lea ecx, [esp + 0x84]
push eax
call fcn.5909a5a0
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x6c]
call fcn.5909a5a0
lea edx, [esp + 0x18]
push 0x59173ec8
push edx
call fcn.59050110
add esp, 8
push eax
lea ecx, [esp + 0x8c]
mov byte [esp + 0xbc], 0x5a
call fcn.59095210
lea ecx, [esp + 0x18]
mov byte [esp + 0xb8], bl
call fcn.59095090
mov eax, dword [esp + 0x88]
push 0x180
push 0x8101
push eax
call fcn.5907d46d
mov ecx, dword [0x5914f84c]
add esp, 0xc
mov edi, eax
mov dword [esp + 0x10], ecx
cmp edi, 0xffffffff
mov byte [esp + 0xb8], 0x5b
je 0x59043f6a
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x90]
push edx
push eax
push edi
call fcn.5907d27d
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
mov eax, dword [esi + 0xc]
add esp, 0xc
push ecx
mov ecx, dword [esi + 8]
push edx
mov edx, dword [esi + 4]
push eax
mov eax, dword [esi]
push ecx
push edx
push eax
lea ecx, [esp + 0x28]
push str._r_n_r_nliTickBegin:_I64u__liTickEnd:_I64u__liTickRecord:_I64u
push ecx
call fcn.59097ef0
mov edx, dword [esp + 0x30]
add esp, 0x20
lea ecx, [esp + 0x10]
mov eax, dword [edx - 8]
push eax
push 0
call fcn.59095d20
push eax
push edi
call fcn.5907d27d
push edi
call fcn.5907d19d
add esp, 0x10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x48]
mov esi, dword [0x59195884]
mov eax, dword [eax - 8]
add eax, ecx
cmp esi, esi
mov dword [esp + 0x8c], eax
jl 0x59043f98
lea edx, [esi + 1]
push 0xffffffffffffffff
push edx
mov ecx, 0x59195880
call fcn.59056ad0
mov ecx, dword [0x59195880]
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.5909a5a0
lea ecx, [esp + 0x6c]
push ecx
lea ecx, [ebp + 0x20]
call fcn.5909a5a0
lea edx, [esp + 0x70]
lea ecx, [ebp + 0x24]
push edx
call fcn.5909a5a0
lea eax, [esp + 0x74]
lea ecx, [ebp + 0x28]
push eax
call fcn.5909a5a0
lea ecx, [esp + 0x78]
push ecx
lea ecx, [ebp + 0x2c]
call fcn.5909a5a0
lea edx, [esp + 0x7c]
lea ecx, [ebp + 0x30]
push edx
call fcn.5909a5a0
lea eax, [esp + 0x80]
lea ecx, [ebp + 0x34]
push eax
call fcn.5909a5a0
lea ecx, [esp + 0x84]
push ecx
lea ecx, [ebp + 0x38]
call fcn.5909a5a0
lea edx, [esp + 0x88]
lea ecx, [ebp + 0x3c]
push edx
call fcn.59095210
mov eax, dword [esp + 0x8c]
lea ecx, [esp + 0x10]
mov dword [ebp + 0x40], eax
mov byte [esp + 0xb8], bl
call fcn.59095090
lea ecx, [esp + 0x88]
mov byte [esp + 0xb8], 0x63
call fcn.59095090
lea ecx, [esp + 0x84]
mov byte [esp + 0xb8], 0x62
call fcn.5909a410
lea ecx, [esp + 0x80]
mov byte [esp + 0xb8], 0x61
call fcn.5909a410
lea ecx, [esp + 0x7c]
mov byte [esp + 0xb8], 0x60
call fcn.5909a410
lea ecx, [esp + 0x78]
mov byte [esp + 0xb8], 0x5f
call fcn.5909a410
lea ecx, [esp + 0x74]
mov byte [esp + 0xb8], 0x5e
call fcn.5909a410
mov byte [esp + 0xb8], 0x5d
lea ecx, [esp + 0x70]
call fcn.5909a410
lea ecx, [esp + 0x6c]
mov byte [esp + 0xb8], 0x5c
call fcn.5909a410
lea ecx, [esp + 0x68]
mov byte [esp + 0xb8], 0x4f
call fcn.5909a410
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 6
call fcn.5909a410
jmp 0x590441db
lea ecx, [esp + 0x14]
mov byte [esp + 0xb8], 6
call fcn.5909a410
lea ecx, [esp + 0x44]
push 0
push ecx
call fcn.5904fff0
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], 0x65
call fcn.5900bf80
add esp, 0x34
test eax, eax
je 0x590441ca
mov edi, dword [esp + 0x48]
mov esi, dword [esp + 0x90]
mov ecx, dword [esp + 0x44]
push edi
push esi
push ecx
call fcn.5900bd70
add esp, 0xc
test eax, eax
je 0x590441ca
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.5900e040
add esp, 0x44
mov byte [esp + 0xb8], 6
lea ecx, [esp + 0x44]
call fcn.59095090
lea ecx, [esp + 0x28]
mov byte [esp + 0xb8], 5
call fcn.5909a410
lea ecx, [esp + 0x30]
mov byte [esp + 0xb8], 4
call fcn.5909a410
lea ecx, [esp + 0x34]
mov byte [esp + 0xb8], 3
call fcn.5909a410
lea ecx, [esp + 0x3c]
mov byte [esp + 0xb8], 2
call fcn.5909a410
lea ecx, [esp + 0x2c]
mov byte [esp + 0xb8], 1
call fcn.5909a410
lea ecx, [esp + 0x20]
mov byte [esp + 0xb8], 0
call fcn.5909a410
lea ecx, [esp + 0x38]
mov dword [esp + 0xb8], 0xffffffff
call fcn.5909a410
mov ecx, dword [esp + 0xb0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xac
ret