Function at 0x10022020
Capabilities:
Check for time delay via gettickcount

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x1024d0f0
push eax
mov eax, dword [0x102f7658]
mov dword fs:[0], esp
sub esp, 0x1a0
test eax, eax
push esi
push edi
mov esi, ecx
je 0x10022068
mov eax, dword [esi + 0x1b8]
push eax
push str.CSMTPHandler::HandleMailFile:_Start_to_handle_mail_file__s__r_n
push 0x102acaa4
push 4
push 0x102f6dc4
call fcn.10098fb0
add esp, 0x14
lea ecx, [esp + 8]
call fcn.1000ef40
lea ecx, [esp + 8]
mov dword [esp + 0x1b0], 0
push ecx
mov ecx, esi
call fcn.100228a0
lea ecx, [esp + 0x6c]
call fcn.10094b30
lea ecx, [esp + 0x98]
mov byte [esp + 0x1b0], 1
call fcn.100b3110
lea ecx, [esp + 0x144]
mov byte [esp + 0x1b0], 2
call fcn.1000ef40
lea edx, [esp + 8]
mov edi, 0x1025bc34
push edx
lea ecx, [esp + 0x148]
mov byte [esp + 0x1b4], 3
mov dword [esp + 0x70], edi
mov dword [esp + 0x98], esi
call fcn.1000f2c0
lea ecx, [esp + 0x6c]
mov byte [esp + 0x1b0], 4
call fcn.10094d00
test eax, eax
jne 0x10022187
mov eax, dword [0x102f7658]
test eax, eax
je 0x1002211d
push str.CSMTPHandler::HandleMailFile:_Create_Thread_to_handle_mail_failed__r_n
push 0x102acaa4
push 4
push 0x102f6dc4
call fcn.10098fb0
add esp, 0x10
mov dword [esp + 0x6c], edi
lea ecx, [esp + 0x144]
mov byte [esp + 0x1b0], 6
call fcn.1000efe0
lea ecx, [esp + 0x98]
mov byte [esp + 0x1b0], 5
call fcn.100b3280
lea ecx, [esp + 0x6c]
mov byte [esp + 0x1b0], 0
call fcn.10094c50
lea ecx, [esp + 8]
mov dword [esp + 0x1b0], 0xffffffff
call fcn.1000efe0
pop edi
xor eax, eax
pop esi
mov ecx, dword [esp + 0x1a0]
mov dword fs:[0], ecx
add esp, 0x1ac
ret
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
push ebx
push ebp
call edi
mov ebx, eax
mov eax, dword [0x102f7658]
test eax, eax
je 0x100221c1
mov eax, dword [esi + 0x7c]
mov ecx, dword [esi + 0x78]
mov edx, dword [esi + 0x74]
push eax
push ecx
push edx
push str.HandleMailFile__m_dwClientTimeOut:_d__m_dwServerTimeOut:_d__m_dwTickLastSendToServer:0x_08x_
push 0x102acaa4
push 4
push 0x102f6dc4
call fcn.10098fb0
add esp, 0x1c
mov eax, dword [esi + 0x1e0]
mov ebp, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0x64
push eax
call ebp
cmp eax, 0x102
jne 0x100222aa
lea ecx, [esp + 0x74]
call fcn.10094f00
test eax, eax
je 0x1002224d
call edi
mov ecx, dword [esi + 0x74]
sub eax, ebx
cmp eax, ecx
jbe 0x10022205
mov eax, dword [esi + 0x60]
test eax, eax
jne 0x10022216
mov ecx, esi
call fcn.100232a0
jmp 0x10022216
cmp eax, 0x124f80
jbe 0x10022216
mov eax, dword [esi + 0x19c]
test eax, eax
je 0x10022258
mov eax, dword [esi + 0x7c]
test eax, eax
je 0x10022239
mov eax, dword [esi + 0x78]
test eax, eax
je 0x10022239
call edi
mov edx, dword [esi + 0x7c]
mov ecx, dword [esi + 0x78]
sub eax, edx
cmp eax, ecx
jbe 0x10022239
mov ecx, esi
call fcn.10022e60
mov ecx, dword [esi + 0x1e0]
push 0x64
push ecx
call ebp
cmp eax, 0x102
je 0x100221dd
jmp 0x100222aa
lea ecx, [esp + 0x74]
call fcn.10007310
jmp 0x100222aa
lea ecx, [esp + 0x74]
call fcn.10094dc0
lea ecx, [esp + 0x74]
call fcn.10007310
lea ecx, [esp + 0x74]
call fcn.10094e80
mov dword [esi + 0x1a0], 0
mov eax, dword [0x102f7658]
test eax, eax
je 0x1002229f
push str.CSMTPHandler::HandleMailFile:_Timeout__r_n
push 0x102acaa4
push 4
push 0x102f6dc4
call fcn.10098fb0
add esp, 0x10
push 3
push 5
mov ecx, esi
call fcn.100242e0
mov eax, dword [esi + 0x1a0]
pop ebp
test eax, eax
pop ebx
je 0x100222c4
lea edx, [esp + 8]
mov ecx, esi
push edx
call fcn.10022b10
jmp 0x100222d0
lea eax, [esp + 8]
mov ecx, esi
push eax
call fcn.10022a40
mov esi, dword [esi + 0x1a0]
mov dword [esp + 0x6c], 0x1025bc34
lea ecx, [esp + 0x144]
mov byte [esp + 0x1b0], 8
call fcn.1000efe0
lea ecx, [esp + 0x98]
mov byte [esp + 0x1b0], 7
call fcn.100b3280
lea ecx, [esp + 0x6c]
mov byte [esp + 0x1b0], 0
call fcn.10094c50
lea ecx, [esp + 8]
mov dword [esp + 0x1b0], 0xffffffff
call fcn.1000efe0
mov ecx, dword [esp + 0x1a8]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x1ac
ret