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

Disassembly:
push 0xffffffffffffffff
push 0x45086c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x410
push ebx
push ebp
push esi
push edi
xor edi, edi
mov ebp, ecx
push edi
push str.Html_Report_Files__.htm_
push 6
push edi
push 0x45c7fc
push edi
lea ecx, [esp + 0xc8]
call fcn.00424380
mov dword [esp + 0xb0], 0x454594
mov dword [esp + 0x428], edi
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp dword [esp + 0xd0], edi
jne 0x416906
mov dword [esp + 0xd0], eax
lea eax, [esp + 0xb0]
lea ecx, [esp + 0xb8]
push eax
push ecx
push 0x460688
call fcn.00403e10
cmp dword [esp + 0x118], edi
je 0x416939
lea edx, [esp + 0xcc]
push edx
call dword [sym.imp.comdlg32.dll_GetOpenFileNameA]
jmp 0x416947
lea eax, [esp + 0xcc]
push eax
call dword [sym.imp.comdlg32.dll_GetSaveFileNameA]
cmp eax, edi
mov dword [esp + 0xb4], edi
je 0x4171da
mov ecx, dword [0x45c050]
lea edx, [esp + 0x21c]
test edx, edx
mov dword [esp + 0x1c], ecx
je 0x4169cc
lea eax, [esp + 0x21c]
shr eax, 0x10
jne 0x41698f
xor eax, eax
lea ecx, [esp + 0x21c]
mov ax, cx
lea ecx, [esp + 0x1c]
push eax
call fcn.00427770
jmp 0x4169cc
lea edx, [esp + 0x21c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
cmp esi, edi
je 0x4169cc
push esi
lea ecx, [esp + 0x20]
call fcn.00425830
test eax, eax
je 0x4169cc
mov edi, dword [esp + 0x1c]
mov ecx, esi
mov eax, ecx
lea esi, [esp + 0x21c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [ebp + 0xad0]
lea ebx, [ebp + 0xad0]
mov ebp, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x1004
push ecx
mov byte [esp + 0x438], 1
mov dword [esp + 0x84], ebx
call ebp
mov edx, dword [ebx]
push 0
push 0
push 0x101f
push edx
mov dword [esp + 0x70], eax
call ebp
push 0
push 0
push 0x1200
push eax
call ebp
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x1c]
push 0x45c7f8
push eax
call fcn.00445c56
add esp, 8
mov dword [esp + 0x20], eax
test eax, eax
je 0x4171c9
push ecx
mov ecx, dword [0x45c050]
mov edi, esp
mov edx, str.000000
test edx, edx
mov dword [esp + 0x28], esp
mov dword [edi], ecx
je 0x416a9d
mov eax, edx
shr eax, 0x10
jne 0x416a69
xor eax, eax
mov ecx, edx
mov ax, cx
mov ecx, edi
push eax
call fcn.00427770
jmp 0x416a9d
push str.000000
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
test esi, esi
je 0x416a9d
push esi
mov ecx, edi
call fcn.00425830
test eax, eax
je 0x416a9d
mov edi, dword [edi]
mov ecx, esi
mov edx, ecx
mov esi, str.000000
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x24]
push eax
call fcn.00430280
mov cl, byte [esp + 0x1f]
xor esi, esi
add esp, 8
mov byte [esp + 0x30], cl
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], esi
mov dl, byte [esp + 0x17]
mov dword [esp + 0x44], esi
mov byte [esp + 0x40], dl
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov al, byte [esp + 0x17]
mov dword [esp + 0x68], esi
mov byte [esp + 0x64], al
mov dword [esp + 0x6c], esi
mov dword [esp + 0x70], esi
mov cl, byte [esp + 0x17]
mov dword [esp + 0x54], esi
mov byte [esp + 0x50], cl
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov eax, dword [esp + 0x2c]
mov byte [esp + 0x428], 5
cmp eax, esi
mov dword [esp + 0x18], esi
jle 0x416e61
jmp 0x416b18
xor esi, esi
mov ecx, 0x3f
xor eax, eax
lea edi, [esp + 0x321]
mov byte [esp + 0x320], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov eax, dword [ebx]
push esi
push esi
lea edx, [esp + 0x328]
push 0x101f
push eax
mov dword [esp + 0x94], 2
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa4], 0x100
call ebp
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x84]
push ecx
push edx
push 0x1203
push eax
call ebp
mov eax, dword [esp + 0x8c]
mov ecx, dword [0x45c050]
test eax, eax
mov esi, eax
mov dword [esp + 0x10], ecx
je 0x416bd6
mov edx, eax
shr edx, 0x10
jne 0x416ba7
and eax, 0xffff
lea ecx, [esp + 0x10]
push eax
call fcn.00427770
jmp 0x416bd6
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
test edi, edi
je 0x416bd6
push edi
lea ecx, [esp + 0x14]
call fcn.00425830
test eax, eax
je 0x416bd6
mov ecx, edi
mov edi, dword [esp + 0x10]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edx, dword [esp + 0x38]
lea ecx, [esp + 0x10]
push ecx
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x430], 6
call fcn.0042b2a0
mov eax, dword [esp + 0x10]
mov edx, dword [0x45c054]
mov byte [esp + 0x428], 5
lea ecx, [eax - 0xc]
cmp ecx, edx
je 0x416c28
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x416c28
mov edx, dword [esp + 0x10]
lea eax, [edx - 0xc]
push eax
call fcn.004447ea
add esp, 4
mov eax, dword [0x45c050]
mov ecx, 0x45c7ec
test ecx, ecx
mov dword [esp + 0x10], eax
je 0x416c8a
mov edx, ecx
shr edx, 0x10
jne 0x416c52
xor eax, eax
mov ax, cx
lea ecx, [esp + 0x10]
push eax
call fcn.00427770
jmp 0x416c8a
push 0x45c7ec
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
test esi, esi
je 0x416c8a
push esi
lea ecx, [esp + 0x14]
call fcn.00425830
test eax, eax
je 0x416c8a
mov edi, dword [esp + 0x10]
mov ecx, esi
mov edx, ecx
mov esi, 0x45c7ec
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x48]
lea eax, [esp + 0x10]
push eax
push ecx
lea ecx, [esp + 0x48]
mov byte [esp + 0x430], 7
call fcn.0042b2a0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x45c054]
mov byte [esp + 0x428], 5
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x416cdc
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x416cdc
mov eax, dword [esp + 0x10]
add eax, 0xfffffff4
push eax
call fcn.004447ea
add esp, 4
mov ecx, dword [0x45c050]
mov edx, str.FFFFFF
test edx, edx
mov dword [esp + 0x10], ecx
je 0x416d41
mov eax, edx
shr eax, 0x10
jne 0x416d09
xor eax, eax
mov ecx, edx
mov ax, cx
lea ecx, [esp + 0x10]
push eax
call fcn.00427770
jmp 0x416d41
push str.FFFFFF
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
test esi, esi
je 0x416d41
push esi
lea ecx, [esp + 0x14]
call fcn.00425830
test eax, eax
je 0x416d41
mov edi, dword [esp + 0x10]
mov ecx, esi
mov edx, ecx
mov esi, str.FFFFFF
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x10]
push eax
push ecx
lea ecx, [esp + 0x6c]
mov byte [esp + 0x430], 8
call fcn.0042b2a0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x45c054]
mov byte [esp + 0x428], 5
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x416d93
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x416d93
mov eax, dword [esp + 0x10]
add eax, 0xfffffff4
push eax
call fcn.004447ea
add esp, 4
mov ecx, dword [0x45c050]
mov edx, str.0066FF
test edx, edx
mov dword [esp + 0x10], ecx
je 0x416df8
mov eax, edx
shr eax, 0x10
jne 0x416dc0
xor eax, eax
mov ecx, edx
mov ax, cx
lea ecx, [esp + 0x10]
push eax
call fcn.00427770
jmp 0x416df8
push str.0066FF
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
test esi, esi
je 0x416df8
push esi
lea ecx, [esp + 0x14]
call fcn.00425830
test eax, eax
je 0x416df8
mov edi, dword [esp + 0x10]
mov ecx, esi
mov edx, ecx
mov esi, str.0066FF
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x58]
lea eax, [esp + 0x10]
push eax
push ecx
lea ecx, [esp + 0x58]
mov byte [esp + 0x430], 9
call fcn.0042b2a0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x45c054]
mov byte [esp + 0x428], 5
lea edx, [eax - 0xc]
cmp edx, ecx
je 0x416e4a
add eax, 0xfffffff4
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jg 0x416e4a
mov eax, dword [esp + 0x10]
add eax, 0xfffffff4
push eax
call fcn.004447ea
add esp, 4
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x2c]
inc eax
cmp eax, ecx
mov dword [esp + 0x18], eax
jl 0x416b16
xor esi, esi
push ecx
mov ecx, dword [0x45c050]
mov edi, esp
mov edx, str.font_size:_8pt
test edx, edx
mov dword [esp + 0x28], esp
mov dword [edi], ecx
je 0x416ec7
mov eax, edx
shr eax, 0x10
jne 0x416e91
xor eax, eax
mov ecx, edx
mov ax, cx
mov ecx, edi
push eax
call fcn.00427770
jmp 0x416ec7
push str.font_size:_8pt
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
test esi, esi
je 0x416ec5
push esi
mov ecx, edi
call fcn.00425830
test eax, eax
je 0x416ec5
mov edi, dword [edi]
mov ecx, esi
mov edx, ecx
mov esi, str.font_size:_8pt
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
xor esi, esi
push ecx
mov byte [esp + 0x430], 0xa
mov ecx, esp
mov dword [esp + 0x30], esp
push str.Tahoma
call fcn.00425b80
sub esp, 0x10
lea eax, [esp + 0x68]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
mov byte [esp + 0x444], 0xb
call fcn.004249d0
sub esp, 0x10
lea edx, [esp + 0x8c]
mov ecx, esp
mov dword [esp + 0x38], esp
push edx
mov byte [esp + 0x454], 0xc
call fcn.004249d0
mov edi, dword [esp + 0x48]
lea eax, [esp + 0x68]
lea ecx, [esp + 0x58]
push eax
push ecx
push edi
mov byte [esp + 0x45c], 5
call fcn.00430760
mov eax, dword [esp + 0x94]
add esp, 0x34
xor ebp, ebp
cmp eax, esi
jle 0x417176
mov bl, 0xe
mov edx, dword [0x45c050]
mov eax, str.FFFFFF
test eax, eax
mov dword [esp + 0x10], edx
je 0x416fb3
mov ecx, eax
shr ecx, 0x10
jne 0x416f7b
xor eax, eax
mov edx, str.FFFFFF
mov ax, dx
lea ecx, [esp + 0x10]
push eax
call fcn.00427770
jmp 0x416fb3
push str.FFFFFF
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, eax
test esi, esi
je 0x416fb3
push esi
lea ecx, [esp + 0x14]
call fcn.00425830
test eax, eax
je 0x416fb3
mov edi, dword [esp + 0x10]
mov ecx, esi
mov eax, ecx
mov esi, str.FFFFFF
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push str.000000
lea ecx, [esp + 0x28]
mov byte [esp + 0x42c], 0xd
call fcn.00425b80
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
push ecx
push edx
lea ecx, [esp + 0x38]
mov byte [esp + 0x430], bl
call fcn.0042b430
lea ecx, [esp + 0x40]
call fcn.00424c90
lea ecx, [esp + 0x64]
call fcn.00424c90
lea ecx, [esp + 0x50]
call fcn.00424c90
mov edi, dword [esp + 0x2c]
xor esi, esi
test edi, edi
jle 0x4170b9
mov eax, dword [0x45c050]
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x428], 0xf
push ecx
mov ecx, dword [esp + 0x78]
push esi
push ebp
call fcn.00424530
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x18]
push edx
push eax
lea ecx, [esp + 0x38]
call fcn.0042b2a0
push 0x45c7ec
lea ecx, [esp + 0x2c]
call fcn.00425b80
mov edx, dword [esp + 0x48]
lea ecx, [esp + 0x28]
push ecx
push edx
lea ecx, [esp + 0x48]
mov byte [esp + 0x430], 0x10
call fcn.0042b2a0
lea ecx, [esp + 0x28]
mov byte [esp + 0x428], 0xf
call fcn.00429590
mov ecx, dword [esp + 0x6c]
lea eax, [esp + 0x10]
push eax
push ecx
lea ecx, [esp + 0x6c]
call fcn.0042b2a0
mov eax, dword [esp + 0x58]
lea edx, [esp + 0x24]
push edx
push eax
lea ecx, [esp + 0x58]
call fcn.0042b2a0
lea ecx, [esp + 0x18]
mov byte [esp + 0x428], bl
call fcn.00429590
inc esi
cmp esi, edi
jl 0x41700c
push ecx
mov ecx, esp
mov dword [esp + 0x1c], esp
push str.font_size:_8pt
call fcn.00425b80
push ecx
mov byte [esp + 0x430], 0x11
mov ecx, esp
mov dword [esp + 0x80], esp
push str.Tahoma
call fcn.00425b80
sub esp, 0x10
lea edx, [esp + 0x68]
mov ecx, esp
mov dword [esp + 0x98], esp
push edx
mov byte [esp + 0x444], 0x12
call fcn.004249d0
sub esp, 0x10
lea eax, [esp + 0x8c]
mov ecx, esp
mov dword [esp + 0xa4], esp
push eax
mov byte [esp + 0x454], 0x13
call fcn.004249d0
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x68]
lea edx, [esp + 0x58]
push ecx
push edx
push eax
mov byte [esp + 0x45c], bl
call fcn.00430760
add esp, 0x34
lea ecx, [esp + 0x24]
mov byte [esp + 0x428], 0xd
call fcn.00429590
lea ecx, [esp + 0x10]
mov byte [esp + 0x428], 5
call fcn.00429590
mov eax, dword [esp + 0x60]
inc ebp
cmp ebp, eax
jl 0x416f4b
mov edi, dword [esp + 0x20]
push edi
call fcn.004305d0
push edi
call fcn.00445ba8
add esp, 8
lea ecx, [esp + 0x50]
mov byte [esp + 0x428], 4
call fcn.00424a40
lea ecx, [esp + 0x64]
mov byte [esp + 0x428], 3
call fcn.00424a40
lea ecx, [esp + 0x40]
mov byte [esp + 0x428], 2
call fcn.00424a40
lea ecx, [esp + 0x30]
mov byte [esp + 0x428], 1
call fcn.00424a40
lea ecx, [esp + 0x1c]
mov byte [esp + 0x428], 0
call fcn.00429590
mov ecx, dword [esp + 0x420]
pop edi
pop esi
pop ebp
xor eax, eax
mov dword fs:[0], ecx
pop ebx
add esp, 0x41c
ret 0x10