Function at 0x51c890
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x62f174
mov eax, dword fs:[0]
push eax
sub esp, 0x108
mov eax, dword [0x6ec7c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0xf8], esi
mov edi, dword [ebp + 0x84]
push str.CReportListView::AddTemplateItemToHtml
lea ecx, [ebp - 0xe0]
mov dword [ebp - 4], 5
call fcn.00562ae0
mov dword [ebp - 0xe4], 0
lea eax, [ebp - 0xec]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp + 8]
call fcn.0050a340
mov eax, dword [ebp + 8]
mov dword [ebp - 0xfc], eax
mov eax, dword [0x6fd840]
mov byte [ebp - 4], 8
mov dword [ebp - 0xe8], 0
test eax, eax
jne 0x51c978
push str.sciter32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov esi, eax
test esi, esi
je 0x51c961
push str.SciterAPI
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x51c95a
call eax
mov dword [0x6fd840], eax
mov eax, dword [eax + 0x26c]
call eax
test eax, eax
je 0x51c961
mov dword [0x6fd83c], eax
jmp 0x51c961
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x6fd840]
test eax, eax
jne 0x51c972
push 0xffffffffffffffff
call dword [0x63e2ac]
mov esi, dword [ebp - 0xf8]
mov eax, dword [eax + 0xc0]
lea ecx, [ebp - 0xe8]
push ecx
push dword [ebp - 0xfc]
call eax
mov eax, dword [ebp - 0xe8]
lea ecx, [esi + 0x84]
inc eax
push eax
lea eax, [ebp - 0xec]
push eax
call fcn.0050a410
push 0
push str.style
push dword [ebp - 0xec]
call fcn.004862d0
push edi
lea eax, [ebp - 0x58]
mov ecx, esi
push eax
call fcn.0051de60
cmp dword [eax + 0x14], 7
mov byte [ebp - 4], 9
jbe 0x51c9d1
mov eax, dword [eax]
push eax
push 0x64cce0
push dword [ebp - 0xec]
call fcn.004862d0
mov ecx, dword [ebp - 0x44]
mov byte [ebp - 4], 8
cmp ecx, 7
jbe 0x51ca22
mov edx, dword [ebp - 0x58]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51ca18
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x51ca18
call dword [0x63e2e0]
push ecx
push edx
call fcn.00604b8c
add esp, 8
push 0x1c
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
push str.ui_images_reporting_itemstat
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x2c], 0
movups xmmword [ebp - 0x40], xmm0
call fcn.00414450
push 4
xorps xmm0, xmm0
mov byte [ebp - 4], 0xa
push 0x65f194
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x60], 0
movups xmmword [ebp - 0x70], xmm0
mov dword [ebp - 0x5c], 0
call fcn.00414450
cmp dword [ebp + 0x80], 7
lea edx, [ebp + 0x6c]
xorps xmm0, xmm0
mov byte [ebp - 4], 0xb
cmova edx, dword [ebp + 0x6c]
mov ecx, edx
mov dword [ebp - 0x104], 0
movups xmmword [ebp - 0x114], xmm0
mov dword [ebp - 0x100], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x51caa3
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x114]
call fcn.00414450
push str.CReportListView::GetStatusIdFromStatusName
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0xc
call fcn.00562ae0
mov edi, dword [ebp - 0xf8]
xor eax, eax
mov edx, dword [ebp - 0x114]
add edi, 0xa0
mov dword [ebp - 0xe8], eax
nop dword [eax]
cmp dword [edi + 0x14], 7
mov ecx, edi
jbe 0x51cafa
mov ecx, dword [edi]
cmp dword [ebp - 0x100], 7
lea esi, [ebp - 0x114]
mov eax, dword [ebp - 0x104]
cmova esi, edx
cmp eax, dword [edi + 0x10]
mov eax, dword [ebp - 0xe8]
jne 0x51cb97
mov edx, dword [ebp - 0x104]
test edx, edx
je 0x51cb38
sub esi, ecx
mov ax, word [esi + ecx]
cmp ax, word [ecx]
jne 0x51cb8b
add ecx, 2
sub edx, 1
jne 0x51cb27
lea ecx, [ebp - 0xa8]
call fcn.005630c0
mov eax, dword [ebp - 0x100]
mov byte [ebp - 4], 0xb
cmp eax, 7
jbe 0x51cb83
mov ecx, dword [ebp - 0x114]
lea edx, [eax*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x51cb79
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51cbeb
push edx
push ecx
call fcn.00604b8c
add esp, 8
mov eax, dword [ebp - 0xe8]
jmp 0x51cbfe
mov eax, dword [ebp - 0xe8]
mov edx, dword [ebp - 0x114]
inc eax
add edi, 0x18
mov dword [ebp - 0xe8], eax
cmp eax, 0x10
jl 0x51caf0
lea ecx, [ebp - 0xa8]
call fcn.005630c0
mov eax, dword [ebp - 0x100]
mov byte [ebp - 4], 0xb
cmp eax, 7
jbe 0x51cbfb
mov ecx, dword [ebp - 0x114]
lea edx, [eax*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x51cbf1
mov ecx, dword [eax - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x51cbf1
call dword [0x63e2e0]
push edx
push ecx
call fcn.00604b8c
add esp, 8
or eax, 0xffffffff
test eax, eax
jns 0x51cc1e
neg eax
push eax
lea eax, [ebp - 0x72]
push eax
call fcn.00435f90
add esp, 8
mov ecx, 0x2d
sub eax, 2
mov word [eax], cx
jmp 0x51cc2b
push eax
lea eax, [ebp - 0x72]
push eax
call fcn.00435f90
add esp, 8
lea ecx, [ebp - 0xf1]
push ecx
lea ecx, [ebp - 0x72]
push ecx
push eax
lea ecx, [ebp - 0x58]
call fcn.00435c80
push str.colStatusIcon
lea eax, [ebp - 0xec]
mov byte [ebp - 4], 0xd
push str._id_S_
push eax
call fcn.00486490
add esp, 0xc
mov dword [ebp - 0xe4], 0
lea ecx, [ebp - 0xe4]
push eax
call fcn.00487180
mov ecx, dword [ebp - 0x30]
mov eax, 0x7ffffffe
mov edx, dword [ebp - 0x48]
sub eax, ecx
cmp eax, edx
jb 0x51d4ee
cmp dword [ebp - 0x2c], 7
lea eax, [ebp - 0x40]
lea esi, [ebp - 0x58]
mov dword [ebp - 0x78], 0
cmova eax, dword [ebp - 0x40]
lea edi, [ebp - 0x88]
cmp dword [ebp - 0x44], 7
xorps xmm0, xmm0
mov dword [ebp - 0xfc], eax
cmova esi, dword [ebp - 0x58]
add edx, ecx
mov dword [ebp - 0xf0], esi
mov esi, 7
mov dword [ebp - 0x74], 0
mov dword [ebp - 0xe8], edx
movups xmmword [ebp - 0x88], xmm0
cmp edx, esi
jbe 0x51cd63
mov esi, edx
or esi, 7
cmp esi, 0x7ffffffe
jbe 0x51cd23
mov eax, 0x7fffffff
mov esi, 0x7ffffffe
add eax, eax
cmp eax, 0x1000
jb 0x51cd43
lea ecx, [eax + 0x23]
cmp ecx, eax
jbe 0x51d4f3
push ecx
call fcn.0060388f
add esp, 4
test eax, eax
je 0x51ce91
lea edi, [eax + 0x23]
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x51cd4e
mov eax, 0xa
cmp esi, eax
cmovb esi, eax
lea eax, [esi + 1]
cmp eax, 0x7fffffff
ja 0x51d4f3
add eax, eax
jne 0x51ccf5
xor edi, edi
jmp 0x51cd57
push eax
call fcn.0060388f
add esp, 4
mov edi, eax
mov edx, dword [ebp - 0xe8]
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xfc]
mov dword [ebp - 0x88], edi
mov dword [ebp - 0x74], esi
lea esi, [ecx + ecx]
push esi
push eax
push edi
mov dword [ebp - 0x78], edx
call fcn.0060ddef
mov eax, dword [ebp - 0x48]
lea ecx, [edi + esi]
add eax, eax
push eax
push dword [ebp - 0xf0]
push ecx
call fcn.0060ddef
mov eax, dword [ebp - 0xe8]
xor ecx, ecx
add esp, 0x18
mov word [edi + eax*2], cx
cmp dword [ebp - 0x5c], 7
lea eax, [ebp - 0x70]
push dword [ebp - 0x60]
cmova eax, dword [ebp - 0x70]
lea ecx, [ebp - 0x88]
push eax
mov byte [ebp - 4], 0xe
call fcn.00418500
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x28], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x18], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
cmp dword [ebp - 0x14], 7
lea eax, [ebp - 0x28]
mov esi, dword [ebp - 0xe4]
cmova eax, dword [ebp - 0x28]
push eax
push 0x66817c
push esi
mov byte [ebp - 4], 0xf
call fcn.004862d0
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 0xe
cmp ecx, 7
jbe 0x51ce4a
mov edx, dword [ebp - 0x28]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51ce40
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51ce91
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov ecx, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 0xd
cmp ecx, 7
jbe 0x51cea1
mov edx, dword [ebp - 0x88]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51ce97
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x51ce97
call dword [0x63e2e0]
push ecx
push edx
call fcn.00604b8c
add esp, 8
push str.colStartTime
lea eax, [ebp - 0xec]
push str._id_S_
push eax
call fcn.00486490
add esp, 0xc
mov edi, eax
mov dword [ebp - 0xf0], edi
test esi, esi
je 0x51cf2d
mov eax, dword [0x6fd840]
test eax, eax
jne 0x51cf24
push str.sciter32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
je 0x51cf11
push str.SciterAPI
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x51cf0a
call eax
mov dword [0x6fd840], eax
mov eax, dword [eax + 0x26c]
call eax
test eax, eax
je 0x51cf11
mov dword [0x6fd83c], eax
jmp 0x51cf11
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x6fd840]
test eax, eax
je 0x51d334
mov edi, dword [ebp - 0xf0]
mov eax, dword [eax + 0x80]
push esi
call eax
push edi
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0
call fcn.00487180
cmp dword [ebp + 0x20], 7
lea edx, [ebp + 0xc]
mov esi, dword [ebp - 0xe4]
jbe 0x51cf59
mov edx, dword [ebp + 0xc]
test edx, edx
je 0x51cf74
xor ecx, ecx
mov eax, edx
cmp word [edx], cx
je 0x51cf6c
lea eax, [eax + 2]
inc ecx
cmp word [eax], 0
jne 0x51cf62
push ecx
push edx
push esi
call fcn.00486340
push str.colEndTime
lea eax, [ebp - 0xec]
push str._id_S_
push eax
call fcn.00486490
add esp, 0xc
mov edi, eax
mov dword [ebp - 0xf0], edi
test esi, esi
je 0x51d000
mov eax, dword [0x6fd840]
test eax, eax
jne 0x51cff7
push str.sciter32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
je 0x51cfe4
push str.SciterAPI
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x51cfdd
call eax
mov dword [0x6fd840], eax
mov eax, dword [eax + 0x26c]
call eax
test eax, eax
je 0x51cfe4
mov dword [0x6fd83c], eax
jmp 0x51cfe4
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x6fd840]
test eax, eax
je 0x51d334
mov edi, dword [ebp - 0xf0]
mov eax, dword [eax + 0x80]
push esi
call eax
push edi
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0
call fcn.00487180
cmp dword [ebp + 0x38], 7
lea edx, [ebp + 0x24]
mov esi, dword [ebp - 0xe4]
jbe 0x51d02c
mov edx, dword [ebp + 0x24]
test edx, edx
je 0x51d047
xor ecx, ecx
mov eax, edx
cmp word [edx], cx
je 0x51d03f
lea eax, [eax + 2]
inc ecx
cmp word [eax], 0
jne 0x51d035
push ecx
push edx
push esi
call fcn.00486340
push str.colTaskName
lea eax, [ebp - 0xec]
push str._id_S_
push eax
call fcn.00486490
add esp, 0xc
mov edi, eax
mov dword [ebp - 0xf0], edi
test esi, esi
je 0x51d0d3
mov eax, dword [0x6fd840]
test eax, eax
jne 0x51d0ca
push str.sciter32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
je 0x51d0b7
push str.SciterAPI
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x51d0b0
call eax
mov dword [0x6fd840], eax
mov eax, dword [eax + 0x26c]
call eax
test eax, eax
je 0x51d0b7
mov dword [0x6fd83c], eax
jmp 0x51d0b7
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x6fd840]
test eax, eax
je 0x51d334
mov edi, dword [ebp - 0xf0]
mov eax, dword [eax + 0x80]
push esi
call eax
push edi
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0
call fcn.00487180
cmp dword [ebp + 0x50], 7
lea edx, [ebp + 0x3c]
mov esi, dword [ebp - 0xe4]
jbe 0x51d0ff
mov edx, dword [ebp + 0x3c]
test edx, edx
je 0x51d11a
xor ecx, ecx
mov eax, edx
cmp word [edx], cx
je 0x51d112
lea eax, [eax + 2]
inc ecx
cmp word [eax], 0
jne 0x51d108
push ecx
push edx
push esi
call fcn.00486340
push str.colStatus
lea eax, [ebp - 0xec]
push str._id_S_
push eax
call fcn.00486490
add esp, 0xc
mov edi, eax
mov dword [ebp - 0xf0], edi
test esi, esi
je 0x51d1a6
mov eax, dword [0x6fd840]
test eax, eax
jne 0x51d19d
push str.sciter32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
je 0x51d18a
push str.SciterAPI
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x51d183
call eax
mov dword [0x6fd840], eax
mov eax, dword [eax + 0x26c]
call eax
test eax, eax
je 0x51d18a
mov dword [0x6fd83c], eax
jmp 0x51d18a
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x6fd840]
test eax, eax
je 0x51d334
mov edi, dword [ebp - 0xf0]
mov eax, dword [eax + 0x80]
push esi
call eax
push edi
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xe4], 0
call fcn.00487180
cmp dword [ebp + 0x80], 7
lea edx, [ebp + 0x6c]
mov esi, dword [ebp - 0xe4]
jbe 0x51d1d5
mov edx, dword [ebp + 0x6c]
test edx, edx
je 0x51d1f2
xor ecx, ecx
mov eax, edx
cmp word [edx], cx
je 0x51d1ea
nop
lea eax, [eax + 2]
inc ecx
cmp word [eax], 0
jne 0x51d1e0
push ecx
push edx
push esi
call fcn.00486340
mov ecx, dword [ebp - 0xf8]
lea eax, [ebp - 0xec]
push 0x7fffffff
push eax
lea ecx, [ecx + 0x290]
call fcn.0050a410
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0xb
cmp eax, 7
jbe 0x51d24d
mov edx, dword [ebp - 0x58]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d243
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51d4bf
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov ecx, dword [ebp - 0x5c]
mov byte [ebp - 4], 0xa
cmp ecx, 7
jbe 0x51d28b
mov edx, dword [ebp - 0x70]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d281
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51d4bf
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 8
cmp eax, 7
jbe 0x51d2c9
mov edx, dword [ebp - 0x40]
lea ecx, [eax*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d2bf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51d4bf
push ecx
push edx
call fcn.00604b8c
add esp, 8
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 0x10
call fcn.00487100
mov byte [ebp - 4], 0x11
test esi, esi
je 0x51d345
mov eax, dword [0x6fd840]
test eax, eax
jne 0x51d33c
push str.sciter32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov edi, eax
test edi, edi
je 0x51d32b
push str.SciterAPI
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x51d324
call eax
mov dword [0x6fd840], eax
mov eax, dword [eax + 0x26c]
call eax
test eax, eax
je 0x51d32b
mov dword [0x6fd83c], eax
jmp 0x51d32b
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x6fd840]
test eax, eax
jne 0x51d33c
push 0xffffffffffffffff
call dword [0x63e2ac]
mov eax, dword [eax + 0x80]
push esi
call eax
lea ecx, [ebp - 0xe0]
call fcn.005630c0
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0x12
call fcn.00487100
mov ecx, dword [ebp + 0x20]
cmp ecx, 7
jbe 0x51d396
mov edx, dword [ebp + 0xc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d38c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51d4bf
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov ecx, dword [ebp + 0x38]
xor eax, eax
mov dword [ebp + 0x1c], 0
mov dword [ebp + 0x20], 7
mov word [ebp + 0xc], ax
cmp ecx, 7
jbe 0x51d3e4
mov edx, dword [ebp + 0x24]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d3da
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51d4bf
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov ecx, dword [ebp + 0x50]
xor eax, eax
mov dword [ebp + 0x34], 0
mov dword [ebp + 0x38], 7
mov word [ebp + 0x24], ax
cmp ecx, 7
jbe 0x51d432
mov edx, dword [ebp + 0x3c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d428
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51d4bf
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov ecx, dword [ebp + 0x68]
xor eax, eax
mov dword [ebp + 0x4c], 0
mov dword [ebp + 0x50], 7
mov word [ebp + 0x3c], ax
cmp ecx, 7
jbe 0x51d47c
mov edx, dword [ebp + 0x54]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d472
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x51d4bf
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov ecx, dword [ebp + 0x80]
xor eax, eax
mov dword [ebp + 0x64], 0
mov dword [ebp + 0x68], 7
mov word [ebp + 0x54], ax
cmp ecx, 7
jbe 0x51d4cf
mov edx, dword [ebp + 0x6c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x51d4c5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x51d4c5
call dword [0x63e2e0]
push ecx
push edx
call fcn.00604b8c
add esp, 8
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00604ed9
mov esp, ebp
pop ebp
ret 0x80
call fcn.00417f10
call fcn.00417e00
int3