Function at 0x5901d520
Capabilities:
Move file
Resolve function by parsing pe exports

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x59140ace
push eax
mov dword fs:[0], esp
sub esp, 0xc8
push ebx
push ebp
mov ebp, dword [esp + 0xe0]
push esi
test ebp, ebp
push edi
je 0x5901debe
mov esi, dword [esp + 0xec]
test esi, esi
je 0x5901debe
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x5901d570
mov dword [eax], 0
jmp 0x5901d593
mov eax, dword [0x5919cca0]
test eax, eax
je 0x5901d593
push ebp
push str.AnalyseCsxBankEMailAttach___S_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x14
mov eax, dword [esp + 0xf0]
push eax
call fcn.59009970
mov edi, eax
add esp, 4
test edi, edi
je 0x5901debe
push 0x5917ae30
push esi
push ebp
mov dword [esp + 0x68], ebp
mov dword [esp + 0x4c], esi
call fcn.5900f390
mov ebx, eax
add esp, 0xc
cmp ebx, 0xffffffff
je 0x5901debe
mov ecx, dword [edi + 0x14]
mov edx, dword [edi + 0x10]
push ecx
push edx
push ebx
lea eax, [esp + 0x30]
push ebp
push eax
call fcn.5901c1f0
mov ecx, dword [edi + 0xc]
mov edx, dword [edi + 8]
push ecx
push edx
push ebx
lea eax, [esp + 0x30]
push ebp
push eax
mov dword [esp + 0x108], 0
call fcn.5901c1f0
add esp, 0x28
push 0x5917bcb4
lea ecx, [esp + 0x14]
mov byte [esp + 0xe4], 1
call fcn.590a0360
test eax, eax
jl 0x5901d651
lea ecx, [esp + 0x20]
push eax
push ecx
lea ecx, [esp + 0x18]
call fcn.590a18c0
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0xe4], 2
call fcn.5909f310
lea ecx, [esp + 0x20]
mov byte [esp + 0xe0], 1
call fcn.5909f180
mov eax, dword [0x5919cca0]
test eax, eax
je 0x5901d678
mov edx, dword [esp + 0x10]
push edx
push str.AnalyseCoreMailAPPEMailAttach_wstrFlag__s_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x14
mov eax, dword [edi + 0x44]
mov ecx, dword [edi + 0x40]
push eax
push ecx
push ebx
lea edx, [esp + 0x3c]
push ebp
push edx
call fcn.5901c1f0
mov eax, dword [esp + 0x44]
mov byte [esp + 0xf4], 3
push eax
call fcn.59082939
mov ecx, dword [edi + 0x54]
mov edx, dword [edi + 0x50]
push ecx
mov esi, eax
push edx
push ebx
lea eax, [esp + 0x58]
push ebp
push eax
call fcn.5901c1f0
mov ecx, dword [esp + 0x60]
mov byte [esp + 0x10c], 4
push ecx
call fcn.59082939
mov ecx, dword [esp + 0x120]
lea edx, [esp + 0x74]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x40]
push edx
push esi
push eax
lea edx, [esp + 0x54]
push ecx
push edx
call fcn.59009fa0
add esp, 0x44
push 0x5917a428
push 0x5917bd48
push ebx
lea eax, [esp + 0x28]
push ebp
push eax
mov byte [esp + 0xf4], 5
call fcn.5901c080
add esp, 0x14
mov edi, 0x5917ae30
or ecx, 0xffffffff
xor eax, eax
mov esi, dword [esp + 0xec]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov byte [esp + 0xe0], 6
add ebx, ecx
mov ecx, dword [esp + 0x1c]
add ebp, ebx
sub esi, ebx
mov eax, dword [ecx - 8]
test eax, eax
je 0x5901d793
push 0x5917ae30
push esi
push ebp
call fcn.5900f390
mov ebx, eax
add esp, 0xc
cmp ebx, 0xffffffff
je 0x5901d793
mov edi, 0x5917ae30
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x1c]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x5917bd44
add ebx, ecx
or ecx, 0xffffffff
add ebp, ebx
mov edx, dword [edx - 8]
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, 0x5917a428
neg edx
lea eax, [ecx + ecx*2]
or ecx, 0xffffffff
sub edx, eax
xor eax, eax
sub edx, ebx
repne scasb al, byte es:[edi]
not ecx
dec ecx
sub edx, ecx
add esi, edx
lea ecx, [esp + 0x70]
call fcn.590ab1c0
mov ecx, dword [0x5915584c]
mov byte [esp + 0xe0], 7
mov dword [esp + 0x14], ecx
lea ecx, [esp + 0x4c]
mov byte [esp + 0xe0], 8
call fcn.590a4b00
lea ecx, [esp + 0x60]
mov byte [esp + 0xe0], 9
call fcn.590a4b00
mov edx, dword [esp + 0x18]
mov byte [esp + 0xe0], 0xa
mov eax, dword [edx - 8]
test eax, eax
je 0x5901d8a5
lea eax, [esp + 0x20]
push 0x5917a758
push eax
call fcn.590543e0
add esp, 8
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0xe4], 0xb
call fcn.59099f80
lea ecx, [esp + 0x20]
mov byte [esp + 0xe0], 0xa
call fcn.59099e00
mov ebx, dword [esp + 0xf8]
test ebx, ebx
jne 0x5901d856
mov ecx, dword [esp + 0x14]
push 0x180
push 0x8101
push ecx
call fcn.590821dd
mov edi, eax
add esp, 0xc
cmp edi, 0xffffffff
je 0x5901d8ac
push esi
push ebp
push edi
call fcn.59081fed
push edi
call fcn.59081f0d
add esp, 0x10
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x74]
push edx
push eax
lea ecx, [esp + 0x78]
call fcn.590ab400
mov ecx, dword [esp + 0x14]
push ecx
lea ecx, [esp + 0x2c]
call fcn.5909e880
mov eax, dword [esp + 0x50]
lea edx, [esp + 0x28]
push edx
push eax
lea ecx, [esp + 0x54]
mov byte [esp + 0xe8], 0xc
call fcn.590a5110
lea ecx, [esp + 0x28]
mov byte [esp + 0xe0], 0xa
call fcn.5909f180
jmp 0x5901d8ac
mov ebx, dword [esp + 0xf8]
mov eax, dword [esp + 0x50]
test eax, eax
je 0x5901de11
test ebx, ebx
jne 0x5901d9a9
mov eax, dword [0x5919cca0]
test eax, eax
je 0x5901d8ec
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x18]
push ecx
push edx
push str.AnalyseCoreMailAPPEMailAttach___s___d_
push str.MailLog
push 0xffffffffffffffff
push 0x5919cc34
call fcn.5907cd70
add esp, 0x18
mov ecx, dword [esp + 0x64]
lea eax, [esp + 0x18]
push eax
push ecx
lea ecx, [esp + 0x68]
call fcn.590a5110
mov ebx, dword [esp + 0xf4]
test ebx, ebx
jne 0x5901d9b4
lea edx, [esp + 0x3c]
push ebx
push edx
call fcn.590543e0
lea eax, [esp + 0x68]
mov edx, dword [esp + 0x2c]
push 1
lea ecx, [esp + 0x58]
push eax
mov eax, dword [esp + 0x4c]
push ecx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
push eax
mov byte [esp + 0x114], 0x22
call fcn.5900c0f0
add esp, 0x34
test eax, eax
je 0x5901d993
mov edi, dword [esp + 0x40]
mov esi, dword [esp + 0x5c]
mov ecx, dword [esp + 0x3c]
push edi
push esi
push ecx
call fcn.5900bee0
add esp, 0xc
test eax, eax
je 0x5901d993
push ebx
lea edx, [esp + 0x74]
push ebx
lea eax, [esp + 0x68]
push edx
mov edx, dword [esp + 0x30]
lea ecx, [esp + 0x58]
push eax
push ecx
mov eax, dword [esp + 0x50]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edx
push 2
push 1
push eax
push edi
push esi
call fcn.5900e1b0
add esp, 0x44
lea ecx, [esp + 0x3c]
mov byte [esp + 0xe0], 0xa
call fcn.59099e00
jmp 0x5901de11
mov dword [ebx], 1
jmp 0x5901de11
mov eax, dword [esp + 0x50]
xor ebp, ebp
test eax, eax
jle 0x5901de11
mov eax, dword [0x59155850]
mov dword [esp + 0x9c], eax
mov byte [esp + 0xe0], 0xd
mov dword [esp + 0xa0], eax
mov byte [esp + 0xe0], 0xe
mov dword [esp + 0xa4], eax
mov ecx, dword [0x5915584c]
mov byte [esp + 0xe0], 0xf
mov dword [esp + 0xac], ecx
mov byte [esp + 0xe0], 0x10
mov dword [esp + 0xc4], eax
mov edx, dword [esp + 0xf0]
lea eax, [esp + 0x10]
mov byte [esp + 0xe0], 0x12
push eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x84], edx
call fcn.5909f310
mov edx, dword [ebx + 4]
mov ecx, dword [ebx]
mov eax, dword [ebx + 8]
mov dword [esp + 0x88], edx
mov dword [esp + 0x84], ecx
mov ecx, dword [ebx + 0xc]
lea edx, [esp + 0x94]
mov dword [esp + 0x8c], eax
push edx
mov dword [esp + 0x94], ecx
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov eax, dword [esp + 0x4c]
lea ecx, [eax + ebp*4]
push ecx
lea ecx, [esp + 0x2c]
call fcn.5909e780
push 0x5c
lea ecx, [esp + 0x2c]
mov byte [esp + 0xe4], 0x13
call fcn.590a0330
inc eax
lea edx, [esp + 0x20]
push eax
push edx
lea ecx, [esp + 0x30]
call fcn.590a1470
lea eax, [esp + 0xd4]
mov byte [esp + 0xe0], 0x14
push eax
call fcn.5900d240
add esp, 4
mov eax, dword [eax]
lea ecx, [esp + 0xd0]
push eax
mov byte [esp + 0xe4], 0x15
call fcn.5909e880
lea ecx, [esp + 0x20]
lea edx, [esp + 0x38]
push ecx
push eax
push edx
mov byte [esp + 0xec], 0x16
call fcn.5909f720
lea ecx, [esp + 0xd0]
mov byte [esp + 0xe0], 0x19
call fcn.5909f180
lea ecx, [esp + 0xd4]
mov byte [esp + 0xe0], 0x18
call fcn.59099e00
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x38]
mov eax, dword [eax + ebp*4]
push 3
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
lea edx, [esp + 0x38]
lea ecx, [esp + 0xa4]
push edx
call fcn.5909f310
push 0x2e
lea ecx, [esp + 0x3c]
call fcn.590a0330
push eax
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x40]
call fcn.590a18c0
push 0x5917affc
lea ecx, [esp + 0x4c]
mov byte [esp + 0xe4], 0x1a
call fcn.5909fdd0
mov ecx, dword [esp + 0x60]
lea edx, [ecx + ebp*4]
lea ecx, [esp + 0xa0]
push edx
call fcn.5909f310
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x48]
push edx
mov ecx, dword [eax + ebp*4]
mov dword [esp + 0xac], ecx
lea ecx, [esp + 0xcc]
call fcn.590996a0
push eax
lea ecx, [esp + 0xb0]
mov byte [esp + 0xe4], 0x1b
call fcn.59099f80
lea ecx, [esp + 0xc8]
mov byte [esp + 0xe0], 0x1a
call fcn.59099e00
mov eax, dword [esp + 0xac]
push 0x180
push 0x8101
push eax
call fcn.590821dd
mov ecx, dword [0x5915584c]
add esp, 0xc
mov edi, eax
mov dword [esp + 0x2c], ecx
cmp edi, 0xffffffff
mov byte [esp + 0xe0], 0x1c
je 0x5901dc5b
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x5c]
push edx
push eax
push edi
call fcn.59081fed
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0xa0]
mov eax, dword [ebx + 0xc]
add esp, 0xc
push ecx
mov ecx, dword [ebx + 8]
push edx
mov edx, dword [ebx + 4]
push eax
mov eax, dword [ebx]
push ecx
push edx
push eax
lea ecx, [esp + 0x44]
push str._r_n_r_nliTickBegin:_I64u__liTickEnd:_I64u__liTickRecord:_I64u
push ecx
call fcn.5909cc60
mov edx, dword [esp + 0x4c]
add esp, 0x20
lea ecx, [esp + 0x2c]
mov eax, dword [edx - 8]
push eax
push 0
call fcn.5909aa90
push eax
push edi
call fcn.59081fed
push edi
call fcn.59081f0d
add esp, 0x10
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x40]
mov esi, dword [0x5919dafc]
mov eax, dword [eax - 8]
add eax, ecx
cmp esi, esi
mov dword [esp + 0xb0], eax
jl 0x5901dc89
lea edx, [esi + 1]
push 0xffffffffffffffff
push edx
mov ecx, 0x5919daf8
call fcn.5905b0e0
mov ecx, dword [0x5919daf8]
mov edx, dword [esp + 0x80]
lea eax, [esi + esi*8]
lea esi, [esp + 0x84]
lea eax, [ecx + eax*8]
mov ecx, 6
mov dword [esp + 0xcc], eax
lea edi, [eax + 4]
mov dword [eax], edx
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x9c]
push ecx
lea ecx, [eax + 0x1c]
call fcn.5909f310
mov esi, dword [esp + 0xcc]
lea edx, [esp + 0xa0]
push edx
lea ecx, [esi + 0x20]
call fcn.5909f310
lea eax, [esp + 0xa4]
lea ecx, [esi + 0x24]
push eax
call fcn.5909f310
mov ecx, dword [esp + 0xa8]
lea edx, [esp + 0xac]
mov dword [esi + 0x28], ecx
push edx
lea ecx, [esi + 0x2c]
call fcn.59099f80
mov eax, dword [esp + 0xb0]
lea ecx, [esi + 0x34]
mov dword [esi + 0x30], eax
mov edx, dword [esp + 0xb4]
mov dword [ecx], edx
mov eax, dword [esp + 0xb8]
mov dword [ecx + 4], eax
mov edx, dword [esp + 0xbc]
mov dword [ecx + 8], edx
mov eax, dword [esp + 0xc0]
mov dword [ecx + 0xc], eax
lea ecx, [esp + 0xc4]
push ecx
lea ecx, [esi + 0x44]
call fcn.5909f310
lea ecx, [esp + 0x2c]
mov byte [esp + 0xe0], 0x1a
call fcn.59099e00
lea ecx, [esp + 0x48]
mov byte [esp + 0xe0], 0x18
call fcn.5909f180
lea ecx, [esp + 0x38]
mov byte [esp + 0xe0], 0x14
call fcn.5909f180
lea ecx, [esp + 0x20]
mov byte [esp + 0xe0], 0x13
call fcn.5909f180
lea ecx, [esp + 0x28]
mov byte [esp + 0xe0], 0x12
call fcn.5909f180
lea ecx, [esp + 0xc4]
mov byte [esp + 0xe0], 0x20
call fcn.5909f180
lea ecx, [esp + 0xac]
mov byte [esp + 0xe0], 0x1f
call fcn.59099e00
lea ecx, [esp + 0xa4]
mov byte [esp + 0xe0], 0x1e
call fcn.5909f180
lea ecx, [esp + 0xa0]
mov byte [esp + 0xe0], 0x1d
call fcn.5909f180
lea ecx, [esp + 0x9c]
mov byte [esp + 0xe0], 0xa
call fcn.5909f180
mov eax, dword [esp + 0x50]
inc ebp
cmp ebp, eax
jl 0x5901d9c2
lea ecx, [esp + 0x60]
mov byte [esp + 0xe0], 9
call fcn.590a4b10
lea ecx, [esp + 0x4c]
mov byte [esp + 0xe0], 8
call fcn.590a4b10
lea ecx, [esp + 0x14]
mov byte [esp + 0xe0], 7
call fcn.59099e00
lea ecx, [esp + 0x70]
mov byte [esp + 0xe0], 6
call fcn.590ab1d0
lea ecx, [esp + 0x1c]
mov byte [esp + 0xe0], 5
call fcn.59099e00
lea ecx, [esp + 0x18]
mov byte [esp + 0xe0], 4
call fcn.5909f180
lea ecx, [esp + 0x34]
mov byte [esp + 0xe0], 3
call fcn.5909f180
lea ecx, [esp + 0x30]
mov byte [esp + 0xe0], 1
call fcn.5909f180
lea ecx, [esp + 0x10]
mov byte [esp + 0xe0], 0
call fcn.5909f180
lea ecx, [esp + 0x24]
mov dword [esp + 0xe0], 0xffffffff
call fcn.5909f180
mov ecx, dword [esp + 0xd8]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0xd4
ret