Function at 0x590336b0
Capabilities:
Move file

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x59143d32
push eax
mov eax, dword [esp + 0x20]
mov dword fs:[0], esp
sub esp, 0xb8
test eax, eax
je 0x590336d9
mov dword [eax], 0
mov eax, dword [0x5919cca0]
push ebx
push ebp
mov ebp, dword [esp + 0xd4]
push esi
mov esi, dword [esp + 0xd4]
test eax, eax
push edi
je 0x5903370f
push ebp
push esi
push str.AnalyseGMailEMailAttach__data_:__08x___len_:__d_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x18
test esi, esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x34], ebp
je 0x59033f5f
test ebp, ebp
je 0x59033f5f
push 0x5917ae30
push ebp
push esi
call fcn.5900f390
mov ebx, eax
add esp, 0xc
cmp ebx, 0xffffffff
je 0x59033f5f
push 0x5917a428
push str.X_Goog_Upload_File_Name:
push ebp
lea eax, [esp + 0x20]
push esi
push eax
call fcn.5901c080
add esp, 0x14
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xd0], 0
mov eax, dword [ecx - 8]
test eax, eax
je 0x59033f4b
mov edi, 0x5917ae30
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [0x5919cca0]
not ecx
dec ecx
add ebx, ecx
add esi, ebx
sub ebp, ebx
test eax, eax
je 0x590337ad
push ebp
push ebx
push str.AnalyseGMailEMailAttach____d__d_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x18
lea edx, [esp + 0x20]
push 0x5917a758
push edx
call fcn.590543e0
add esp, 8
push 0x5919dc50
lea ecx, [esp + 0x1c]
mov byte [esp + 0xd4], 1
call fcn.5909e9e0
lea ecx, [esp + 0xb0]
mov byte [esp + 0xd0], 2
call fcn.590ab1c0
lea ecx, [esp + 0x40]
mov byte [esp + 0xd0], 3
call fcn.590a4b00
lea ecx, [esp + 0x50]
mov byte [esp + 0xd0], 4
call fcn.590a4b00
mov eax, dword [esp + 0x14]
mov byte [esp + 0xd0], 5
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x59033975
mov eax, dword [0x5919cca0]
test eax, eax
je 0x59033844
push str.AnalyseGMailEMailAttach_4
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x10
mov ecx, dword [esp + 0x14]
push 0
lea edx, [esp + 0x18]
mov eax, dword [ecx - 8]
push eax
lea eax, [esp + 0x2c]
push edx
push eax
call fcn.5902dab0
add esp, 0x10
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0xd4], 6
call fcn.5909f310
lea ecx, [esp + 0x24]
mov byte [esp + 0xd0], 5
call fcn.5909f180
mov ebx, dword [esp + 0xe8]
test ebx, ebx
jne 0x590338e4
mov ecx, dword [esp + 0x20]
push 0x180
push 0x8101
push ecx
call fcn.590821dd
mov edi, eax
add esp, 0xc
cmp edi, 0xffffffff
je 0x5903398b
push ebp
push esi
push edi
call fcn.59081fed
push edi
call fcn.59081f0d
mov eax, dword [0x5919cca0]
add esp, 0x10
test eax, eax
je 0x590338e4
push ebp
push str.AnalyseGMailEMailAttach__len_:__d_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x14
mov edx, dword [esp + 0xb4]
push ebp
push edx
lea ecx, [esp + 0xb8]
call fcn.590ab400
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x10]
push eax
call fcn.5909e880
mov edx, dword [esp + 0x44]
lea ecx, [esp + 0x10]
push ecx
push edx
lea ecx, [esp + 0x48]
mov byte [esp + 0xd8], 7
call fcn.590a5110
mov ecx, dword [esp + 0x54]
lea eax, [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x58]
call fcn.590a5110
mov eax, dword [0x5919cca0]
test eax, eax
je 0x59033962
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
push edx
push eax
push ebp
push str.AnalyseGMailEMailAttach__len_:__d___wstrTemp:_s___wstrAttachFile:_s_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x1c
lea ecx, [esp + 0x10]
mov byte [esp + 0xd0], 5
call fcn.5909f180
jmp 0x5903397c
mov ebx, dword [esp + 0xe8]
test ebx, ebx
je 0x5903398b
mov dword [ebx], 1
jmp 0x59033ef3
mov eax, dword [0x5919cca0]
mov ebp, dword [esp + 0xe4]
test eax, eax
je 0x590339bd
mov ecx, dword [esp + 0xe0]
push ebp
push ecx
push str.AnalyseGMailEMailAttach_3___08x____08x_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x18
mov eax, dword [0x59155850]
mov dword [esp + 0x2c], eax
test ebp, ebp
mov byte [esp + 0xd0], 8
je 0x59033e1e
mov ecx, dword [esp + 0x44]
xor ebx, ebx
test ecx, ecx
jle 0x59033ee2
jmp 0x590339eb
mov eax, dword [0x59155850]
mov dword [esp + 0x7c], eax
mov byte [esp + 0xd0], 9
mov dword [esp + 0x80], eax
mov byte [esp + 0xd0], 0xa
mov dword [esp + 0x84], eax
mov edx, dword [0x5915584c]
mov byte [esp + 0xd0], 0xb
mov dword [esp + 0x8c], edx
mov byte [esp + 0xd0], 0xc
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xe0]
lea ecx, [esp + 0x2c]
push ecx
mov byte [esp + 0xd4], 0xe
lea ecx, [esp + 0x80]
mov dword [esp + 0x64], eax
call fcn.5909f310
mov eax, dword [ebp + 4]
mov edx, dword [ebp]
mov ecx, dword [ebp + 8]
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], edx
mov edx, dword [ebp + 0xc]
lea eax, [esp + 0x74]
mov dword [esp + 0x6c], ecx
push eax
mov dword [esp + 0x74], edx
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov ecx, dword [esp + 0x40]
lea edx, [ecx + ebx*4]
lea ecx, [esp + 0x38]
push edx
call fcn.5909e780
push 0x5c
lea ecx, [esp + 0x3c]
mov byte [esp + 0xd4], 0xf
call fcn.590a0330
inc eax
lea ecx, [esp + 0x38]
push eax
lea eax, [esp + 0x28]
push eax
call fcn.590a1470
lea ecx, [esp + 0xa8]
mov byte [esp + 0xd0], 0x10
push ecx
call fcn.5900d240
add esp, 4
mov eax, dword [eax]
lea ecx, [esp + 0xc0]
push eax
mov byte [esp + 0xd4], 0x11
call fcn.5909e880
lea edx, [esp + 0x24]
mov byte [esp + 0xd0], 0x12
push edx
push eax
lea eax, [esp + 0x18]
push eax
call fcn.5909f720
lea ecx, [esp + 0xc0]
mov byte [esp + 0xd0], 0x15
call fcn.5909f180
lea ecx, [esp + 0xa8]
mov byte [esp + 0xd0], 0x14
call fcn.59099e00
mov ecx, dword [esp + 0x40]
mov eax, dword [ecx + ebx*4]
mov edx, dword [esp + 0x10]
push 3
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
lea eax, [esp + 0x10]
lea ecx, [esp + 0x84]
push eax
call fcn.5909f310
push 0x2e
lea ecx, [esp + 0x14]
call fcn.590a0330
lea ecx, [esp + 0x30]
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.590a18c0
push 0x5917affc
lea ecx, [esp + 0x34]
mov byte [esp + 0xd4], 0x16
call fcn.5909fdd0
mov edx, dword [esp + 0x50]
lea ecx, [esp + 0x80]
lea eax, [edx + ebx*4]
push eax
call fcn.5909f310
mov ecx, dword [esp + 0xb0]
mov eax, dword [esp + 0x30]
push eax
mov edx, dword [ecx + ebx*4]
lea ecx, [esp + 0xb0]
mov dword [esp + 0x8c], edx
call fcn.590996a0
push eax
lea ecx, [esp + 0x90]
mov byte [esp + 0xd4], 0x17
call fcn.59099f80
lea ecx, [esp + 0xac]
mov byte [esp + 0xd0], 0x16
call fcn.59099e00
mov ecx, dword [esp + 0x8c]
push 0x180
push 0x8101
push ecx
call fcn.590821dd
mov edx, dword [0x5915584c]
add esp, 0xc
mov edi, eax
mov dword [esp + 0x1c], edx
cmp edi, 0xffffffff
mov byte [esp + 0xd0], 0x18
je 0x59033c6f
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x3c]
push eax
push ecx
push edi
call fcn.59081fed
mov edx, dword [esp + 0x84]
mov eax, dword [esp + 0x80]
mov ecx, dword [ebp + 0xc]
add esp, 0xc
push edx
mov edx, dword [ebp + 8]
push eax
mov eax, dword [ebp + 4]
push ecx
mov ecx, dword [ebp]
push edx
push eax
push ecx
lea edx, [esp + 0x34]
push str._r_n_r_nliTickBegin:_I64u__liTickEnd:_I64u__liTickRecord:_I64u
push edx
call fcn.5909cc60
mov eax, dword [esp + 0x3c]
add esp, 0x20
lea ecx, [esp + 0x1c]
mov eax, dword [eax - 8]
push eax
push 0
call fcn.5909aa90
push eax
push edi
call fcn.59081fed
push edi
call fcn.59081f0d
add esp, 0x10
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x34]
mov esi, dword [0x5919dafc]
mov eax, dword [ecx - 8]
add eax, edx
cmp esi, esi
mov dword [esp + 0x90], eax
jl 0x59033c9d
lea eax, [esi + 1]
push 0xffffffffffffffff
push eax
mov ecx, 0x5919daf8
call fcn.5905b0e0
mov edx, dword [0x5919daf8]
lea ecx, [esi + esi*8]
lea esi, [esp + 0x64]
lea eax, [edx + ecx*8]
mov ecx, dword [esp + 0x60]
lea edx, [esp + 0x7c]
mov dword [esp + 0xc4], eax
mov dword [eax], ecx
lea edi, [eax + 4]
mov ecx, 6
push edx
rep movsd dword es:[edi], dword [esi]
lea ecx, [eax + 0x1c]
call fcn.5909f310
mov esi, dword [esp + 0xc4]
lea eax, [esp + 0x80]
push eax
lea ecx, [esi + 0x20]
call fcn.5909f310
lea ecx, [esp + 0x84]
push ecx
lea ecx, [esi + 0x24]
call fcn.5909f310
mov edx, dword [esp + 0x88]
lea eax, [esp + 0x8c]
push eax
lea ecx, [esi + 0x2c]
mov dword [esi + 0x28], edx
call fcn.59099f80
mov ecx, dword [esp + 0x90]
lea edx, [esi + 0x34]
mov dword [esi + 0x30], ecx
mov eax, dword [esp + 0x94]
mov dword [edx], eax
mov ecx, dword [esp + 0x98]
mov dword [edx + 4], ecx
mov eax, dword [esp + 0x9c]
mov dword [edx + 8], eax
mov ecx, dword [esp + 0xa0]
mov dword [edx + 0xc], ecx
lea edx, [esp + 0xa4]
push edx
lea ecx, [esi + 0x44]
call fcn.5909f310
lea ecx, [esp + 0x1c]
mov byte [esp + 0xd0], 0x16
call fcn.59099e00
lea ecx, [esp + 0x30]
mov byte [esp + 0xd0], 0x14
call fcn.5909f180
lea ecx, [esp + 0x10]
mov byte [esp + 0xd0], 0x10
call fcn.5909f180
lea ecx, [esp + 0x24]
mov byte [esp + 0xd0], 0xf
call fcn.5909f180
lea ecx, [esp + 0x38]
mov byte [esp + 0xd0], 0xe
call fcn.5909f180
lea ecx, [esp + 0xa4]
mov byte [esp + 0xd0], 0x1c
call fcn.5909f180
lea ecx, [esp + 0x8c]
mov byte [esp + 0xd0], 0x1b
call fcn.59099e00
lea ecx, [esp + 0x84]
mov byte [esp + 0xd0], 0x1a
call fcn.5909f180
lea ecx, [esp + 0x80]
mov byte [esp + 0xd0], 0x19
call fcn.5909f180
lea ecx, [esp + 0x7c]
mov byte [esp + 0xd0], 8
call fcn.5909f180
mov eax, dword [esp + 0x44]
inc ebx
cmp ebx, eax
jl 0x590339e6
jmp 0x59033ee2
mov eax, dword [0x5919cca0]
test eax, eax
je 0x59033e40
push 0x5917dacc
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x10
lea eax, [esp + 0x28]
push 0
push eax
call fcn.590543e0
lea ecx, [esp + 0x58]
push 1
lea edx, [esp + 0x4c]
mov eax, dword [esp + 0x34]
push ecx
push edx
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push eax
mov byte [esp + 0x104], 0x1e
call fcn.5900c0f0
add esp, 0x34
test eax, eax
je 0x59033ed1
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x3c]
mov ecx, dword [esp + 0x28]
push edi
push esi
push ecx
call fcn.5900bee0
add esp, 0xc
test eax, eax
je 0x59033ed1
push 0
lea edx, [esp + 0xb4]
push 0
lea eax, [esp + 0x58]
push edx
lea ecx, [esp + 0x4c]
push eax
push ecx
mov edx, dword [esp + 0x3c]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 2
push 1
push edx
push edi
push esi
call fcn.5900e1b0
add esp, 0x44
lea ecx, [esp + 0x28]
mov byte [esp + 0xd0], 8
call fcn.59099e00
lea ecx, [esp + 0x2c]
mov byte [esp + 0xd0], 5
call fcn.5909f180
lea ecx, [esp + 0x50]
mov byte [esp + 0xd0], 4
call fcn.590a4b10
lea ecx, [esp + 0x40]
mov byte [esp + 0xd0], 3
call fcn.590a4b10
lea ecx, [esp + 0xb0]
mov byte [esp + 0xd0], 2
call fcn.590ab1d0
lea ecx, [esp + 0x18]
mov byte [esp + 0xd0], 1
call fcn.5909f180
lea ecx, [esp + 0x20]
mov byte [esp + 0xd0], 0
call fcn.59099e00
lea ecx, [esp + 0x14]
mov dword [esp + 0xd0], 0xffffffff
call fcn.59099e00
mov ecx, dword [esp + 0xc8]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0xc4
ret