Function at 0x53b170
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x934
mov dl, byte [0x5937a0]
push ebx
push esi
mov ebx, ecx
push edi
mov ecx, 7
xor eax, eax
lea edi, [esp + 0x51]
mov byte [esp + 0x50], dl
mov byte [esp + 0x70], dl
rep stosd dword es:[edi], eax
fld qword [ebx + 0x188]
fcomp qword [0x565ac0]
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 7
xor eax, eax
lea edi, [esp + 0x71]
mov byte [esp + 0x90], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, 7
xor eax, eax
lea edi, [esp + 0x91]
xor esi, esi
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
fnstsw ax
test ah, 0x41
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], esi
je 0x53b202
cmp dword [ebx + 0x37d0], esi
jne 0x53b202
mov eax, dword [ebp + 0x24]
mov dword [eax], 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
mov al, byte [ebp + 0x20]
test al, al
je 0x53b221
mov ecx, dword [ebp + 0x24]
push ecx
mov ecx, ebx
call fcn.0053e870
test eax, eax
jne 0x53b221
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x14]
mov dword [ebx + 0x6040], edx
mov edx, dword [ebp + 0x18]
mov dword [ebx + 0x6044], eax
mov eax, dword [ebx + 0x6058]
mov dword [ebx + 0x6048], ecx
dec eax
mov dword [ebx + 0x607c], esi
mov dword [ebx + 0x604c], edx
je 0x53b27c
dec eax
jne 0x53b29f
fld qword [ebp + 0xc]
fadd qword [ebp + 0x14]
mov ecx, dword [ebx + 0x5750]
sub esp, 8
fmul qword [0x567060]
fstp qword [esp]
call fcn.00429ac0
fdivr qword [0x567050]
jmp 0x53b299
fld qword [ebp + 0xc]
fadd qword [ebp + 0x14]
mov ecx, dword [ebx + 0x5750]
sub esp, 8
fmul qword [0x567060]
fstp qword [esp]
call fcn.00429ac0
fstp qword [ebx + 0x6060]
mov eax, dword [ebx + 0x6068]
dec eax
je 0x53b2d0
dec eax
jne 0x53b2f3
fld qword [ebp + 0xc]
fadd qword [ebp + 0x14]
mov ecx, dword [ebx + 0x5750]
sub esp, 8
fmul qword [0x567060]
fstp qword [esp]
call fcn.00429ac0
fdivr qword [0x567050]
jmp 0x53b2ed
fld qword [ebp + 0xc]
fadd qword [ebp + 0x14]
mov ecx, dword [ebx + 0x5750]
sub esp, 8
fmul qword [0x567060]
fstp qword [esp]
call fcn.00429ac0
fstp qword [ebx + 0x6070]
mov eax, dword [ebx + 0x608c]
mov edi, 1
cmp eax, esi
jne 0x53b316
mov ecx, ebx
call fcn.0053f670
mov ecx, ebx
call fcn.0053fa20
mov dword [ebx + 0x608c], edi
cmp dword [ebx + 0x60c0], esi
je 0x53b395
mov ecx, dword [ebp + 8]
fld qword [ecx + 0x14]
fcomp qword [ebp + 0xc]
fnstsw ax
test ah, 0x41
jne 0x53b337
fld qword [ecx + 0x14]
fstp qword [esp + 0x28]
jmp 0x53b345
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
fld qword [esp + 0x28]
fadd qword [ebx + 0x6050]
fstp qword [esp + 0x38]
fld qword [ecx + 0xc]
fcomp qword [ebp + 0xc]
fnstsw ax
test ah, 1
je 0x53b377
fld qword [ecx + 0xc]
fstp qword [esp + 0x20]
fld qword [esp + 0x20]
fadd qword [ebx + 0x6050]
fstp qword [esp + 0x48]
jmp 0x53b3b1
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ecx
fld qword [esp + 0x20]
fadd qword [ebx + 0x6050]
fstp qword [esp + 0x48]
jmp 0x53b3b1
fld qword [ebx + 0x6040]
fst qword [esp + 0x20]
fstp qword [esp + 0x28]
fld qword [ebx + 0x6048]
fst qword [esp + 0x48]
fstp qword [esp + 0x38]
mov edx, dword [ebp + 0x1c]
mov ecx, ebx
mov dword [ebx + 0x6078], edx
call fcn.0053f8b0
cmp dword [ebx + 0x37d0], edi
jge 0x53b3d4
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
mov eax, dword [ebx + 0x604c]
mov edx, dword [ebx + 0x6044]
lea esi, [ebx + 0x56e8]
mov ecx, 0x1e4
lea edi, [esp + 0x1b0]
push eax
mov eax, dword [ebx + 0x6040]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebx + 0x6048]
push ecx
push edx
lea ecx, [esp + 0x1bc]
push eax
push ecx
mov ecx, ebx
call fcn.00551630
test eax, eax
jne 0x53b420
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
mov edi, dword [esp + 0x10]
mov dword [esp + 0x1c], 0
mov eax, dword [edi + 0x37d0]
mov ebx, dword [edi + 0x37c8]
test eax, eax
jle 0x53bb15
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x53b465
cmp eax, 3
je 0x53b465
cmp eax, 5
je 0x53b465
mov edx, dword [edi + 0x6048]
mov dword [ebx + 0x78], edx
mov eax, dword [edi + 0x604c]
mov dword [ebx + 0x7c], eax
jmp 0x53b477
mov ecx, dword [edi + 0x6040]
mov dword [ebx + 0x78], ecx
mov edx, dword [edi + 0x6044]
mov dword [ebx + 0x7c], edx
push ebx
mov ecx, edi
call fcn.0053dfc0
test eax, eax
jne 0x53baf8
mov ecx, dword [ebx + 0x18]
cmp ecx, 1
jle 0x53b82c
mov eax, dword [ebx + 0x48]
xor esi, esi
cmp eax, esi
jle 0x53b6d2
cmp eax, dword [edi + 0x6078]
jge 0x53b6d2
mov dword [ebx + 0x80], esi
mov dword [ebx + 0x84], esi
mov eax, dword [edi + 0x6078]
push pe_nt_image_headers32
mov dword [ebx + 0x40], eax
call fcn.004c2e90
add esp, 4
cmp eax, esi
je 0x53b5b0
mov ecx, eax
call fcn.004cbb80
mov esi, eax
test esi, esi
je 0x53b5b0
mov ecx, dword [esp + 0x218]
mov edx, dword [ebx + 0x2c]
mov eax, dword [ebx + 0x28]
push ecx
push edx
push eax
lea ecx, [esp + 0x5c]
push 0x20
push ecx
call fcn.00429bd0
fild dword [ebx + 0x1c]
add esp, 0x14
lea edx, [ebx + 8]
fmul qword [0x565ad0]
push eax
mov eax, dword [ebx + 0x18]
push edx
sub esp, 8
fstp qword [esp]
push eax
call fcn.0042abe0
mov ecx, dword [ebx]
add esp, 4
lea edx, [esp + 0xc0]
push eax
push ecx
push str._d__s__.2lf__s_at__s_expired
push 0xff
push edx
call dword [sym.imp.MSVCRT.dll__snprintf]
mov eax, dword [ebx + 0x28]
mov ecx, dword [ebx + 0x2c]
mov edx, dword [ebx + 0x40]
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], ecx
lea eax, [esp + 0xd4]
push 0x3f
lea ecx, [esi + 0xc]
push eax
push ecx
mov dword [esp + 0x48], edx
call dword [sym.imp.MSVCRT.dll_strncpy]
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x74]
add esp, 0x30
mov dword [esi + 0xa0], eax
mov byte [esi + 0x4b], 0
mov dword [esi + 0x90], edx
mov dword [esi + 0xa4], ecx
mov dword [esi + 0xc4], 0x20a5da
mov dword [esi + 0xe0], 3
mov ecx, dword [edi + 0x5e78]
push esi
call fcn.0041ac20
push pe_nt_image_headers32
call fcn.004c2e90
add esp, 4
test eax, eax
je 0x53b662
mov ecx, eax
call fcn.004dcf90
mov esi, eax
test esi, esi
je 0x53b662
mov edx, dword [ebx]
lea eax, [esp + 0xb0]
push edx
push str._d_expiration
push 0xff
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov edx, dword [ebx + 0x2c]
mov ecx, dword [ebx + 0x28]
add esp, 0x10
mov eax, edx
mov dword [esp + 0x34], edx
mov edx, dword [ebx + 0x40]
push eax
push ecx
push edx
push eax
mov eax, dword [ebx + 0x20]
mov dword [esp + 0x40], ecx
push ecx
lea ecx, [esp + 0xc4]
push eax
push ecx
mov ecx, esi
call fcn.004c8270
mov dword [esi + 0xd0], 0
mov dword [esi + 0xc8], 4
mov eax, dword [ebx + 0x18]
cmp eax, 2
je 0x53b64c
cmp eax, 4
je 0x53b64c
mov dword [esi + 0xc4], 0xff
jmp 0x53b656
mov dword [esi + 0xc4], 0xff0000
mov ecx, dword [edi + 0x5e78]
push esi
call fcn.0041ac20
push 0x1f
lea edx, [ebx + 0x94]
push str.expiration
push edx
call dword [sym.imp.MSVCRT.dll_strncpy]
mov eax, dword [ebx]
add esp, 0xc
mov byte [ebx + 0xb3], 0
push eax
push str.Tester:__d_deleted_due_expiration
push 2
push 0x5960a0
call fcn.0046b660
mov edx, dword [edi]
add esp, 0x10
mov ecx, edi
push ebx
call dword [edx + 0x1c]
mov eax, dword [ebx + 0x2c]
mov ecx, dword [ebx + 0x28]
push 0
push 0
push 0
push eax
push ecx
push str.expiration
push ebx
mov ecx, edi
call fcn.0053ea10
mov dword [ebx], 0
mov eax, dword [edi + 0x607c]
inc eax
mov dword [edi + 0x607c], eax
jmp 0x53baf8
cmp ecx, 2
jne 0x53b700
fld qword [esp + 0x48]
fsub qword [ebx + 0x28]
fcom qword [0x565af8]
fnstsw ax
test ah, 1
jne 0x53b6fe
fcomp qword [0x565b00]
fnstsw ax
test ah, 0x41
je 0x53baf8
jmp 0x53b700
fstp st(0)
cmp ecx, 4
jne 0x53b72e
fld qword [ebx + 0x28]
fsub qword [esp + 0x38]
fcom qword [0x565af8]
fnstsw ax
test ah, 1
jne 0x53b72c
fcomp qword [0x565b00]
fnstsw ax
test ah, 0x41
je 0x53baf8
jmp 0x53b72e
fstp st(0)
cmp ecx, 3
jne 0x53b75c
fld qword [ebx + 0x28]
fsub qword [esp + 0x28]
fcom qword [0x565af8]
fnstsw ax
test ah, 1
jne 0x53b75a
fcomp qword [0x565b00]
fnstsw ax
test ah, 0x41
je 0x53baf8
jmp 0x53b75c
fstp st(0)
cmp ecx, 5
jne 0x53b78a
fld qword [esp + 0x20]
fsub qword [ebx + 0x28]
fcom qword [0x565af8]
fnstsw ax
test ah, 1
jne 0x53b788
fcomp qword [0x565b00]
fnstsw ax
test ah, 0x41
je 0x53baf8
jmp 0x53b78a
fstp st(0)
mov eax, dword [edi + 0x6084]
mov ecx, dword [edi + 0x6088]
cmp eax, ecx
jge 0x53b7a4
mov ecx, dword [edi + 0x6080]
test ecx, ecx
jne 0x53b80d
lea edx, [eax*4 + 0x1000]
push edx
call fcn.004c2e90
mov esi, eax
add esp, 4
test esi, esi
mov dword [esp + 0x18], esi
je 0x53baf8
mov eax, dword [edi + 0x6080]
test eax, eax
je 0x53b7f5
mov ecx, dword [edi + 0x6084]
test ecx, ecx
jle 0x53b7e6
mov edi, dword [esp + 0x18]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
mov eax, dword [edi + 0x6080]
push eax
call fcn.004c2eb0
add esp, 4
mov eax, dword [edi + 0x6084]
mov dword [edi + 0x6080], esi
lea ecx, [eax + 0x3fe]
mov dword [edi + 0x6088], ecx
mov edx, dword [edi + 0x6080]
mov ecx, dword [esp + 0x1c]
mov dword [edx + eax*4], ecx
mov eax, dword [edi + 0x6084]
inc eax
mov dword [edi + 0x6084], eax
jmp 0x53baf8
fld qword [edi + 0x190]
fsub qword [ebx + 0x80]
lea edx, [esp + 0x1b0]
push 0
push edx
push ebx
mov ecx, edi
fstp qword [edi + 0x190]
call fcn.005514b0
fld qword [edi + 0x190]
fadd qword [ebx + 0x80]
push ebx
mov ecx, edi
fstp qword [edi + 0x190]
call fcn.0053ad00
fld qword [ebx + 0x30]
mov eax, dword [esp + 0x14]
fcomp qword [0x565ac0]
inc eax
mov dword [esp + 0x14], eax
fnstsw ax
test ah, 0x40
jne 0x53b9a6
mov ecx, dword [ebx + 0x18]
test ecx, ecx
jne 0x53b8ac
fld qword [ebx + 0x30]
fsub qword [esp + 0x20]
fcom qword [0x565af8]
fnstsw ax
test ah, 1
jne 0x53b8aa
fcomp qword [0x565b00]
jmp 0x53b8cc
fstp st(0)
cmp ecx, 1
jne 0x53b9a6
fld qword [esp + 0x38]
fsub qword [ebx + 0x30]
fcomp qword [0x565af8]
fnstsw ax
test cl, ah
jne 0x53b9a6
mov eax, dword [ebx + 0x30]
mov ecx, dword [ebx + 0x34]
mov dword [ebx + 0x78], eax
mov dword [ebx + 0x7c], ecx
mov edi, str._sl_
or ecx, 0xffffffff
xor eax, eax
mov byte [ebx + 0xaf], 0
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebx + 0x94]
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 1
and ecx, 3
push 0x591fbc
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
push eax
push ebx
call fcn.0053cd30
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x218]
push eax
lea eax, [esp + 0x94]
mov ecx, dword [esi + 0x604c]
mov edx, dword [esi + 0x6048]
push ecx
push edx
push 0x20
push eax
call fcn.00429bd0
mov ecx, dword [esp + 0x22c]
mov edx, dword [esi + 0x6044]
add esp, 0x14
push eax
mov eax, dword [esi + 0x6040]
push ecx
push edx
push eax
lea ecx, [esp + 0x80]
push 0x20
push ecx
call fcn.00429bd0
mov edx, dword [esp + 0x230]
mov ecx, dword [ebx + 0x30]
add esp, 0x14
push eax
mov eax, dword [ebx + 0x34]
push edx
push eax
push ecx
lea edx, [esp + 0x64]
push 0x20
push edx
call fcn.00429bd0
add esp, 0x14
push eax
mov eax, dword [ebx]
push eax
push str.Tester:_stop_loss__d_at__s___s____s_
push 0
jmp 0x53bad4
fld qword [ebx + 0x38]
fcomp qword [0x565ac0]
fnstsw ax
test ah, 0x40
jne 0x53baf8
mov ecx, dword [ebx + 0x18]
test ecx, ecx
jne 0x53b9df
fld qword [esp + 0x28]
fsub qword [ebx + 0x38]
fcom qword [0x565af8]
fnstsw ax
test ah, 1
jne 0x53b9dd
fcomp qword [0x565b00]
jmp 0x53b9ff
fstp st(0)
cmp ecx, 1
jne 0x53baf8
fld qword [ebx + 0x38]
fsub qword [esp + 0x48]
fcomp qword [0x565af8]
fnstsw ax
test cl, ah
jne 0x53baf8
mov ecx, dword [ebx + 0x38]
mov edx, dword [ebx + 0x3c]
mov dword [ebx + 0x78], ecx
mov edi, str._tp_
or ecx, 0xffffffff
xor eax, eax
mov dword [ebx + 0x7c], edx
mov byte [ebx + 0xaf], 0
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [ebx + 0x94]
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 1
and ecx, 3
push 0x591f88
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x18]
push eax
push ebx
call fcn.0053cd30
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x218]
push eax
lea eax, [esp + 0x94]
mov ecx, dword [esi + 0x604c]
mov edx, dword [esi + 0x6048]
push ecx
push edx
push 0x20
push eax
call fcn.00429bd0
mov ecx, dword [esp + 0x22c]
mov edx, dword [esi + 0x6044]
add esp, 0x14
push eax
mov eax, dword [esi + 0x6040]
push ecx
push edx
push eax
lea ecx, [esp + 0x80]
push 0x20
push ecx
call fcn.00429bd0
mov edx, dword [esp + 0x230]
mov ecx, dword [ebx + 0x38]
add esp, 0x14
push eax
mov eax, dword [ebx + 0x3c]
push edx
push eax
push ecx
lea edx, [esp + 0x64]
push 0x20
push edx
call fcn.00429bd0
add esp, 0x14
push eax
mov eax, dword [ebx]
push eax
push str.Tester:_take_profit__d_at__s___s____s_
push 2
push 0x5960a0
call fcn.0046b660
mov edi, dword [esp + 0x2c]
mov dword [ebx], 0
mov eax, dword [esi + 0x607c]
add esp, 0x1c
inc eax
mov dword [esi + 0x607c], eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi + 0x37d0]
inc eax
add ebx, 0xe0
cmp eax, ecx
mov dword [esp + 0x1c], eax
jl 0x53b440
mov ecx, edi
call fcn.0053e0a0
mov edx, dword [esp + 0x14]
add edx, eax
mov eax, dword [edi + 0x37d0]
test eax, eax
mov dword [esp + 0x14], edx
jle 0x53bbbf
mov ecx, dword [edi + 0x607c]
test ecx, ecx
jg 0x53bb48
mov ecx, dword [edi + 0x3744]
test ecx, ecx
jle 0x53bbbf
mov ecx, dword [edi + 0x37c8]
mov esi, dword [sym.imp.MSVCRT.dll_qsort]
push 0x53fbd0
push 0xe0
push eax
push ecx
call esi
mov edx, dword [edi + 0x607c]
mov ebx, dword [edi + 0x37d0]
sub ebx, edx
add esp, 0x10
mov ecx, ebx
xor eax, eax
test ecx, ecx
mov dword [edi + 0x37d0], ebx
jle 0x53bba5
xor ecx, ecx
mov edx, dword [edi + 0x37c8]
mov ebx, dword [edi + 0x37cc]
add edx, ecx
add ecx, 0xe0
mov dword [ebx + eax*4], edx
mov edx, dword [edi + 0x37d0]
inc eax
cmp eax, edx
jl 0x53bb83
mov eax, dword [edi + 0x37d0]
mov ecx, dword [edi + 0x37cc]
push 0x54f9c0
push 4
push eax
push ecx
call esi
add esp, 0x10
mov eax, dword [esp + 0x14]
xor esi, esi
cmp eax, esi
jle 0x53bc24
mov ecx, dword [edi + 0x37d0]
mov dword [edi + 0x1b0], esi
cmp ecx, esi
mov dword [edi + 0x1b4], esi
jle 0x53bc10
mov eax, dword [edi + 0x37c8]
add eax, 0x80
fld qword [eax - 0x20]
fadd qword [eax - 0x10]
add eax, 0xe0
dec ecx
fadd qword [eax - 0xd8]
fadd qword [eax - 0xe0]
fadd qword [edi + 0x1b0]
fstp qword [edi + 0x1b0]
jne 0x53bbea
push esi
push esi
push esi
push esi
mov ecx, edi
call fcn.0053ecf0
mov ecx, edi
fstp st(0)
call fcn.0053bcf0
fld qword [edi + 0x1a0]
fcomp qword [0x565ac0]
fnstsw ax
test ah, 0x41
jne 0x53bc8e
mov ecx, dword [edi + 0x36bc]
cmp ecx, esi
jne 0x53bc62
fld qword [edi + 0x190]
fmul qword [0x56cc48]
fdiv qword [edi + 0x1a0]
fild dword [edi + 0x3670]
fcompp
fnstsw ax
test ah, 0x41
je 0x53bc7a
cmp ecx, 1
jne 0x53bc8e
fild dword [edi + 0x3670]
fcomp qword [edi + 0x190]
fnstsw ax
test ah, 0x41
jne 0x53bc8e
mov edx, dword [ebp + 0x24]
xor eax, eax
mov dword [edx], 9
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
fld qword [edi + 0x188]
fcomp qword [0x565ac0]
fnstsw ax
test ah, 0x41
je 0x53bcbd
cmp dword [edi + 0x37d0], esi
jne 0x53bcbd
mov eax, dword [ebp + 0x24]
mov dword [eax], 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
mov al, byte [ebp + 0x20]
test al, al
je 0x53bcdc
mov ecx, dword [ebp + 0x24]
push ecx
mov ecx, edi
call fcn.0053e870
test eax, eax
jne 0x53bcdc
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x20