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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x934
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, ecx
test ebx, ebx
push edi
mov dword [esp + 0x10], esi
je 0x530710
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x530710
lea eax, [esi + 0x40]
push eax
mov dword [esp + 0x18], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x22
push str._tr_bgcolor_C0C0C0__alignright_
mov ecx, ebx
call fcn.004b9750
xor edi, edi
mov dword [esp + 0xc], edi
mov edx, dword [esi + 0x20]
lea ecx, [esp + 0x20]
push ecx
push edi
lea eax, [esp + 0x48]
push 0x1019
push edx
mov dword [esp + 0x30], 4
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0xff
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x5304d3
lea eax, [esp + 0x40]
lea ecx, [esp + 0x140]
push eax
push str._td__s__td_
push 0x7ff
push ecx
call dword [sym.imp.MSVCRT.dll__snprintf]
lea edi, [esp + 0x150]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x10
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edx, [esp + 0x140]
push ecx
push edx
mov ecx, ebx
call fcn.004b9750
mov edi, dword [esp + 0xc]
inc edi
cmp edi, 7
mov dword [esp + 0xc], edi
jl 0x53045d
push 7
push str.__tr__r_n
mov ecx, ebx
call fcn.004b9750
mov ecx, dword [esi + 0x2ec]
cmp ecx, 0x1e
jle 0x53050a
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [ebx + 0xc], edx
mov edi, dword [esp + 0x10]
mov esi, dword [esi + 0x2e8]
mov dword [esp + 0xc], 0
mov eax, dword [edi + 0x2ec]
test eax, eax
jle 0x530705
jmp 0x530530
mov edi, dword [esp + 0x10]
test dword [esp + 0xc], 0x3ff
jne 0x530551
mov ecx, dword [ebx + 8]
mov edx, dword [ebx + 4]
push ecx
mov ecx, dword [ebp + 0xc]
push edx
call fcn.0051fba0
mov dword [ebx + 8], 0
mov eax, dword [esp + 0xc]
and eax, 1
cmp al, 1
jne 0x530565
push 0x22
push str._tr_bgcolor_E0E0E0__alignright_
jmp 0x53056c
push 0x10
push str._tr_alignright_
mov ecx, ebx
call fcn.004b9750
mov ecx, dword [esi + 0xc4]
mov edx, dword [esi + 0xc0]
push 0
push ecx
push edx
lea ecx, [edi + 0x300]
call fcn.004e0210
mov eax, dword [edi + 0x918]
mov edi, dword [edi + 0x920]
test eax, eax
jne 0x5305a3
mov eax, 0x5937a0
test edi, edi
jne 0x5305ac
mov edi, 0x5937a0
push edi
push eax
push str._td_title__s_s
lea eax, [esp + 0x14c]
push 0x7ff
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
lea edi, [esp + 0x154]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x14
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x144]
push ecx
mov ecx, ebx
call fcn.004b9750
fld qword [esi + 0xa0]
fst qword [esp + 0x18]
fcomp qword [0x57bf38]
fnstsw ax
test ah, 1
je 0x530668
mov edx, dword [esi + 0x8c]
mov eax, dword [esi + 0x88]
mov ecx, dword [esi + 0x7c]
push edx
mov edx, dword [esi + 0x78]
push eax
mov eax, dword [esi + 0x9c]
push ecx
mov ecx, dword [esi + 0x98]
push edx
mov edx, dword [esp + 0x2c]
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esi + 0xc8]
push edx
mov edx, dword [esi + 4]
push eax
mov eax, dword [esi]
push ecx
mov ecx, dword [esi + 0xbc]
push edx
mov edx, dword [esi + 0xb8]
push eax
push ecx
push edx
push str.___I64d__td__td_classmspt__.2lf__td__td__d__td__td_classmspt__.2lf__td__td_classmspt__.2lf__td__td_classmspt__.2lf__td__td_classmspt__.2lf__td___tr__r_n
lea eax, [esp + 0x178]
push 0x7ff
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x40
jmp 0x5306c3
mov ecx, dword [esi + 0x8c]
mov edx, dword [esi + 0x88]
mov eax, dword [esi + 0x7c]
push ecx
mov ecx, dword [esi + 0x78]
push edx
mov edx, dword [esi + 0x9c]
push eax
mov eax, dword [esi + 0x98]
push ecx
mov ecx, dword [esi + 0xc8]
push edx
mov edx, dword [esi + 4]
push eax
mov eax, dword [esi]
push ecx
mov ecx, dword [esi + 0xbc]
push edx
mov edx, dword [esi + 0xb8]
push eax
push ecx
push edx
push str.___I64d__td__td_classmspt__.2lf__td__td__d__td__td_classmspt_0.00__td__td_classmspt__.2lf__td__td_classmspt__.2lf__td__td_classmspt__.2lf__td___tr__r_n
lea eax, [esp + 0x170]
push 0x7ff
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x38
lea edi, [esp + 0x140]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
lea ecx, [esp + 0x144]
push ecx
mov ecx, ebx
call fcn.004b9750
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
inc eax
add esi, 0x100
mov ecx, dword [edx + 0x2ec]
mov dword [esp + 0xc], eax
cmp eax, ecx
jl 0x53052c
mov eax, dword [esp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8