Function at 0x42a108
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
lea ebp, [esp - 0x6dc]
mov eax, 0x1eac
call fcn.004488f0
mov eax, dword [0x4705d0]
xor eax, ebp
mov dword [ebp + 0x6d8], eax
push ebx
push esi
push edi
push 0x40f
xor esi, esi
lea eax, [ebp + 0x289]
push esi
push eax
mov byte [ebp + 0x288], 0
call fcn.004464f0
push 7
xor eax, eax
pop ecx
mov byte [ebp + 0x6b8], 0
lea edi, [ebp + 0x6b9]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
push 7
pop ecx
xor eax, eax
mov byte [ebp + 0x698], 0
lea edi, [ebp + 0x699]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ebx, 0x103
push ebx
stosb byte es:[edi], al
lea eax, [ebp + 0x85]
push esi
push eax
mov byte [ebp + 0x84], 0
call fcn.004464f0
mov edi, 0x7fc
push edi
lea eax, [ebp - 0x7cc]
push esi
push eax
mov dword [ebp - 0x7d0], esi
call fcn.004464f0
push 0xff
lea eax, [ebp + 0x189]
push esi
push eax
mov byte [ebp + 0x188], 0
call fcn.004464f0
push edi
lea eax, [ebp - 0xfcc]
push esi
push eax
mov dword [ebp + 0x78], esi
mov dword [ebp + 0x74], esi
mov dword [ebp + 0x50], esi
mov dword [ebp + 0x58], esi
mov dword [ebp - 0xfd0], esi
call fcn.004464f0
push edi
lea eax, [ebp - 0x17cc]
push esi
push eax
mov dword [ebp - 0x17d0], esi
call fcn.004464f0
xor eax, eax
mov word [ebp + 0x40], ax
lea edi, [ebp + 0x42]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
add esp, 0x48
xor eax, eax
mov word [ebp + 0x30], ax
lea edi, [ebp + 0x32]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp + 0x64], esi
mov dword [ebp + 0x6c], esi
mov dword [ebp + 0x60], esi
mov esi, dword [ebp + 0x6e4]
stosw word es:[edi], ax
mov edi, dword [ebp + 0x6e8]
imul edi, edi, 0xf54
lea esi, [esi*4 + 0x473bec]
mov eax, dword [esi]
add eax, edi
push str.Registry
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42a603
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x364]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
mov eax, dword [esi]
add eax, edi
push str.Read
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a389
push dword [0x4775e4]
xor ebx, ebx
push ebx
push ebx
push ebx
push 1
call fcn.0044129f
add esp, 0x14
cmp eax, 1
jge 0x42a2b6
mov eax, dword [0x473bbc]
cmp eax, ebx
je 0x42d8f3
push str.Registry_Key_does_not_exist__or_is_inaccessible
jmp 0x42d8ec
cmp dword [0x477600], 4
jne 0x42a316
push dword [0x4775e4]
lea eax, [ebp + 0x64]
push 4
push eax
push ebx
push 3
mov dword [ebp + 0x64], ebx
call fcn.0044129f
push dword [ebp + 0x64]
lea eax, [ebp + 0x288]
push 0x45f8e4
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x20
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
lea eax, [ebp + 0x288]
push eax
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
jmp 0x42a381
lea esi, [eax + eax]
lea ecx, [esi + 0x100]
mov eax, 0x1000
cmp ecx, eax
jle 0x42a32a
mov eax, ecx
push 1
push eax
call fcn.004462a8
mov edi, eax
pop ecx
pop ecx
cmp edi, ebx
je 0x42d8f3
push dword [0x4775e4]
push esi
push edi
push ebx
push 3
call fcn.0044129f
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
add esp, 0x14
push edi
mov ebx, eax
call esi
cmp ebx, eax
jle 0x42a364
mov eax, ebx
jmp 0x42a367
push edi
call esi
push eax
push edi
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
push edi
call fcn.00445e06
pop ecx
xor eax, eax
inc eax
jmp 0x42d8f5
mov eax, dword [esi]
add eax, edi
push str.Write
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a528
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, ebx
jle 0x42a3b7
mov eax, ebx
jmp 0x42a3c4
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
cmp byte [eax], 0
je 0x42a4c3
push str.Task
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42a4c3
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.DWORD
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42a4fc
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.EXPAND
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a489
push 2
pop esi
lea eax, [ebp + 0x288]
push eax
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
xor ecx, ecx
cmp esi, 3
setne cl
add eax, ecx
push eax
push dword [0x4775e4]
push esi
push 2
call fcn.0044129f
add esp, 0x14
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
jmp 0x42d8f5
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.BINARY
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a4a4
push 3
jmp 0x42a44b
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.MULTI_SZ
push eax
call fcn.004010ff
mov esi, eax
neg esi
sbb esi, esi
pop ecx
and esi, 6
pop ecx
inc esi
jmp 0x42a44c
mov eax, dword [0x4775e4]
test eax, eax
je 0x42a4ee
push str.0123456789_
push eax
call fcn.004481e0
pop ecx
pop ecx
push dword [0x4775e4]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp esi, eax
sbb eax, eax
inc eax
jmp 0x42a4f0
xor eax, eax
test eax, eax
jne 0x42a4fc
xor esi, esi
inc esi
jmp 0x42a44c
push dword [0x4775e4]
call fcn.0040109c
mov dword [ebp + 0x64], eax
lea eax, [ebp + 0x288]
push eax
push 4
lea eax, [ebp + 0x64]
push eax
push 4
push 2
call fcn.0044129f
add esp, 0x18
jmp 0x42a47b
mov eax, dword [esi]
add eax, edi
push str.Copy
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a5ad
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, ebx
jle 0x42a552
mov eax, ebx
jmp 0x42a55f
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push eax
call fcn.00441b6a
xor ecx, ecx
cmp eax, 1
setge cl
jmp 0x42a482
mov eax, dword [esi]
add eax, edi
push str.Delete
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42d8f3
mov eax, dword [0x4775e4]
xor edx, edx
cmp eax, edx
je 0x42a5ec
mov cl, byte [eax]
test cl, cl
je 0x42a5ec
cmp cl, 0x5c
je 0x42a5ec
push eax
push edx
push edx
push edx
push 4
call fcn.0044129f
add esp, 0x14
jmp 0x42a5a0
mov eax, dword [0x473bbc]
cmp eax, edx
je 0x42d8f3
push str.Unable_to_delete_registry_root_key_
jmp 0x42d8ec
add eax, edi
push str._INI
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42a8e7
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x364]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, ebx
jle 0x42a64e
mov eax, ebx
jmp 0x42a65b
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x468]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, ebx
jle 0x42a6a3
mov eax, ebx
jmp 0x42a6b0
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x38c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
cmp byte [ebp + 0x38c], 0x5b
jne 0x42a704
lea eax, [ebp + 0x38d]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
test eax, eax
jle 0x42a704
lea eax, [ebp + 0x38d]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
lea eax, [ebp + 0x38d]
push eax
lea eax, [ebp + 0x38c]
push eax
call fcn.00446570
add esp, 0xc
lea eax, [ebp + 0x38c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp byte [ebp + eax + 0x38b], 0x5d
jne 0x42a730
lea eax, [ebp + 0x38c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov byte [ebp + eax + 0x38b], 0
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x56c]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp eax, ebx
jle 0x42a764
mov eax, ebx
jmp 0x42a771
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x490]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
xor ebx, ebx
push ebx
push ebx
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
add eax, edi
push str.Write
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a7db
lea eax, [ebp + 0x288]
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x490]
push eax
lea eax, [ebp + 0x38c]
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
jmp 0x42d8f5
mov eax, dword [esi]
add eax, edi
push str.Delete
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42a85a
lea eax, [edi + eax + 0x58]
push str.Section
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a81a
cmp byte [ebp + 0x38c], bl
je 0x42a81a
lea eax, [ebp + 0x288]
push eax
push ebx
push ebx
jmp 0x42a7c9
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f874
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42d8f3
cmp byte [ebp + 0x38c], bl
je 0x42d8f3
cmp byte [ebp + 0x490], bl
je 0x42d8f3
lea eax, [ebp + 0x288]
push eax
push ebx
jmp 0x42a7c2
add eax, edi
push str.Read
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42d8f3
mov eax, dword [0x4775e4]
cmp eax, ebx
je 0x42a881
push eax
call fcn.00445e06
pop ecx
push 1
push 0x100000
call fcn.004462a8
pop ecx
pop ecx
lea ecx, [ebp + 0x288]
push ecx
push 0xfffff
push eax
mov dword [0x4775e4], eax
push 0x4597fe
lea eax, [ebp + 0x490]
push eax
lea eax, [ebp + 0x38c]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push dword [0x4775e4]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push dword [0x4775e4]
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
mov eax, esi
jmp 0x42d8f5
add eax, edi
push str.ADMINISTRATOR
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42a94b
push 0xe4
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
push str.odbcad32.exe
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
xor esi, esi
inc esi
push esi
push 0
push esi
lea eax, [ebp + 0x288]
push eax
call fcn.00441ec7
test eax, eax
jne 0x42d8f5
push esi
push eax
push esi
push 0x45f844
call fcn.00441ec7
jmp 0x42d8f5
mov eax, dword [esi]
add eax, edi
push str.Data_Source
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42aa27
push 1
push 0x100000
call fcn.004462a8
mov ebx, eax
pop ecx
pop ecx
test ebx, ebx
je 0x42d8f3
push 0xfff00
push ebx
push 0
push 0
call fcn.0041db99
push 0
push 0
push dword [ebp + 0x6e8]
mov dword [ebp + 0x78], eax
mov eax, dword [esi]
push dword [ebp + 0x6e4]
lea eax, [edi + eax + 0x670]
push eax
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42a9ba
push eax
jmp 0x42a9bf
push 0x45b890
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push 0
lea eax, [ebp + 0x288]
push eax
push 0x45b4c0
push ebx
call fcn.0043fa75
cmp byte [ebx], 0
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenA]
je 0x42aa01
lea eax, [ebp + 0x288]
push eax
call esi
mov edi, ebx
push ebx
sub edi, eax
call esi
mov byte [eax + edi], 0
push ebx
call esi
push eax
push ebx
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
push ebx
call fcn.00445e06
mov eax, dword [ebp + 0x78]
pop ecx
inc eax
jmp 0x42d8f5
mov eax, dword [esi]
add eax, edi
push 0x45f834
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42cd91
mov eax, dword [esi]
add eax, edi
push str.Get_Column
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42cd91
mov eax, dword [esi]
add eax, edi
push str.Get_Tables
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42cd91
mov eax, dword [esi]
add eax, edi
push str.FORMAT
push eax
call fcn.004010ff
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
pop ecx
pop ecx
test eax, eax
je 0x42aab1
push 1
push 0x1000
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x80], eax
test eax, eax
je 0x42ab1c
mov eax, dword [esi]
lea eax, [edi + eax + 0x364]
push eax
jmp 0x42ab10
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x364]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call ebx
mov ecx, eax
mov eax, 0x1000
add ecx, eax
cmp ecx, eax
jle 0x42aaf2
push dword [0x4775e4]
call ebx
add eax, 0x1000
push 1
push eax
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x80], eax
test eax, eax
je 0x42d8f3
push dword [0x4775e4]
push dword [ebp + 0x80]
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x468]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call ebx
imul eax, eax, 5
cmp eax, 0x1000
jle 0x42ab5a
push dword [0x4775e4]
call ebx
imul eax, eax, 5
jmp 0x42ab5f
mov eax, 0x1000
push 1
push eax
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
je 0x42d8f3
push dword [0x4775e4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x56c]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call ebx
mov ecx, eax
inc ecx
mov eax, 0xff
cmp ecx, eax
jg 0x42abbd
push dword [0x4775e4]
call ebx
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x188]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
add eax, edi
push str.ENCRYPT
push eax
mov dword [ebp + 0x5c], 1
mov byte [ebp + 0x288], 0
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42ad2a
push 0
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42ad03
mov eax, dword [ebp + 0x80]
cmp byte [eax], 0
je 0x42ad03
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.ASCII
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ac60
push 0x7f
push 0x20
push 1
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.00440571
jmp 0x42ac8d
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f800
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ac99
push 2
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.00414e46
add esp, 0xc
push dword [0x4775e4]
call ebx
mov esi, eax
jmp 0x42acd1
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7fc
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42acce
push dword [0x4775e4]
call ebx
push dword [ebp + 0x80]
mov esi, eax
push esi
push dword [0x4775e4]
call fcn.0044063b
jmp 0x42acd1
mov esi, dword [ebp + 0x78]
inc esi
push esi
push dword [0x4775e4]
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
push dword [ebp + 0x70]
call fcn.00445e06
push dword [ebp + 0x80]
call fcn.00445e06
pop ecx
jmp 0x42a380
push dword [ebp + 0x70]
call fcn.00445e06
cmp dword [ebp + 0x80], 0
pop ecx
je 0x42d8f3
push dword [ebp + 0x80]
call fcn.00445e06
pop ecx
jmp 0x42d8f3
add eax, edi
push str.DECRYPT
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42aec1
push 0
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42ad03
mov eax, dword [ebp + 0x80]
cmp byte [eax], 0
je 0x42ad03
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.ASCII
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ada1
push 0x7f
push 0x20
push 2
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.00440571
jmp 0x42adce
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f800
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42addd
push 1
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.00414e46
add esp, 0xc
push dword [0x4775e4]
call ebx
mov esi, eax
jmp 0x42acd2
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7fc
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42aeb9
mov eax, dword [esi]
mov eax, dword [edi + eax + 0x50]
xor ebx, ebx
cmp eax, ebx
je 0x42ae13
push 0x459858
push eax
call fcn.00445d80
pop ecx
pop ecx
jmp 0x42ae15
xor eax, eax
cmp eax, ebx
je 0x42aeb9
mov eax, dword [esi]
mov edi, dword [edi + eax + 0x50]
cmp byte [edi], 0x25
jne 0x42ae29
inc edi
push edi
lea eax, [ebp + 0x288]
push str.SOFTWARE_vTaskUserVariables_s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
lea eax, [ebp + 0x288]
push eax
push ebx
push ebx
push ebx
push 1
call fcn.0044129f
mov esi, eax
mov eax, dword [0x4775e4]
add esp, 0x20
cmp eax, ebx
je 0x42ae68
push eax
call fcn.00445e06
pop ecx
mov dword [0x4775e4], ebx
lea eax, [esi + 0x100]
mov ecx, 0x1000
cmp eax, ecx
jg 0x42ae79
mov eax, ecx
push 1
push eax
call fcn.004462a8
lea ecx, [ebp + 0x288]
push ecx
push esi
push eax
mov dword [0x4775e4], eax
call fcn.00444468
add esp, 0x14
push dword [ebp + 0x80]
lea eax, [esi - 1]
push eax
push dword [0x4775e4]
call fcn.0044063b
mov eax, dword [0x4775e4]
mov byte [eax + esi], bl
jmp 0x42acd2
mov esi, dword [ebp + 0x78]
jmp 0x42acd2
add eax, edi
push str.SORT
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42b05b
push 0
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Column
push eax
call fcn.004010ff
mov ebx, eax
mov eax, dword [esi]
neg ebx
lea eax, [edi + eax + 0x58]
sbb ebx, ebx
push 0x45f7e0
push eax
neg ebx
call fcn.004010ff
add esp, 0x10
test eax, eax
je 0x42af54
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Short
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42af54
push ebx
push dword [ebp + 0x80]
push dword [0x4775e4]
push 2
call fcn.0044467e
jmp 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7e0
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42af93
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Long
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42af93
push ebx
push dword [ebp + 0x80]
push dword [0x4775e4]
push 3
jmp 0x42af4a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Char
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42afe2
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7cc
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42afe2
push 1
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push dword [0x4775e4]
push 0
call fcn.0043f87b
jmp 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Char
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b029
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7c8
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b029
push 1
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push dword [0x4775e4]
push 1
jmp 0x42afd8
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7c4
push eax
call fcn.004010ff
pop ecx
pop ecx
push ebx
push dword [ebp + 0x80]
push dword [0x4775e4]
test eax, eax
je 0x42b054
push 1
jmp 0x42af4a
push 0
jmp 0x42af4a
add eax, edi
push str.BINARY
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42b35c
xor ebx, ebx
push ebx
push ebx
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
lea eax, [ebp + 0x6c]
push eax
mov eax, dword [esi]
push ebx
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7e0
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b0c8
push dword [ebp + 0x6c]
jmp 0x42b5da
mov eax, dword [esi]
mov ebx, str.Convert
lea eax, [edi + eax + 0x58]
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b1c6
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7b8
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b1c6
mov eax, dword [0x4775e4]
test eax, eax
je 0x42b111
push eax
call fcn.00446205
pop ecx
jmp 0x42b113
xor eax, eax
imul eax, eax, 6
push eax
push dword [0x4775e4]
call fcn.00401000
pop ecx
pop ecx
mov dword [0x4775e4], eax
xor ebx, ebx
jmp 0x42b1b5
cmp ebx, dword [ebp + 0x6c]
jge 0x42b1bd
mov cl, byte [eax + ebx]
cmp cl, 0x20
jb 0x42b146
cmp cl, 0x7e
jbe 0x42b1b4
movzx eax, cl
push eax
lea eax, [ebp + 0x288]
push str._02X
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
mov eax, dword [0x4775e4]
lea ecx, [eax + ebx]
lea edx, [ecx + 4]
add esp, 0xc
mov dword [ebp + 0x68], edx
test edx, edx
je 0x42b18f
test ecx, ecx
je 0x42b18f
mov edx, dword [ebp + 0x6c]
sub edx, ebx
inc edx
je 0x42b18f
push edx
push ecx
push dword [ebp + 0x68]
call fcn.00446570
mov eax, dword [0x4775e4]
add esp, 0xc
lea ecx, [eax + ebx]
test ecx, ecx
je 0x42b1ad
push 5
lea eax, [ebp + 0x288]
push eax
push ecx
call fcn.00445ea0
mov eax, dword [0x4775e4]
add esp, 0xc
add dword [ebp + 0x6c], 4
add ebx, 4
inc ebx
test eax, eax
jne 0x42b130
mov byte [eax + ebx], 0
jmp 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b2ce
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f7ac
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b2ce
mov eax, dword [0x4775e4]
test eax, eax
je 0x42b20a
push eax
call fcn.00446205
pop ecx
jmp 0x42b20c
xor eax, eax
imul eax, eax, 3
push eax
push dword [0x4775e4]
call fcn.00401000
pop ecx
pop ecx
mov dword [0x4775e4], eax
test eax, eax
jne 0x42b2ba
and dword [ebp + 0x6c], eax
and dword [ebp + 0x74], eax
xor ebx, ebx
cmp dword [ebp + 0x6c], ebx
jle 0x42b1bd
mov ecx, dword [ebp + 0x74]
cmp dword [ebp + 0x6c], ecx
jge 0x42b1bd
movzx eax, byte [eax + ebx]
push eax
lea eax, [ebp + 0x288]
push 0x45f7a4
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
mov eax, dword [0x4775e4]
lea ecx, [eax + ebx]
lea edx, [ecx + 1]
add esp, 0xc
mov dword [ebp + 0x68], edx
test edx, edx
je 0x42b28d
test ecx, ecx
je 0x42b28d
mov edx, dword [ebp + 0x6c]
sub edx, ebx
inc edx
je 0x42b28d
push edx
push ecx
push dword [ebp + 0x68]
call fcn.00446570
mov eax, dword [0x4775e4]
add esp, 0xc
lea ecx, [eax + ebx]
test ecx, ecx
je 0x42b2ab
push 2
lea eax, [ebp + 0x288]
push eax
push ecx
call fcn.00445ea0
mov eax, dword [0x4775e4]
add esp, 0xc
inc dword [ebp + 0x6c]
inc ebx
inc ebx
cmp ebx, dword [ebp + 0x6c]
jl 0x42b237
jmp 0x42b1bd
push eax
call fcn.00446205
mov dword [ebp + 0x74], eax
mov eax, dword [0x4775e4]
pop ecx
jmp 0x42b230
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.ASCII
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cc3a
xor ebx, ebx
cmp dword [ebp + 0x6c], ebx
jle 0x42b352
mov eax, dword [0x4775e4]
add eax, ebx
mov cl, byte [eax]
cmp cl, 9
je 0x42b34c
cmp cl, 0xd
je 0x42b34c
cmp cl, 0xa
je 0x42b34c
cmp cl, 0x20
jl 0x42b329
cmp cl, 0x7f
jle 0x42b34c
test eax, eax
je 0x42b347
lea edx, [eax + 1]
test edx, edx
je 0x42b347
mov ecx, dword [ebp + 0x6c]
sub ecx, ebx
inc ecx
je 0x42b347
push ecx
push edx
push eax
call fcn.00446570
add esp, 0xc
dec dword [ebp + 0x6c]
jmp 0x42b34d
inc ebx
cmp ebx, dword [ebp + 0x6c]
jl 0x42b307
mov eax, dword [0x4775e4]
jmp 0x42b1bd
add eax, edi
push str.LENGTH
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b399
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
push dword [ebp + 0x64]
push 0x45aac0
jmp 0x42b5df
mov eax, dword [esi]
add eax, edi
push str.COUNT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b477
lea eax, [ebp + 0x6c]
push eax
mov eax, dword [esi]
xor ebx, ebx
push ebx
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x364]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
mov eax, 0x3ff
cmp dword [ebp + 0x6c], eax
ja 0x42b3e1
mov eax, dword [ebp + 0x6c]
push eax
push dword [0x4775e4]
push dword [ebp + 0x80]
call fcn.00445ea0
add esp, 0xc
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push ebx
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.SENSITIVE
push eax
call fcn.004010ff
pop ecx
neg eax
pop ecx
sbb eax, eax
neg eax
push eax
push dword [ebp + 0x6c]
push dword [ebp + 0x80]
push dword [ebp + 0x64]
push dword [0x4775e4]
call fcn.0043f9e2
push eax
lea eax, [ebp + 0x288]
push 0x45aac0
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
cmp dword [0x4775e4], ebx
je 0x42cc3a
lea eax, [ebp + 0x288]
push eax
push dword [0x4775e4]
jmp 0x42c75e
mov eax, dword [esi]
add eax, edi
push str.FIND
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b692
mov eax, dword [esi]
add eax, edi
push str.FIND_TEXT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42b692
push dword [ebp + 0x70]
call fcn.0040109c
cmp eax, 1
pop ecx
jge 0x42b4bc
xor eax, eax
inc eax
jmp 0x42b4c5
push dword [ebp + 0x70]
call fcn.0040109c
pop ecx
lea ebx, [eax - 1]
lea eax, [ebp + 0x188]
push eax
call fcn.004464e4
pop ecx
mov dword [ebp + 0x7c], eax
test eax, eax
jle 0x42b4e0
cmp eax, ebx
jge 0x42b50c
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.BINARY
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b5f0
lea eax, [ebp + 0x6c]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x364]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [ebp + 0x6c]
push dword [0x4775e4]
push dword [ebp + 0x80]
call fcn.00445ea0
add esp, 0xc
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
lea eax, [ebp + 0x188]
push eax
call fcn.004464e4
pop ecx
mov dword [ebp + 0x7c], eax
test eax, eax
jle 0x42b594
cmp ebx, eax
jle 0x42b59c
mov eax, dword [ebp + 0x64]
mov dword [ebp + 0x7c], eax
cmp ebx, eax
jge 0x42b5d7
mov eax, dword [0x4775e4]
mov ecx, dword [ebp + 0x80]
mov cl, byte [ecx]
add eax, ebx
cmp cl, byte [eax]
jne 0x42b5c7
push dword [ebp + 0x6c]
push dword [ebp + 0x80]
push eax
call fcn.004468e5
add esp, 0xc
test eax, eax
je 0x42b5cd
inc ebx
cmp ebx, dword [ebp + 0x7c]
jl 0x42b59e
cmp ebx, dword [ebp + 0x7c]
jge 0x42b5d7
lea eax, [ebx + 1]
jmp 0x42b5d9
xor eax, eax
push eax
push 0x45aabc
push dword [0x4775e4]
call dword [sym.imp.USER32.dll_wsprintfA]
jmp 0x42c0e5
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str._SENSITIVE
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [0x4775e4]
pop ecx
je 0x42b647
add ebx, eax
xor eax, eax
cmp ebx, eax
je 0x42b657
cmp dword [ebp + 0x80], eax
je 0x42b657
push dword [ebp + 0x80]
push ebx
call fcn.00445d80
jmp 0x42b655
push dword [ebp + 0x80]
add eax, ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b67b
mov ecx, dword [ebp + 0x7c]
mov edx, dword [0x4775e4]
add ecx, edx
cmp eax, ecx
jae 0x42b67b
mov ecx, edx
sub eax, ecx
inc eax
push eax
push 0x45aabc
push ecx
jmp 0x42b5e5
cmp dword [0x4775e4], 0
je 0x42cc3a
push 0x45b754
jmp 0x42b46c
mov eax, dword [esi]
add eax, edi
push 0x45f764
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b7a3
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ebx, eax
inc ebx
lea eax, [ebx + 0x100]
cmp eax, 0x1000
jg 0x42b6e9
mov eax, 0x1000
push 1
push eax
call fcn.004462a8
pop ecx
pop ecx
push dword [ebp + 0x70]
mov dword [ebp + 0x74], eax
test eax, eax
je 0x42ad06
call fcn.0040109c
dec eax
pop ecx
jns 0x42b710
and dword [ebp + 0x68], 0
jmp 0x42b71d
push dword [ebp + 0x70]
call fcn.0040109c
dec eax
pop ecx
mov dword [ebp + 0x68], eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Quote
push eax
call fcn.004010ff
neg eax
pop ecx
sbb eax, eax
pop ecx
neg eax
push eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Sensi
push eax
call fcn.004010ff
pop ecx
pop ecx
neg eax
sbb eax, eax
neg eax
push eax
push ebx
push dword [ebp + 0x74]
push dword [ebp + 0x68]
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.004432d3
push dword [ebp + 0x74]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp ebx, eax
jge 0x42b77b
mov eax, ebx
jmp 0x42b785
push dword [ebp + 0x74]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push dword [ebp + 0x74]
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push dword [ebp + 0x74]
call fcn.00445e06
pop ecx
jmp 0x42cc3a
mov eax, dword [esi]
add eax, edi
push 0x45f750
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b8a9
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
push dword [0x4775e4]
call ebx
push dword [ebp + 0x70]
mov dword [ebp + 0x7c], eax
call fcn.0040109c
dec eax
pop ecx
jns 0x42b7f4
xor ebx, ebx
jmp 0x42b814
push dword [ebp + 0x70]
call fcn.0040109c
dec eax
cmp eax, dword [ebp + 0x7c]
pop ecx
jle 0x42b808
mov ebx, dword [ebp + 0x7c]
jmp 0x42b814
push dword [ebp + 0x70]
call fcn.0040109c
mov ebx, eax
pop ecx
dec ebx
push dword [ebp + 0x80]
call fcn.0040109c
pop ecx
test eax, eax
jge 0x42b82a
and dword [ebp + 0x74], 0
jmp 0x42b857
mov eax, dword [ebp + 0x7c]
push dword [ebp + 0x80]
sub eax, ebx
mov dword [ebp + 0x68], eax
call fcn.0040109c
cmp eax, dword [ebp + 0x68]
pop ecx
jle 0x42b848
mov eax, dword [ebp + 0x68]
jmp 0x42b854
push dword [ebp + 0x80]
call fcn.0040109c
pop ecx
mov dword [ebp + 0x74], eax
mov eax, dword [0x4775e4]
test eax, eax
je 0x42b88d
add ebx, eax
je 0x42b88d
mov edx, dword [ebp + 0x74]
mov ecx, dword [ebp + 0x7c]
cmp ecx, edx
jl 0x42b870
mov ecx, edx
test ecx, ecx
jle 0x42b88d
mov ecx, dword [ebp + 0x7c]
cmp ecx, edx
jl 0x42b87d
mov ecx, edx
push ecx
push ebx
push eax
call fcn.00445ea0
mov eax, dword [0x4775e4]
add esp, 0xc
mov ecx, dword [ebp + 0x74]
test ecx, ecx
jge 0x42b898
xor ecx, ecx
jmp 0x42b8a0
cmp ecx, dword [ebp + 0x7c]
jle 0x42b8a0
mov ecx, dword [ebp + 0x7c]
mov byte [ecx + eax], 0
jmp 0x42cc3a
mov eax, dword [esi]
add eax, edi
push str.CHOP
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b9af
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
mov ebx, str.Before
lea eax, [edi + eax + 0x58]
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b926
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Including
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b926
push 0xa
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.0043fbb2
jmp 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b93d
push 9
jmp 0x42b910
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.First
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b958
push 5
jmp 0x42b910
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Last
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b973
push 6
jmp 0x42b910
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.After
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42b9a8
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Including
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42b9a8
push 4
jmp 0x42b910
push 0
jmp 0x42b910
mov eax, dword [esi]
add eax, edi
push str.INSERT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ba58
lea eax, [ebp + 0x64]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [0x4775e4]
test eax, eax
je 0x42b9f9
push eax
call fcn.00446205
pop ecx
mov ebx, eax
jmp 0x42b9fb
xor ebx, ebx
push dword [ebp + 0x70]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
lea eax, [eax + ebx + 0x100]
push eax
push dword [0x4775e4]
call fcn.00401000
mov ebx, eax
pop ecx
pop ecx
mov dword [0x4775e4], ebx
test ebx, ebx
je 0x42ad03
push dword [ebp + 0x80]
call fcn.0040109c
dec eax
pop ecx
jns 0x42ba3c
xor eax, eax
jmp 0x42ba49
push dword [ebp + 0x80]
call fcn.0040109c
pop ecx
dec eax
push dword [ebp + 0x70]
push eax
push ebx
call fcn.0043feaa
jmp 0x42cc3a
mov eax, dword [esi]
mov ebx, str.REPLACE
push ebx
add eax, edi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x42bcca
lea eax, [ebp + 0x74]
push eax
mov eax, dword [esi]
xor ebx, ebx
push ebx
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x364]
push dword [ebp + 0x6e4]
mov dword [ebp + 0x74], ebx
push eax
mov dword [ebp + 0x7c], ebx
call fcn.00439ea7
cmp dword [ebp + 0x80], ebx
je 0x42baad
push dword [ebp + 0x80]
call fcn.00445e06
pop ecx
mov eax, dword [ebp + 0x74]
add eax, 0x100
mov ebx, 0x1000
cmp eax, ebx
ja 0x42bac0
mov eax, ebx
push 1
push eax
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x80], eax
test eax, eax
je 0x42d8f3
push dword [ebp + 0x74]
push dword [0x4775e4]
push eax
call fcn.00445ea0
add esp, 0xc
lea eax, [ebp + 0x7c]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x468]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [ebp + 0x70]
call fcn.00445e06
mov eax, dword [ebp + 0x7c]
add eax, 0x100
pop ecx
cmp eax, ebx
ja 0x42bb22
mov eax, ebx
xor ebx, ebx
inc ebx
push ebx
push eax
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x70], eax
test eax, eax
je 0x42d8f3
push dword [ebp + 0x7c]
push dword [0x4775e4]
push eax
call fcn.00445ea0
add esp, 0xc
lea eax, [ebp + 0x60]
push eax
mov eax, dword [esi]
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.CASE_SENSITIVE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42bb9b
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.BINARY
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42bb9b
and dword [ebp + 0x68], eax
jmp 0x42bb9e
mov dword [ebp + 0x68], ebx
mov ecx, dword [ebp + 0x74]
xor ebx, ebx
cmp ecx, dword [ebp + 0x60]
ja 0x42cc3a
cmp dword [ebp + 0x68], 1
mov eax, dword [0x4775e4]
jne 0x42bbc8
push ecx
push dword [ebp + 0x80]
add eax, ebx
push eax
call fcn.004468e5
jmp 0x42bbd9
add eax, ebx
je 0x42bbde
push ecx
push dword [ebp + 0x80]
push eax
call fcn.00446461
add esp, 0xc
jmp 0x42bbe1
xor eax, eax
inc eax
test eax, eax
jne 0x42bcb5
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x60]
lea eax, [eax + ecx + 0x1000]
push eax
push dword [0x4775e4]
call fcn.00401000
pop ecx
pop ecx
mov dword [0x4775e4], eax
test eax, eax
je 0x42d8f3
lea ecx, [ebx + eax]
mov dword [ebp + 0x54], ecx
test ecx, ecx
je 0x42bc44
mov ecx, dword [ebp + 0x74]
add ecx, ebx
lea edx, [ecx + eax]
test edx, edx
je 0x42bc44
mov ecx, dword [ebp + 0x60]
sub ecx, dword [ebp + 0x74]
sub ecx, ebx
inc ecx
je 0x42bc44
push ecx
push edx
push dword [ebp + 0x54]
call fcn.00445ea0
mov eax, dword [0x4775e4]
add esp, 0xc
mov ecx, dword [ebp + 0x7c]
add ecx, ebx
add ecx, eax
mov dword [ebp + 0x54], ecx
je 0x42bc74
lea edx, [ebx + eax]
test edx, edx
je 0x42bc74
mov ecx, dword [ebp + 0x60]
sub ecx, dword [ebp + 0x74]
sub ecx, ebx
inc ecx
je 0x42bc74
push ecx
push edx
push dword [ebp + 0x54]
call fcn.00445ea0
mov eax, dword [0x4775e4]
add esp, 0xc
add eax, ebx
je 0x42bc8d
cmp dword [ebp + 0x7c], 0
jbe 0x42bc8d
push dword [ebp + 0x7c]
push dword [ebp + 0x70]
push eax
call fcn.00445ea0
add esp, 0xc
mov eax, dword [ebp + 0x7c]
sub eax, dword [ebp + 0x74]
add ebx, dword [ebp + 0x7c]
add dword [ebp + 0x60], eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.FIRST
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42bcb6
mov ebx, dword [ebp + 0x60]
jmp 0x42bcb6
inc ebx
mov ecx, dword [ebp + 0x74]
lea eax, [ecx + ebx]
cmp eax, dword [ebp + 0x60]
jbe 0x42bbac
jmp 0x42cc3a
mov eax, dword [esi]
add eax, edi
push str.RANDOM_TEXT
push eax
call fcn.004010ff
pop ecx
test eax, eax
lea eax, [ebp + 0x64]
pop ecx
push eax
mov eax, dword [esi]
je 0x42bec2
xor ebx, ebx
push ebx
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
push ebx
push ebx
push 0x4597fe
push str.__r_n
lea eax, [edi + eax + 0x58]
push eax
call fcn.0043fa75
mov ebx, dword [0x4775e4]
push ebx
call fcn.0040109c
pop ecx
mov ecx, SysReAllocString
cmp eax, ecx
jle 0x42bd36
mov ebx, ecx
mov dword [ebp + 0x7c], ebx
jmp 0x42bd42
push ebx
call fcn.0040109c
pop ecx
mov dword [ebp + 0x7c], eax
mov ebx, eax
call fcn.00413d0d
shr eax, 1
cmp eax, ebx
jae 0x42bd59
call fcn.00413d0d
mov ebx, eax
shr ebx, 1
mov dword [ebp + 0x7c], ebx
lea eax, [ebx + 0x100]
push eax
push dword [0x4775e4]
call fcn.00401000
pop ecx
pop ecx
mov dword [0x4775e4], eax
test eax, eax
je 0x42ad03
and dword [ebp + 0x78], 0
test ebx, ebx
jle 0x42beb6
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcmpA]
mov eax, dword [esi]
push 0x45f6ec
lea eax, [edi + eax + 0x58]
push eax
call ebx
test eax, eax
jne 0x42bda7
push 0x7a
push 0x61
jmp 0x42be81
mov eax, dword [esi]
push 0x45f7cc
lea eax, [edi + eax + 0x58]
push eax
call ebx
test eax, eax
jne 0x42bdc2
push 0x5a
push 0x41
jmp 0x42be81
mov eax, dword [esi]
push str.a_z_A_Z
lea eax, [edi + eax + 0x58]
push eax
call ebx
test eax, eax
jne 0x42bde5
push 1
push eax
call fcn.00414ea0
pop ecx
pop ecx
cmp eax, 1
jne 0x42bdb9
jmp 0x42bd9e
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.a_z_A_Z_0_9
push eax
call fcn.004010ff
test eax, eax
mov eax, dword [esi]
pop ecx
pop ecx
lea eax, [edi + eax + 0x58]
je 0x42be71
push str.a_z_A_Z_0_9__r_n
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42be45
push 4
push 1
call fcn.00414ea0
pop ecx
pop ecx
cmp eax, 4
jne 0x42be50
mov eax, dword [ebp + 0x78]
mov ecx, dword [0x4775e4]
add eax, ecx
cmp byte [eax - 1], 0xa
je 0x42be40
cmp byte [eax - 2], 0xa
je 0x42be40
cmp byte [eax - 3], 0xa
jne 0x42be6d
xor eax, eax
inc eax
jmp 0x42be50
push 3
push 1
call fcn.00414ea0
pop ecx
pop ecx
cmp eax, 1
je 0x42bd9e
cmp eax, 2
je 0x42bdb9
cmp eax, 3
jne 0x42be6d
push 0x39
push 0x30
jmp 0x42be81
mov al, 0xd
jmp 0x42be88
push 0x45f6c0
push eax
call ebx
test eax, eax
je 0x42be67
push 0x7e
push 0x20
call fcn.00414ea0
pop ecx
pop ecx
mov ecx, dword [ebp + 0x78]
mov edx, dword [0x4775e4]
mov byte [edx + ecx], al
cmp al, 0xd
jne 0x42bea2
mov eax, dword [0x4775e4]
inc ecx
mov byte [eax + ecx], 0xa
inc ecx
cmp ecx, dword [ebp + 0x7c]
mov dword [ebp + 0x78], ecx
jl 0x42bd8c
mov eax, dword [0x4775e4]
jmp 0x42beb9
mov ecx, dword [ebp + 0x78]
mov byte [eax + ecx], 0
jmp 0x42cc3a
push 0
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
push dword [edi + eax + 0x50]
call fcn.00439ea7
mov eax, dword [esi]
add eax, edi
push str.CONTAIN
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42c02f
lea eax, [edi + eax + 0x58]
push str.Only
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42bf51
mov eax, dword [0x4775e4]
test eax, eax
je 0x42bf3e
cmp dword [ebp + 0x80], 0
je 0x42bf3e
push dword [ebp + 0x80]
push eax
call fcn.004481e0
pop ecx
pop ecx
push dword [0x4775e4]
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp ebx, eax
sbb eax, eax
inc eax
jmp 0x42bf40
xor eax, eax
push eax
push 0x45aac0
push dword [0x4775e4]
jmp 0x42c009
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45aaa4
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42bf90
mov eax, dword [0x4775e4]
test eax, eax
je 0x42bf3e
cmp dword [ebp + 0x80], 0
je 0x42bf3e
push dword [ebp + 0x80]
push eax
call fcn.00448020
neg eax
pop ecx
sbb eax, eax
pop ecx
neg eax
jmp 0x42bf40
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Insens
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42bfba
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.004010ff
jmp 0x42bfd8
mov eax, dword [0x4775e4]
test eax, eax
je 0x42bfdc
cmp dword [ebp + 0x80], 0
je 0x42bfdc
push dword [ebp + 0x80]
push eax
call fcn.00445d80
pop ecx
pop ecx
jmp 0x42bfde
xor eax, eax
test eax, eax
jne 0x42bff9
mov eax, dword [0x4775e4]
test eax, eax
je 0x42c012
push 0x45b754
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x42c012
mov ecx, dword [0x4775e4]
sub eax, ecx
inc eax
push eax
push 0x45aac0
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push dword [0x4775e4]
call fcn.0040109c
pop ecx
test eax, eax
jne 0x42cc3a
and dword [ebp + 0x5c], 0
jmp 0x42cc3a
add eax, edi
push str.FIND_TEXT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c0fa
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Sensi
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c090
mov eax, dword [0x4775e4]
test eax, eax
je 0x42c08c
cmp dword [ebp + 0x80], 0
je 0x42c08c
push dword [ebp + 0x80]
push eax
call fcn.00445d80
jmp 0x42c0a1
xor ebx, ebx
jmp 0x42c0a5
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.004010ff
pop ecx
mov ebx, eax
pop ecx
test ebx, ebx
je 0x42c0ed
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp dword [ebp + 0x7c], eax
jge 0x42c0bb
mov eax, dword [ebp + 0x7c]
jmp 0x42c0c3
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
cmp dword [0x4775e4], 0
je 0x42cc3a
test eax, eax
jle 0x42cc3a
push eax
push ebx
push dword [0x4775e4]
call fcn.00445ea0
add esp, 0xc
jmp 0x42cc3a
mov eax, dword [0x4775e4]
mov byte [eax], 0
jmp 0x42c026
mov eax, dword [esi]
add eax, edi
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c1b2
mov eax, dword [0x4775e4]
test eax, eax
je 0x42c124
push eax
call fcn.00446205
pop ecx
mov dword [ebp + 0x68], eax
jmp 0x42c128
and dword [ebp + 0x68], 0
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.0043f997
push dword [ebp + 0x70]
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
imul ebx, eax
add ebx, dword [ebp + 0x68]
push ebx
push dword [0x4775e4]
call fcn.00401000
pop ecx
pop ecx
mov dword [0x4775e4], eax
test eax, eax
je 0x42ad03
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Sensi
push eax
call fcn.004010ff
neg eax
pop ecx
sbb eax, eax
pop ecx
neg eax
push eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.First
push eax
call fcn.004010ff
pop ecx
neg eax
pop ecx
sbb eax, eax
neg eax
push eax
push dword [ebp + 0x70]
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.0043fa75
jmp 0x42cc3a
mov eax, dword [esi]
add eax, edi
push str.CASE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c292
mov eax, dword [0x4775e4]
test eax, eax
je 0x42cc3a
cmp byte [eax], 0
je 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f69c
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c224
xor edx, edx
jmp 0x42c216
add eax, edx
mov cl, byte [eax]
test cl, cl
je 0x42cc3a
cmp cl, 0x61
jl 0x42c215
cmp cl, 0x7a
jg 0x42c215
add byte [eax], 0xe0
inc edx
mov eax, dword [0x4775e4]
test eax, eax
jne 0x42c1fc
jmp 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f698
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c267
xor edx, edx
jmp 0x42c259
add eax, edx
mov cl, byte [eax]
test cl, cl
je 0x42cc3a
cmp cl, 0x41
jl 0x42c258
cmp cl, 0x5a
jg 0x42c258
add byte [eax], 0x20
inc edx
mov eax, dword [0x4775e4]
test eax, eax
jne 0x42c23f
jmp 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.TITLE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cc3a
push dword [0x4775e4]
call fcn.0044007f
jmp 0x42cc3a
mov eax, dword [esi]
add eax, edi
push str.TRIM
push eax
call fcn.004010ff
pop ecx
test eax, eax
mov eax, dword [esi]
pop ecx
je 0x42c36d
lea eax, [edi + eax + 0x468]
push str.Front
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c2d8
push 1
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.0043fbb2
mov eax, dword [esi]
mov ebx, 0x45f67c
lea eax, [edi + eax + 0x468]
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c306
push 2
push dword [ebp + 0x80]
push dword [0x4775e4]
call fcn.0043fbb2
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.White
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cc3a
mov eax, dword [esi]
lea eax, [edi + eax + 0x468]
push str.Front
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c34a
push 7
push 0
push dword [0x4775e4]
call fcn.0043fbb2
mov eax, dword [esi]
lea eax, [edi + eax + 0x468]
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cc3a
push 8
push 0
jmp 0x42b916
add eax, edi
push 0x45f670
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c407
cmp dword [0x4775e4], 0
je 0x42c39d
push dword [0x4775e4]
call fcn.00446205
pop ecx
mov ebx, eax
jmp 0x42c39f
xor ebx, ebx
push dword [ebp + 0x80]
call fcn.0040109c
lea eax, [eax + ebx + 0x100]
push eax
push dword [0x4775e4]
call fcn.00401000
add esp, 0xc
mov dword [0x4775e4], eax
test eax, eax
je 0x42ad03
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Front
push eax
call fcn.004010ff
neg eax
sbb eax, eax
pop ecx
inc eax
pop ecx
inc eax
push eax
push dword [ebp + 0x80]
call fcn.0040109c
pop ecx
push eax
push dword [ebp + 0x70]
push dword [0x4775e4]
call fcn.0043ffb4
jmp 0x42cc3a
mov eax, dword [esi]
add eax, edi
push str.LEFT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c46b
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push dword [ebp + 0x80]
mov ebx, eax
call fcn.0040109c
pop ecx
test eax, eax
jge 0x42c43e
xor eax, eax
jmp 0x42c45a
push dword [ebp + 0x80]
call fcn.0040109c
cmp eax, ebx
pop ecx
jg 0x42c45e
push dword [ebp + 0x80]
call fcn.0040109c
pop ecx
cmp ebx, eax
jge 0x42c460
mov eax, ebx
mov ecx, dword [0x4775e4]
jmp 0x42beb9
mov eax, dword [esi]
add eax, edi
push str.RIGHT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c4f7
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push dword [ebp + 0x80]
mov ebx, eax
call fcn.0040109c
pop ecx
test eax, eax
jge 0x42c4a4
and dword [ebp + 0x74], 0
jmp 0x42c4c8
push dword [ebp + 0x80]
call fcn.0040109c
cmp eax, ebx
pop ecx
jle 0x42c4b9
mov dword [ebp + 0x74], ebx
jmp 0x42c4c8
push dword [ebp + 0x80]
call fcn.0040109c
pop ecx
mov dword [ebp + 0x74], eax
mov eax, dword [0x4775e4]
test eax, eax
je 0x42c4ef
mov ecx, dword [ebp + 0x74]
sub ebx, ecx
add ebx, eax
je 0x42c4ef
inc ecx
test ecx, ecx
jle 0x42c4ef
push ecx
push ebx
push eax
call fcn.00445ea0
mov eax, dword [0x4775e4]
add esp, 0xc
mov ecx, dword [ebp + 0x74]
jmp 0x42b8a0
mov eax, dword [esi]
add eax, edi
push str.FORMAT
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c7a1
mov ebx, dword [ebp + 0x80]
test ebx, ebx
je 0x42c529
push 0x459858
push ebx
call fcn.00445d80
pop ecx
pop ecx
jmp 0x42c52b
xor eax, eax
test eax, eax
je 0x42c769
test ebx, ebx
je 0x42c54c
push str.cdiuxefgs
push ebx
call fcn.00448020
neg eax
pop ecx
sbb eax, eax
pop ecx
neg eax
jmp 0x42c54e
xor eax, eax
test eax, eax
jne 0x42c575
test ebx, ebx
je 0x42c56b
push str.CDIUXEFGS
push ebx
call fcn.00448020
neg eax
pop ecx
sbb eax, eax
pop ecx
neg eax
jmp 0x42c56d
xor eax, eax
test eax, eax
je 0x42c769
push 0x45aac0
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x45aabc
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x45f644
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x45f640
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x45f63c
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x45cf3c
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x45f638
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c64c
push 0x64
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x78
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x58
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x63
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
jne 0x42c72c
push 0x68
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
jne 0x42c719
push 0x48
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
jne 0x42c719
push 0x45f634
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c6f7
push 0x45f630
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c6f7
push 0x45f62c
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c6f7
push 0x45f628
push ebx
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c6f7
push 0x25
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
je 0x42c6de
push 0x2e
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
je 0x42c6de
push 0x66
push ebx
call fcn.00445cc0
pop ecx
pop ecx
test eax, eax
jne 0x42c6f7
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push ebx
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x42c749
push 0
push 0
push dword [0x4775e4]
call fcn.00418a96
pop ecx
fstp qword [esp]
lea eax, [ebp + 0x288]
push ebx
push eax
call fcn.0042009f
jmp 0x42c746
push dword [0x4775e4]
call fcn.00414836
push eax
push 0x45aac0
jmp 0x42c739
push dword [0x4775e4]
call fcn.0040109c
push eax
push ebx
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov eax, dword [0x4775e4]
test eax, eax
je 0x42cc3a
lea ecx, [ebp + 0x288]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x42cc3a
test ebx, ebx
je 0x42c78e
cmp byte [ebx], 0
je 0x42c78e
fldz
lea eax, [ebp + 0x288]
push eax
push ebx
push dword [0x4775e4]
push ecx
push ecx
fstp qword [esp]
call fcn.0044356a
jmp 0x42c749
push 4
push dword [0x4775e4]
call fcn.00414bd9
pop ecx
jmp 0x42b79d
mov eax, dword [esi]
add eax, edi
push str.Word
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c813
push 1
push 0x1000
call fcn.004462a8
mov ebx, eax
pop ecx
pop ecx
test ebx, ebx
je 0x42cc3a
push 0
push ebx
push dword [0x4775e4]
call fcn.00415918
add esp, 0xc
cmp byte [ebx], 0
je 0x42c80d
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ecx, eax
inc ecx
mov eax, 0x3ff
cmp ecx, eax
jg 0x42c7ff
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
inc eax
push eax
push ebx
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push ebx
jmp 0x42b798
mov eax, dword [esi]
add eax, edi
push str.RANDOM_NUMBER
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c861
push dword [ebp + 0x80]
call fcn.0040109c
pop ecx
push eax
push dword [0x4775e4]
call fcn.0040109c
pop ecx
push eax
call fcn.00414ea0
push eax
push 0x45aac0
push dword [0x4775e4]
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
jmp 0x42cc3a
mov eax, dword [esi]
add eax, edi
push str.Ticks
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c896
lea eax, [ebp + 0x288]
push eax
push dword [0x4775e4]
call fcn.0040109c
pop ecx
push eax
call fcn.00415828
pop ecx
pop ecx
jmp 0x42c749
mov eax, dword [esi]
add eax, edi
push str.Weekday
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42c900
mov eax, dword [0x4775e4]
test eax, eax
je 0x42c8cc
cmp byte [eax], 0
je 0x42c8cc
push 0
lea ecx, [ebp + 0x40]
push ecx
push 0
push eax
call fcn.00415ef5
add esp, 0x10
jmp 0x42c8d6
lea eax, [ebp + 0x40]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push dword [0x4775e4]
movzx eax, word [ebp + 0x46]
push 1
push eax
movzx eax, word [ebp + 0x42]
push eax
movzx eax, word [ebp + 0x40]
push eax
call fcn.0041564d
add esp, 0xc
push eax
call fcn.00416a2e
jmp 0x42c0e5
mov eax, dword [esi]
mov ebx, str.DATE
add eax, edi
push ebx
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c92f
mov eax, dword [esi]
add eax, edi
push 0x45aad4
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cc3a
mov eax, dword [esi]
add eax, edi
push ebx
push eax
call fcn.004010ff
mov ebx, dword [sym.imp.KERNEL32.dll_GetLocalTime]
pop ecx
test eax, eax
mov eax, dword [0x4775e4]
pop ecx
je 0x42c9df
test eax, eax
je 0x42c973
cmp byte [eax], 0
je 0x42c973
mov ecx, dword [esi]
lea ecx, [edi + ecx + 0x468]
push ecx
lea ecx, [ebp + 0x40]
push ecx
push 0
push eax
call fcn.00415ef5
add esp, 0x10
jmp 0x42c979
lea eax, [ebp + 0x40]
push eax
call ebx
mov eax, dword [esi]
add eax, edi
push str.Compar
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42c9a7
mov eax, dword [esi]
add eax, edi
push str.Diff
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42caac
mov eax, dword [ebp + 0x80]
test eax, eax
je 0x42c9d4
cmp byte [eax], 0
je 0x42c9d4
mov ecx, dword [esi]
lea ecx, [edi + ecx + 0x468]
push ecx
lea ecx, [ebp + 0x30]
push ecx
push 0
push eax
call fcn.00415ef5
add esp, 0x10
jmp 0x42caac
lea eax, [ebp + 0x30]
push eax
call ebx
jmp 0x42caac
test eax, eax
je 0x42ca03
cmp byte [eax], 0
je 0x42ca03
mov ecx, dword [esi]
lea ecx, [edi + ecx + 0x468]
push ecx
lea ecx, [ebp + 0x40]
push ecx
push eax
push 0
call fcn.00415ef5
add esp, 0x10
jmp 0x42ca09
lea eax, [ebp + 0x40]
push eax
call ebx
mov eax, dword [esi]
add eax, edi
push str.Compar
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42ca33
mov eax, dword [esi]
add eax, edi
push str.Diff
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42ca63
mov eax, dword [ebp + 0x80]
test eax, eax
je 0x42ca5d
cmp byte [eax], 0
je 0x42ca5d
mov ecx, dword [esi]
lea ecx, [edi + ecx + 0x468]
push ecx
lea ecx, [ebp + 0x30]
push ecx
push eax
push 0
call fcn.00415ef5
add esp, 0x10
jmp 0x42ca63
lea eax, [ebp + 0x30]
push eax
call ebx
mov eax, dword [0x4775e4]
cmp byte [eax], 0
mov dword [ebp + 0x74], SysReAllocString
je 0x42ca8b
push 0x45aff0
push eax
call fcn.0043f997
cmp eax, 2
jg 0x42ca8b
mov dword [ebp + 0x74], reloc.OLEAUT32.dll_SysReAllocString
cmp word [ebp + 0x48], 0xd
jb 0x42caac
push 0x45f5ec
push dword [0x4775e4]
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42caac
or dword [ebp + 0x74], 0xc
mov eax, dword [esi]
lea eax, [edi + eax + 0x468]
push 0x45f5e4
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42caca
push 6
jmp 0x42cb22
mov eax, dword [esi]
lea eax, [edi + eax + 0x468]
push 0x45f5e0
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cae8
push 5
jmp 0x42cb22
mov eax, dword [esi]
lea eax, [edi + eax + 0x468]
push 0x45f5d8
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cb06
push 3
jmp 0x42cb22
mov eax, dword [esi]
lea eax, [edi + eax + 0x468]
push 0x45f5d0
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cb25
push 2
pop ebx
jmp 0x42cb47
mov eax, dword [esi]
lea eax, [edi + eax + 0x468]
push 0x45f5c8
push eax
call fcn.004010ff
mov ebx, eax
neg ebx
sbb ebx, ebx
pop ecx
and ebx, 0xfffffffd
pop ecx
add ebx, 4
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x56c]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call fcn.0040109c
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
mov dword [esp], 0x45f5c4
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42cb90
neg dword [ebp + 0x7c]
mov eax, dword [esi]
add eax, edi
push str.Compar
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42cc14
mov eax, dword [esi]
add eax, edi
push str.Diff
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
jne 0x42cc14
push dword [ebp + 0x7c]
lea eax, [ebp + 0x30]
push ebx
push eax
lea eax, [ebp + 0x40]
push eax
call fcn.0041c9d5
mov eax, dword [esi]
add eax, edi
push str.DATE
push eax
call fcn.004010ff
add esp, 0x18
push 0xff
push dword [0x4775e4]
test eax, eax
push 0
lea eax, [ebp + 0x30]
push eax
je 0x42cc04
push 0x40000001
push 0x400
call dword [sym.imp.KERNEL32.dll_GetDateFormatA]
jmp 0x42cc3a
push dword [ebp + 0x74]
push 0x400
call dword [sym.imp.KERNEL32.dll_GetTimeFormatA]
jmp 0x42cc3a
push ebx
lea eax, [ebp + 0x30]
push eax
lea eax, [ebp + 0x40]
push eax
call fcn.0041c91e
push eax
push 0x45aac0
push dword [0x4775e4]
mov dword [ebp + 0x5c], eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x18
cmp dword [ebp + 0x60], 0
je 0x42cd29
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp dword [ebp + 0x60], eax
je 0x42cd29
mov eax, dword [ebp + 0x60]
imul eax, eax, 5
mov ebx, 0x1000
cmp eax, ebx
ja 0x42cc6a
mov eax, ebx
push 1
push eax
call fcn.004462a8
mov dword [ebp + 0x68], eax
xor eax, eax
pop ecx
pop ecx
mov dword [ebp + 0x78], eax
mov dword [ebp + 0x54], eax
cmp dword [ebp + 0x60], eax
jbe 0x42ccc9
mov ebx, dword [ebp + 0x68]
mov eax, dword [0x4775e4]
mov ecx, dword [ebp + 0x78]
mov al, byte [eax + ecx]
test al, al
jne 0x42ccb3
test ebx, ebx
je 0x42ccaa
push 5
push str.00
push ebx
call fcn.00445ea0
add esp, 0xc
add dword [ebp + 0x54], 5
add ebx, 5
jmp 0x42ccb9
inc dword [ebp + 0x54]
mov byte [ebx], al
inc ebx
inc dword [ebp + 0x78]
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x60]
jb 0x42cc87
mov ebx, 0x1000
mov eax, dword [ebp + 0x54]
mov dword [ebp + 0x60], eax
mov eax, dword [0x4775e4]
test eax, eax
je 0x42ccdf
push eax
call fcn.00445e06
pop ecx
mov eax, dword [ebp + 0x60]
add eax, 0x100000
cmp eax, ebx
ja 0x42cced
mov eax, ebx
push 1
push eax
call fcn.004462a8
xor ebx, ebx
pop ecx
pop ecx
mov dword [0x4775e4], eax
cmp eax, ebx
je 0x42cd1b
cmp dword [ebp + 0x68], ebx
je 0x42cd29
cmp dword [ebp + 0x60], ebx
jbe 0x42cd1b
push dword [ebp + 0x60]
push dword [ebp + 0x68]
push eax
call fcn.00445ea0
add esp, 0xc
cmp dword [ebp + 0x68], ebx
je 0x42cd29
push dword [ebp + 0x68]
call fcn.00445e06
pop ecx
mov eax, dword [esi]
cmp byte [edi + eax + 0xc88], 0
jne 0x42cd40
push str.____WARNING:_No__Save_Output__option_chosen___Function_will_have_no_effect
call fcn.0042036e
pop ecx
mov eax, dword [ebp + 0x60]
test eax, eax
jne 0x42cd53
push dword [0x4775e4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
push eax
push dword [0x4775e4]
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
push dword [ebp + 0x70]
call fcn.00445e06
cmp dword [ebp + 0x80], 0
pop ecx
je 0x42cd89
push dword [ebp + 0x80]
call fcn.00445e06
pop ecx
mov eax, dword [ebp + 0x5c]
jmp 0x42d8d4
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x364]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrlenA]
call ebx
inc eax
cmp eax, 0x103
jle 0x42cdcd
mov eax, 0x103
jmp 0x42cdd6
push dword [0x4775e4]
call ebx
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x774]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call ebx
inc eax
cmp eax, 0x1f
jle 0x42ce1c
push 0x1f
pop eax
jmp 0x42ce25
push dword [0x4775e4]
call ebx
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x6b8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
cmp byte [ebp + 0x6b8], 0
jne 0x42ce54
push 0x45ea20
lea eax, [ebp + 0x6b8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x878]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call ebx
inc eax
cmp eax, 0x1f
jle 0x42ce86
push 0x1f
pop eax
jmp 0x42ce8f
push dword [0x4775e4]
call ebx
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x698]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
cmp byte [ebp + 0x698], 0
jne 0x42cebe
push 0x45b4c0
lea eax, [ebp + 0x698]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x468]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call ebx
inc eax
cmp eax, 0x1f
jle 0x42cef0
push 0x1f
pop eax
jmp 0x42cef9
push dword [0x4775e4]
call ebx
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x38c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
xor ecx, ecx
add eax, edi
cmp byte [eax + 0x56c], cl
je 0x42cf39
lea eax, [eax + ecx + 0x56c]
cmp byte [eax], 0xa
je 0x42cf2a
add byte [eax], 0xfd
mov eax, dword [esi]
inc ecx
add eax, edi
cmp byte [eax + ecx + 0x56c], 0
jne 0x42cf1b
mov eax, dword [esi]
lea eax, [edi + eax + 0x56c]
push eax
call ebx
inc eax
cmp eax, 0x1f
jle 0x42cf50
push 0x1f
pop eax
jmp 0x42cf5d
mov eax, dword [esi]
lea eax, [edi + eax + 0x56c]
push eax
call ebx
inc eax
push eax
mov eax, dword [esi]
lea eax, [edi + eax + 0x56c]
push eax
lea eax, [ebp + 0x490]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
mov eax, dword [esi]
xor ecx, ecx
add eax, edi
cmp byte [eax + 0x56c], cl
je 0x42cfa1
lea eax, [eax + ecx + 0x56c]
cmp byte [eax], 0xa
je 0x42cf92
add byte [eax], 3
mov eax, dword [esi]
inc ecx
add eax, edi
cmp byte [eax + ecx + 0x56c], 0
jne 0x42cf83
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [ebp + 0x490]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
lea eax, [ebp + 0x490]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea eax, [ebp + 0x38c]
push eax
lea eax, [ebp + 0x288]
push eax
lea eax, [ebp + 0x84]
push 0x45f570
push eax
mov byte [ebp + 0x307], 0
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
cmp dword [0x473c14], 0
je 0x42d056
cmp byte [0x477368], 0
je 0x42d026
lea eax, [ebp + 0x84]
push eax
push 0x477368
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
je 0x42d0fd
cmp dword [0x473c14], 0
je 0x42d056
push 0
push 0x474418
push 0x47441c
push 0x473c14
call fcn.0041d9ad
xor eax, eax
mov dword [0x474418], eax
mov dword [0x47441c], eax
mov dword [0x473c14], eax
lea eax, [ebp + 0x288]
push eax
push str.____Logging_in_to___s_...
call fcn.0042036e
pop ecx
pop ecx
lea eax, [ebp + 0x490]
push eax
lea eax, [ebp + 0x38c]
push eax
push 0x4597fe
lea eax, [ebp + 0x288]
push eax
lea eax, [ebp + 0x50]
push eax
push 0x474418
push 0x47441c
push 0x473c14
call fcn.0041e586
cmp eax, 1
jge 0x42d0dc
mov esi, 0x476148
push esi
call ebx
mov ecx, eax
inc ecx
mov eax, 0xff
cmp ecx, eax
jg 0x42d0b8
push esi
call ebx
inc eax
push eax
push esi
push dword [0x473bbc]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
xor eax, eax
mov dword [0x474418], eax
mov dword [0x47441c], eax
mov dword [0x473c14], eax
jmp 0x42d8f3
lea eax, [ebp + 0x38c]
push eax
lea eax, [ebp + 0x288]
push eax
push 0x45f570
push 0x477368
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x670]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
push dword [0x4775e4]
call ebx
inc eax
cmp eax, 0x103
jle 0x42d133
mov eax, 0x103
jmp 0x42d13c
push dword [0x4775e4]
call ebx
inc eax
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
lea eax, [ebp + 0x288]
push eax
call fcn.0040109c
pop ecx
test eax, eax
jne 0x42d16a
mov dword [ebp + 0x5c], 0x3e8
jmp 0x42d179
mov dword [ebp + 0x5c], 0xf4240
cmp eax, 0xffffffff
je 0x42d179
mov dword [ebp + 0x5c], eax
mov eax, dword [esi]
add eax, edi
push str.TABLE
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42d256
push 1
push 0x100000
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x7c], eax
test eax, eax
je 0x42d8f3
push 0xfff00
push eax
push 0x473c14
mov byte [eax], 0
call fcn.0041dd21
push 0
push 0
push dword [ebp + 0x6e8]
mov dword [ebp + 0x58], eax
mov eax, dword [esi]
push dword [ebp + 0x6e4]
lea eax, [edi + eax + 0x670]
push eax
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42d1ed
push eax
jmp 0x42d1f2
push 0x45b890
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov edi, dword [ebp + 0x7c]
push 0
push 0
lea eax, [ebp + 0x288]
push eax
push 0x45b4c0
push edi
call fcn.0043fa75
cmp byte [edi], 0
je 0x42d231
lea eax, [ebp + 0x288]
push eax
call ebx
mov esi, edi
push edi
sub esi, eax
call ebx
mov byte [eax + esi], 0
push edi
call ebx
push eax
push edi
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
push edi
call fcn.00445e06
pop ecx
mov eax, dword [ebp + 0x58]
jmp 0x42d8f5
mov eax, dword [esi]
add eax, edi
push str.COLUMN
push eax
call fcn.004010ff
pop ecx
pop ecx
push 0
push 0
push dword [ebp + 0x6e8]
test eax, eax
push dword [ebp + 0x6e4]
mov eax, dword [esi]
push dword [edi + eax + 0x50]
je 0x42d55d
call fcn.00439ea7
mov eax, dword [0x4775e4]
test eax, eax
je 0x42d546
cmp byte [eax], 0
je 0x42d546
and dword [ebp + 0x78], 0
push 1
push 0x1000
call fcn.004462a8
pop ecx
pop ecx
mov ecx, dword [ebp + 0x78]
inc dword [ebp + 0x78]
cmp dword [ebp + 0x78], 0x200
mov dword [ebp + ecx*4 - 0x7d0], eax
jl 0x42d2a4
push dword [0x4775e4]
lea eax, [ebp + 0x288]
push str.SELECT__FROM__s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
push 0
lea eax, [ebp + 0x288]
push eax
lea eax, [ebp - 0xfd0]
push eax
lea eax, [ebp - 0x17d0]
push eax
lea eax, [ebp + 0x58]
push eax
push 1
lea eax, [ebp - 0x7d0]
push eax
push 0
push dword [ebp + 0x50]
push 0x474418
push 0x473c14
call fcn.0041df86
test eax, eax
jge 0x42d367
mov esi, 0x476148
push esi
call ebx
mov ecx, eax
inc ecx
mov eax, 0x7ff
cmp ecx, eax
jg 0x42d337
push esi
call ebx
inc eax
push eax
push esi
push dword [0x473bbc]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
xor esi, esi
mov eax, dword [ebp + esi*4 - 0x7d0]
test eax, eax
je 0x42d359
push eax
call fcn.00445e06
pop ecx
inc esi
cmp esi, 0x200
jl 0x42d347
jmp 0x42d8f3
mov eax, 0x1ff
cmp dword [ebp + 0x58], eax
jl 0x42d374
mov dword [ebp + 0x58], eax
mov eax, dword [esi]
push 0
push 0
push dword [ebp + 0x6e8]
lea eax, [edi + eax + 0x670]
push dword [ebp + 0x6e4]
push eax
call fcn.00439ea7
mov eax, dword [0x4775e4]
cmp byte [eax], 0
je 0x42d3a0
push eax
jmp 0x42d3a5
push 0x45b890
lea eax, [ebp + 0x288]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
mov eax, dword [esi]
lea eax, [edi + eax + 0x670]
push eax
call ebx
inc eax
inc eax
imul eax, dword [ebp + 0x58]
shl eax, 6
cmp eax, 0x100
jl 0x42d3ea
mov eax, dword [esi]
lea eax, [edi + eax + 0x670]
push eax
call ebx
inc eax
inc eax
imul eax, dword [ebp + 0x58]
shl eax, 6
cmp eax, 0x1000
jg 0x42d3ef
mov eax, 0x1000
push 1
push eax
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x7c], eax
test eax, eax
je 0x42d8f3
and dword [ebp + 0x78], 0
mov byte [eax], 0
cmp dword [ebp + 0x58], 0
jle 0x42d501
mov eax, dword [ebp + 0x78]
push dword [ebp + eax*4 - 0x7d0]
push dword [ebp + 0x7c]
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push str.Attrib
push eax
call fcn.004010ff
pop ecx
pop ecx
test eax, eax
je 0x42d4c6
lea eax, [ebp + 0x38c]
push eax
mov eax, dword [ebp + 0x78]
push dword [ebp + eax*4 - 0xfd0]
call fcn.0041de9e
mov eax, dword [ebp + 0x78]
mov eax, dword [ebp + eax*4 - 0xfd0]
cmp eax, 0xc
je 0x42d490
cmp eax, 1
je 0x42d490
cmp eax, 0xfffffffd
je 0x42d490
lea eax, [ebp + 0x38c]
push eax
lea eax, [ebp + 0x490]
push 0x45f534
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x42d4b6
mov eax, dword [ebp + 0x78]
push dword [ebp + eax*4 - 0x17d0]
lea eax, [ebp + 0x38c]
push eax
lea eax, [ebp + 0x490]
push str.__s__d_
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp + 0x490]
push eax
push dword [ebp + 0x7c]
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x288]
push eax
push dword [ebp + 0x7c]
call dword [sym.imp.KERNEL32.dll_lstrcatA]
inc dword [ebp + 0x78]
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x58]
jl 0x42d415
mov edi, dword [ebp + 0x7c]
cmp byte [edi], 0
je 0x42d501
lea eax, [ebp + 0x288]
push eax
call ebx
mov esi, edi
push edi
sub esi, eax
call ebx
mov byte [eax + esi], 0
push dword [ebp + 0x7c]
call ebx
push eax
push dword [ebp + 0x7c]
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
push dword [ebp + 0x7c]
call fcn.00445e06
pop ecx
xor esi, esi
mov eax, dword [ebp + esi*4 - 0x7d0]
test eax, eax
je 0x42d538
push eax
call fcn.00445e06
pop ecx
inc esi
cmp esi, 0x200
jl 0x42d526
jmp 0x42d24e
mov eax, dword [0x473bbc]
test eax, eax
je 0x42d8f3
push str.Missing_table_name
jmp 0x42d8ec
call fcn.00439ea7
mov eax, dword [0x4775e4]
test eax, eax
je 0x42d8de
cmp byte [eax], 0
je 0x42d8de
push 0x104
lea eax, [ebp + 0x490]
push 0
push eax
call fcn.004464f0
mov eax, dword [0x4775e4]
add esp, 0xc
test eax, eax
je 0x42d5e8
push eax
call ebx
cmp eax, 0xf4
jge 0x42d5ab
push dword [0x4775e4]
call ebx
jmp 0x42d5b0
mov eax, 0xf4
test eax, eax
jle 0x42d5e8
push dword [0x4775e4]
call ebx
cmp eax, 0xf4
jge 0x42d5cd
push dword [0x4775e4]
call ebx
jmp 0x42d5d2
mov eax, 0xf4
push eax
push dword [0x4775e4]
lea eax, [ebp + 0x490]
push eax
call fcn.00445ea0
add esp, 0xc
lea eax, [ebp + 0x490]
push eax
call ebx
cmp eax, 0xf8
jl 0x42d60a
push 0x45c8a4
lea eax, [ebp + 0x490]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
mov eax, dword [esi]
cmp dword [edi + eax + 0xf28], 1
jg 0x42d629
lea eax, [ebp + 0x490]
push eax
push str.____EXEC_SQL:___s_
call fcn.0042036e
pop ecx
pop ecx
and dword [ebp + 0x78], 0
push 1
push 0x1000
call fcn.004462a8
pop ecx
pop ecx
mov ecx, dword [ebp + 0x78]
inc dword [ebp + 0x78]
cmp dword [ebp + 0x78], 0x200
mov dword [ebp + ecx*4 - 0x7d0], eax
jl 0x42d62d
push 0
push dword [0x4775e4]
lea eax, [ebp - 0xfd0]
push eax
push 0x471c20
push 0x473c0c
push dword [ebp + 0x5c]
lea eax, [ebp - 0x7d0]
push eax
push 0x473c18
push dword [ebp + 0x50]
push 0x474418
push 0x473c14
call fcn.0041df86
mov dword [0x473c10], eax
test eax, eax
jge 0x42d707
mov esi, 0x476148
push esi
call ebx
mov ecx, eax
inc ecx
mov eax, 0x7ff
cmp ecx, eax
jg 0x42d6ac
push esi
call ebx
inc eax
push eax
push esi
push dword [0x473bbc]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push dword [0x473bbc]
call ebx
cmp eax, 0x7fb
jl 0x42d6de
mov eax, dword [0x473bbc]
test eax, eax
je 0x42d6de
push 0x45c8a4
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
and dword [0x473c10], 0
xor esi, esi
mov eax, dword [ebp + esi*4 - 0x7d0]
test eax, eax
je 0x42d6f9
push eax
call fcn.00445e06
pop ecx
inc esi
cmp esi, 0x200
jl 0x42d6e7
jmp 0x42d8f3
mov ecx, dword [0x473c0c]
and dword [ebp + 0x74], 0
and dword [ebp + 0x78], 0
test ecx, ecx
jle 0x42d73b
mov ecx, dword [ebp + 0x78]
mov ecx, dword [ecx*4 + 0x471c20]
mov edx, dword [ebp + 0x74]
inc dword [ebp + 0x78]
lea ecx, [edx + ecx + 1]
mov dword [ebp + 0x74], ecx
mov ecx, dword [0x473c0c]
cmp dword [ebp + 0x78], ecx
jl 0x42d719
mov edx, dword [esi]
cmp dword [edi + edx + 0xf28], 1
jg 0x42d75e
push dword [ebp + 0x74]
push ecx
push eax
push str.____Data_Rows:__d__Columns:__d__Row_Size:__d
call fcn.0042036e
mov eax, dword [0x473c10]
add esp, 0x10
mov ecx, dword [esi]
cmp byte [edi + ecx + 0xc88], 0
je 0x42d8b2
imul eax, dword [ebp + 0x74]
cmp eax, 0x100
jl 0x42d780
cmp eax, 0x1000
jg 0x42d785
mov eax, 0x1000
push 1
push eax
call fcn.004462a8
pop ecx
pop ecx
mov dword [ebp + 0x7c], eax
test eax, eax
je 0x42d8f3
mov byte [eax], 0
mov eax, dword [esi]
lea eax, [edi + eax + 0x58]
push 0x45f4d0
push eax
call fcn.004010ff
mov esi, dword [ebp + 0x7c]
pop ecx
pop ecx
test eax, eax
je 0x42d81c
xor eax, eax
cmp dword [ebp - 0x7d0], eax
je 0x42d81c
cmp dword [0x473c0c], eax
mov dword [ebp + 0x78], eax
jle 0x42d7fa
mov eax, dword [ebp + eax*4 - 0x7d0]
test eax, eax
je 0x42d7eb
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push eax
push esi
call edi
lea eax, [ebp + 0x6b8]
push eax
push esi
call edi
mov eax, dword [ebp + 0x78]
inc eax
cmp eax, dword [0x473c0c]
mov dword [ebp + 0x78], eax
jl 0x42d7cc
lea eax, [ebp + 0x6b8]
push eax
call ebx
mov edi, esi
push esi
sub edi, eax
call ebx
mov byte [eax + edi], 0
lea eax, [ebp + 0x698]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
and dword [ebp + 0x5c], 0
cmp dword [0x473c10], 0
jle 0x42d895
xor edi, edi
cmp dword [0x473c0c], edi
jle 0x42d865
mov eax, dword [edi*4 + 0x471c20]
inc eax
imul eax, dword [ebp + 0x5c]
add eax, dword [edi*4 + 0x473c18]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp + 0x6b8]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
inc edi
cmp edi, dword [0x473c0c]
jl 0x42d833
lea eax, [ebp + 0x6b8]
push eax
call ebx
mov edi, esi
push esi
sub edi, eax
call ebx
mov byte [eax + edi], 0
lea eax, [ebp + 0x698]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
inc dword [ebp + 0x5c]
mov eax, dword [ebp + 0x5c]
cmp eax, dword [0x473c10]
jl 0x42d829
push esi
call ebx
push eax
push esi
push dword [ebp + 0x6e8]
push dword [ebp + 0x6e4]
call fcn.00423053
push esi
call fcn.00445e06
pop ecx
xor esi, esi
mov eax, dword [ebp + esi*4 - 0x7d0]
test eax, eax
je 0x42d8c6
push eax
call fcn.00445e06
pop ecx
inc esi
cmp esi, 0x200
jl 0x42d8b4
mov eax, dword [0x473c10]
cmp eax, 1
jge 0x42d8f5
jmp 0x42a381
mov eax, dword [0x473bbc]
test eax, eax
je 0x42d8f3
push str.Missing_SQL_query
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
xor eax, eax
mov ecx, dword [ebp + 0x6d8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004464bf
add ebp, 0x6dc
leave
ret 8