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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x270
mov eax, dword [0x4a2eb0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
xor edi, edi
push str.12319999
mov dword [ebp - 0x268], edi
mov dword [ebp - 0x264], edi
call fcn.004364c0
add esp, 4
push edi
mov ecx, 0x4a5268
mov dword [0x4a5220], eax
call fcn.00439bf0
mov esi, 1
push esi
call fcn.0041c780
mov ebx, dword [0x4a42bc]
add esp, 4
cmp dword [0x4a487c], edi
mov dword [ebp - 0x26c], ebx
setne al
mov byte [0x4a5224], al
cmp ebx, dword [0x4a42c0]
jae 0x41683a
call fcn.0041d070
test eax, eax
jne 0x41683a
cmp dword [0x4a74d0], edi
jne 0x41685f
mov ecx, dword [ebx]
call fcn.00402870
test al, al
je 0x416092
cmp byte [0x4a4873], 0
je 0x416825
mov ecx, dword [ebx]
cmp byte [ecx + 0x4a], 0
jne 0x416825
call fcn.004028c0
xor edx, edx
mov word [0x4a533c], dx
mov dword [0x4aa5a0], edi
mov eax, dword [ebx]
push 0x21
push eax
mov dword [0x4a4748], eax
lea eax, [ebp - 0x48]
push eax
call fcn.00434fe0
lea ecx, [ebp - 0x48]
push 0x4a2268
push ecx
mov dword [0x4a4894], edi
call fcn.00403580
lea edx, [ebp - 0x250]
push 0x4a42d8
push edx
call fcn.00436660
mov eax, dword [0x4a4748]
mov ecx, dword [eax + 0x40]
push ecx
call fcn.0041f4f0
add esp, 0x20
test al, al
je 0x416144
mov eax, dword [0x4a42c8]
add dword [0x4a5218], esi
mov dword [0x4a5210], eax
cmp eax, dword [0x4a42cc]
jae 0x416825
nop
mov eax, dword [eax]
push eax
mov dword [0x4a474c], eax
call fcn.0040bf40
add esp, 4
test al, al
je 0x41612a
add dword [0x4a521c], esi
mov eax, dword [0x4a5210]
add eax, 4
mov dword [0x4a5210], eax
cmp eax, dword [0x4a42cc]
jb 0x416110
jmp 0x416825
lea edx, [ebp - 0x250]
push edx
call fcn.0040a2d0
mov esi, eax
push esi
lea eax, [ebp - 0x250]
push eax
push str.rlabtran__s____d
push 4
mov dword [ebp - 0x25c], esi
call fcn.0041c950
add esp, 0x14
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x270], eax
cmp esi, 0xfffffff8
jne 0x416191
xor esi, esi
mov dword [ebp - 0x25c], esi
mov byte [ebp - 0x251], 1
jmp 0x416198
mov byte [ebp - 0x251], 0
call fcn.00428510
mov dword [0x4aa4c8], edi
mov dword [0x4aa4b0], edi
cmp dword [0x4a74d0], edi
jne 0x41685f
cmp esi, edi
jne 0x4161c7
mov ecx, dword [str.cannot_read_position_file]
mov dword [ebp - 0x258], ecx
jmp 0x416243
cmp esi, 0xffffffff
jne 0x4161da
mov edx, dword [str.position_file_busy___try_again_later]
mov dword [ebp - 0x258], edx
jmp 0x416243
cmp esi, 0xfffffffe
jne 0x4161eb
mov dword [ebp - 0x258], str.bad_portfolio_code
jmp 0x416243
cmp esi, 0xfffffffd
jne 0x4161fc
mov dword [ebp - 0x258], str.bad_file_signature
jmp 0x416243
cmp esi, 0xfffffffc
jne 0x41620d
mov dword [ebp - 0x258], str.corrupted_file
jmp 0x416243
cmp esi, 0xfffffffb
jne 0x41621e
mov dword [ebp - 0x258], str.bad_file
jmp 0x416243
cmp esi, 0xfffffffa
jne 0x41622f
mov dword [ebp - 0x258], str.read_only_file
jmp 0x416243
xor eax, eax
cmp esi, 0xfffffff9
setne al
dec eax
and eax, 0x4a8e88
mov dword [ebp - 0x258], eax
sub ebx, dword [0x4a42bc]
mov ecx, dword [0x4a4748]
shr ebx, 2
inc ebx
push ebx
call fcn.00404700
push eax
call fcn.0041d200
mov ecx, dword [0x4a2858]
mov ebx, 1
push ecx
mov dword [0x4a5120], edi
mov dword [0x4a5124], edi
mov dword [0x4a5128], edi
mov dword [0x4a50ac], ebx
mov byte [0x4a5094], 0
mov dword [0x4a2854], ebx
call fcn.00436280
mov edx, dword [0x4a2808]
xor eax, eax
push edx
mov dword [0x4a2858], eax
mov dword [0x4a285c], eax
mov dword [0x4a2860], eax
mov dword [0x4a2804], ebx
call fcn.00436280
xor eax, eax
add esp, 0x10
mov ecx, 0x4a5238
mov dword [0x4a2808], eax
mov dword [0x4a280c], eax
mov dword [0x4a2810], eax
mov dword [0x4a5114], 0xffffffff
call fcn.0040ba70
mov ecx, 0x4aa7e4
call fcn.004266d0
push edi
call fcn.0041c780
add esp, 4
cmp dword [0x4a487c], edi
je 0x416301
mov dword [0x4a2380], edi
mov eax, dword [0x4a42c8]
mov dword [0x4a5210], eax
cmp eax, dword [0x4a42cc]
jae 0x4166f6
mov ebx, dword [ebp - 0x268]
lea ecx, [ecx]
mov eax, dword [ebp - 0x264]
dec eax
mov dword [ebp - 0x264], eax
cmp eax, edi
jg 0x416349
mov eax, dword [0x4a2558]
mov dword [ebp - 0x264], eax
call fcn.0041d070
test eax, eax
jne 0x4166f0
mov ecx, dword [0x4a5210]
mov eax, dword [ecx]
push eax
mov dword [0x4a474c], eax
call fcn.0040bf40
add esp, 4
test al, al
je 0x4166d7
mov eax, dword [0x4a474c]
lea edx, [ebp - 0x25d]
push edx
push eax
mov ecx, 0x4aa7e4
call fcn.00427550
test al, al
jne 0x4163a2
mov ecx, dword [0x4a5210]
push 0x45c1f4
push ecx
push str.can_not_mix_normal_and_exact_posting_requests
mov ecx, 0x4aa7e4
call fcn.004266e0
jmp 0x4166d7
mov ecx, dword [0x4a474c]
mov edx, dword [ecx + 0xc]
mov ax, word [edx + 0x44]
mov word [0x4a40a4], ax
cmp dword [ebp - 0x258], edi
je 0x4164a5
mov ecx, 0x6663
cmp ax, cx
jne 0x416411
call fcn.0040fd90
test al, al
jne 0x4166d7
lea edx, [ebp - 0x258]
push edx
lea eax, [ebp - 0x250]
push eax
call fcn.00404110
add esp, 8
test eax, eax
je 0x416491
mov eax, 1
add dword [0x4a5128], eax
mov dword [ebp - 0x258], edi
mov dword [0x4a4894], eax
jmp 0x4166d7
cmp byte [ebp - 0x251], 0
je 0x416491
lea ecx, [ebp - 0x258]
push ecx
lea edx, [ebp - 0x250]
push edx
mov byte [ebp - 0x251], 0
call fcn.00404110
add esp, 8
test eax, eax
je 0x416491
mov ecx, dword [0x4a474c]
mov dword [ebp - 0x258], edi
mov dword [0x4a4894], 1
cmp byte [ebp - 0x25d], 0
je 0x4164c6
mov ecx, 0x4aa7e4
mov byte [0x4aa7e8], 1
call fcn.00427660
mov byte [0x4aa7e8], 0
test al, al
jne 0x4166d7
mov eax, dword [0x4a5210]
push edi
push eax
push edi
mov ecx, 0x4aa7e4
call fcn.004266e0
jmp 0x4166d7
mov eax, dword [ebp - 0x258]
push eax
call fcn.0040d430
add esp, 4
jmp 0x4166d7
mov edx, 0x6663
cmp ax, dx
jne 0x416451
push 0x4a2268
push str._s_file_already_exists
call fcn.0040d500
add esp, 8
jmp 0x4166d7
mov edx, dword [ecx + 0x10]
cmp word [edx + 0x180], di
jl 0x4164fe
mov eax, dword [ecx + 0xc]
movzx ecx, byte [eax + 0x43]
push ecx
call fcn.004026c0
add esp, 4
test al, al
je 0x4164f4
push edi
call fcn.0040d430
add esp, 4
jmp 0x4166d7
call fcn.00415a40
jmp 0x4166d7
call fcn.0041f3e0
test al, al
jne 0x416519
push 0x4a8e88
call fcn.0040d430
add esp, 4
jmp 0x4166d7
mov eax, dword [0x4a474c]
mov edx, dword [eax + 0x10]
cmp word [edx + 0x20], di
jge 0x4166b3
mov dword [0x4a93f4], edi
cmp dword [0x4aa4c8], edi
jne 0x416543
mov dword [0x4a509c], 0xffffffff
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0x48]
xor ecx, ecx
cmp edx, 0xffffffff
setne cl
mov dword [0x4a5114], edx
mov dword [0x4a510c], ecx
mov ecx, dword [eax + 0x10]
movzx ecx, word [ecx + 0x40]
cmp cx, di
jl 0x416572
mov eax, dword [eax + 0xc]
movsx edx, cx
mov edx, dword [edx + eax]
xor ecx, ecx
cmp edx, 0xffffffff
setne cl
mov dword [0x4a5110], edx
movzx edx, word [0x4a40a4]
push edx
mov dword [0x4a5108], ecx
call fcn.0040b530
xor ebx, ebx
add esp, 4
test al, al
sete bl
cmp ebx, edi
je 0x4165b8
cmp byte [0x4a5094], 0
jne 0x4165ec
mov eax, dword [0x4a5210]
push eax
call fcn.0040bba0
add esp, 4
cmp byte [0x4a90c0], 0
jne 0x4165ca
push ebx
call fcn.0040bf70
add esp, 4
cmp ebx, edi
je 0x416648
call fcn.0041c870
mov esi, eax
mov dword [ebp - 0x25c], esi
cmp esi, edi
je 0x416655
call fcn.0040fa40
test al, al
jne 0x41660d
xor esi, esi
jmp 0x41664f
mov byte [0x4a5094], 0
cmp esi, edi
jne 0x4166d7
push str.reinvest_failed
call fcn.0040d430
add esp, 4
jmp 0x4166d7
mov dword [0x4a522c], edi
call fcn.00412c60
cmp dword [0x4a522c], 0xffffffff
mov esi, eax
mov dword [ebp - 0x25c], esi
jne 0x416640
cmp esi, 1
jne 0x416640
mov dword [0x4a522c], eax
call fcn.00412c60
mov esi, eax
mov dword [ebp - 0x25c], esi
mov dword [0x4a522c], edi
jmp 0x416655
call fcn.004256e0
mov esi, eax
mov dword [ebp - 0x25c], esi
cmp byte [0x4a90c0], 0
je 0x416671
lea esi, [ebp - 0x25c]
call fcn.0040fc90
mov esi, dword [ebp - 0x25c]
jmp 0x416678
mov byte [0x4aaea0], 0
cmp ebx, edi
je 0x4166d7
call fcn.0040bb60
test eax, eax
je 0x416692
xor ecx, ecx
cmp esi, edi
sete cl
mov dword [0x4a50ac], ecx
cmp esi, 2
sete dl
movzx eax, dl
push eax
mov ecx, 0x4a5238
call fcn.0040f9d0
test al, al
je 0x4166d7
add dword [0x4a5210], 4
jmp 0x4166d7
push esi
push ebx
call fcn.00411ef0
add esp, 8
cmp byte [0x4a90c0], 0
je 0x4166d7
lea esi, [ebp - 0x25c]
call fcn.0040fc90
mov esi, dword [ebp - 0x25c]
mov eax, dword [0x4a5210]
add eax, 4
mov dword [0x4a5210], eax
cmp eax, dword [0x4a42cc]
jb 0x416320
mov dword [ebp - 0x268], ebx
cmp dword [0x4a74d0], edi
jne 0x41685f
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, eax
sub esi, dword [ebp - 0x270]
lea ecx, [ebp - 0x250]
push esi
push ecx
push str.Internal_processing_milliseconds___s____d
push 4
call fcn.0041c950
add dword [0x4a5228], esi
add esp, 0x10
mov bl, 1
cmp dword [0x4a5124], edi
jne 0x416750
cmp dword [0x4a5128], edi
jne 0x416750
cmp dword [0x4a4894], edi
jne 0x416750
mov byte [ebp - 0x251], 0
jmp 0x416786
lea edx, [ebp - 0x250]
push edx
mov byte [ebp - 0x251], 1
call fcn.004092c0
add esp, 4
test al, al
jne 0x41676c
xor bl, bl
movzx eax, bl
push eax
lea ecx, [ebp - 0x250]
push ecx
push str.wlabtran__s____d
push 4
call fcn.0041c950
add esp, 0x10
call fcn.004031b0
cmp byte [ebp - 0x251], 0
jne 0x4167b9
call fcn.004071b0
test al, al
jne 0x41679f
xor bl, bl
movzx edx, bl
push edx
lea eax, [ebp - 0x250]
push eax
push str.updateerr__s____d
push 4
call fcn.0041c950
add esp, 0x10
test bl, bl
jne 0x4167cf
mov dword [0x4a5120], edi
mov dword [0x4a5124], edi
mov dword [0x4a5128], edi
mov ecx, dword [0x4a5120]
mov edx, dword [0x4a5124]
mov eax, dword [0x4a5128]
push ecx
mov ecx, dword [0x4a4748]
push edx
push eax
call fcn.00404700
push eax
call fcn.0041e5c0
mov ecx, dword [0x4a5128]
mov edx, dword [0x4a5124]
mov eax, dword [0x4a5120]
add dword [0x4a4098], ecx
add dword [0x4a4094], edx
mov ebx, dword [ebp - 0x26c]
add esp, 0x10
add dword [0x4a4090], eax
mov esi, 1
add ebx, 4
mov dword [ebp - 0x26c], ebx
cmp ebx, dword [0x4a42c0]
jb 0x416055
cmp dword [0x4a74d0], edi
jne 0x41685f
mov ecx, dword [0x4a4090]
mov edx, dword [0x4a4094]
mov eax, dword [0x4a4098]
push ecx
push edx
push eax
push edi
call fcn.0041e5c0
add esp, 0x10
call fcn.0041b640
mov ecx, dword [0x4a5228]
push ecx
push str.Total_internal_processing_milliseconds___d
push 4
call fcn.0041c950
mov ecx, dword [ebp - 4]
add esp, 0xc
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00439fc0
mov esp, ebp
pop ebp
ret