Function at 0x468ace
Capabilities:
Check if file exists

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x483955
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x2568
call fcn.00483760
mov eax, dword [0x49f644]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov ebx, dword [ebp + 0xc]
xor eax, eax
push eax
push eax
push 1
push eax
call dword [sym.imp.KERNEL32.dll_HeapSetInformation]
push 6
pop ecx
mov esi, 0x403458
lea edi, [ebp - 0x1014]
rep movsd dword es:[edi], dword [esi]
push 0x7e8
xor ecx, ecx
push ecx
lea eax, [ebp - 0xffc]
push eax
call sub.msvcrt.dll_memset
push 5
pop ecx
mov esi, 0x403470
lea edi, [ebp - 0x1814]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
push 0x7ea
push 0
lea eax, [ebp - 0x17fe]
push eax
call sub.msvcrt.dll_memset
add esp, 0x18
xor eax, eax
mov dword [ebp - 0x2130], eax
mov dword [ebp - 0x212c], eax
push 7
pop ecx
mov dword [ebp - 0x212c], ecx
mov dword [ebp - 0x2130], eax
xor edx, edx
mov word [ebp - 0x2140], dx
mov dword [ebp - 4], eax
mov dword [ebp - 0x20a8], eax
mov dword [ebp - 0x20a4], eax
mov dword [ebp - 0x20a4], ecx
mov dword [ebp - 0x20a8], eax
mov word [ebp - 0x20b8], dx
mov byte [ebp - 4], 1
mov dword [ebp - 0x2100], eax
mov dword [ebp - 0x20fc], eax
mov dword [ebp - 0x20fc], ecx
mov dword [ebp - 0x2100], eax
mov word [ebp - 0x2110], dx
mov byte [ebp - 4], 2
mov dword [ebp - 0x2118], eax
mov dword [ebp - 0x2114], eax
mov dword [ebp - 0x2114], ecx
mov dword [ebp - 0x2118], eax
xor ecx, ecx
mov word [ebp - 0x2128], cx
mov byte [ebp - 4], 3
mov dword [ebp - 0x254c], eax
mov dword [ebp - 0x2548], eax
mov dword [ebp - 0x2544], eax
mov byte [ebp - 4], 4
mov dword [ebp - 0x2540], eax
mov dword [ebp - 0x253c], eax
mov dword [ebp - 0x2538], eax
mov byte [ebp - 4], 5
mov dword [ebp - 0x2528], eax
mov dword [ebp - 0x2524], eax
mov dword [ebp - 0x2520], eax
mov byte [ebp - 4], 6
push 0x46aab0
push 0x46aad0
push 0x10
push 8
lea eax, [ebp - 0x2094]
push eax
call fcn.00482e40
mov byte [ebp - 4], 7
xor eax, eax
lea edi, [ebp - 0x20a0]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x2508], eax
mov word [ebp - 0x2504], ax
mov byte [ebp - 4], 8
mov byte [ebp - 0x24fa], al
mov byte [ebp - 0x24fb], al
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x2378]
call fcn.0047a8ea
xor eax, eax
mov dword [ebp - 0x21e0], eax
mov dword [ebp - 0x21dc], eax
mov dword [ebp - 0x21d8], eax
mov dword [ebp - 0x21d4], eax
mov dword [ebp - 0x21d0], eax
mov dword [ebp - 0x21cc], eax
mov dword [ebp - 0x21c8], eax
mov dword [ebp - 0x21c4], eax
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x21b8]
mov dword [ebp - 0x21c0], ecx
mov dword [ebp - 0x21bc], ecx
xor ecx, ecx
mov word [ebp - 0x21b8], cx
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x21a8]
mov dword [ebp - 0x21b0], ecx
mov dword [ebp - 0x21ac], ecx
xor ecx, ecx
mov word [ebp - 0x21a8], cx
mov byte [ebp - 4], 0xc
mov cl, al
mov byte [ebp - 0x24f9], cl
mov byte [ebp - 0x24fc], al
mov byte [ebp - 0x2509], al
mov byte [ebp - 4], 0xd
push 0x46a9e0
push 0x46a9f0
push 0x10
push 4
lea eax, [ebp - 0x20f8]
push eax
call fcn.00482e40
mov byte [ebp - 4], 0xe
push 0x46abc0
push 0x46ac30
push 0x10
push 0x18
lea eax, [ebp - 0x24f8]
push eax
call fcn.00482e40
mov byte [ebp - 4], 0x10
mov byte [ebp - 4], 0x11
mov edi, 0x400
push edi
lea eax, [ebp - 0x814]
push eax
xor esi, esi
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
cmp eax, edi
jne 0x468d83
xor eax, eax
mov word [ebp - 0x16], ax
jmp 0x468d8b
test eax, eax
je 0x468ef4
lea ecx, [ebp - 0x814]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x468d94
sub ecx, edx
sar ecx, 1
lea edi, [ebp - 0x814]
lea edi, [edi + ecx*2]
lea ecx, [ebp - 0x814]
mov dword [ebp - 0x2554], edi
cmp edi, ecx
jbe 0x468dcf
cmp word [edi], 0x5c
jne 0x468eec
add edi, 2
mov dword [ebp - 0x2554], edi
mov eax, edi
sub eax, ecx
add eax, 0x18
and eax, 0xfffffffe
cmp eax, 0x800
jle 0x468efa
mov byte [ebp - 4], 0x12
push 0x46abc0
push 0x10
push 0x18
lea eax, [ebp - 0x24f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x13
push 0x46a9e0
push 0x10
push 4
lea eax, [ebp - 0x20f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x21b0]
call fcn.0046db6e
lea ecx, [ebp - 0x21c0]
call fcn.0046db6e
lea ecx, [ebp - 0x2378]
call fcn.0047a867
mov byte [ebp - 4], 7
cmp byte [ebp - 0x2504], 0
je 0x468e55
push dword [ebp - 0x2508]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov byte [ebp - 4], 6
push 0x46aab0
push 0x10
push 8
lea eax, [ebp - 0x2094]
push eax
call fcn.00482c44
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2528]
call fcn.0046a9f6
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2540]
call fcn.0046a9f6
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x254c]
call fcn.0046a9f6
mov byte [ebp - 4], 2
xor ebx, ebx
push ebx
push 1
lea ecx, [ebp - 0x2128]
call fcn.0046ad1b
mov byte [ebp - 4], 1
push ebx
push 1
lea ecx, [ebp - 0x2110]
call fcn.0046ad1b
mov byte [ebp - 4], bl
push ebx
push 1
lea ecx, [ebp - 0x20b8]
call fcn.0046ad1b
or dword [ebp - 4], 0xffffffff
push ebx
push 1
lea ecx, [ebp - 0x2140]
call fcn.0046ad1b
push 0x7a
pop eax
jmp 0x46985a
sub edi, 2
jmp 0x468db2
lea edi, [ebp - 0x814]
push 6
pop ecx
mov esi, 0x406d70
rep movsd dword es:[edi], dword [esi]
push 0x2d
pop edx
mov dword [ebp - 0x252c], edx
push 0x2f
mov edi, dword [ebp + 8]
pop esi
dec edi
mov dword [ebp + 8], edi
test edi, edi
jle 0x469f8d
add ebx, 4
mov dword [ebp - 0x2510], ebx
mov dword [ebp - 0x2500], ebx
mov eax, dword [ebx]
movzx ecx, word [eax]
cmp cx, dx
je 0x46916b
cmp cx, si
je 0x469170
mov edi, dword [ebp - 0x2514]
cmp edi, 0x10
jb 0x468f62
push 0x405f80
call dword [sym.imp.msvcrt.dll_wprintf]
xor ebx, ebx
jmp 0x46a92f
cmp byte [ebp - 0x2509], 0
jne 0x469422
push 0x401a5f
push 0x1a0
call fcn.00482b92
pop ecx
pop ecx
mov esi, eax
mov ecx, dword [ebp + edi*4 - 0x20f8]
cmp esi, ecx
je 0x468fa2
test ecx, ecx
je 0x468f99
push ecx
call dword [sym.imp.msvcrt.dll_void___cdecl_operator_delete_void__]
pop ecx
mov dword [ebp + edi*4 - 0x20f8], esi
mov ecx, esi
test ecx, ecx
jne 0x468fad
push 0x405fa8
jmp 0x468f55
push 0x1a0
push 0
push ecx
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [ebp + edi*4 - 0x20f8]
xor ecx, ecx
mov dword [eax + 4], ecx
push ecx
push ecx
push ecx
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
mov edi, eax
test edi, edi
je 0x469161
imul eax, dword [ebp - 0x2514], 0x18
lea esi, [ebp - 0x24f8]
add esi, eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0x2518], eax
cmp eax, edi
ja 0x469028
cmp dword [esi + 0x14], edi
je 0x469028
push 1
push edi
mov ecx, esi
call fcn.0046ad67
test al, al
je 0x469028
mov ecx, dword [ebp - 0x2518]
mov dword [esi + 0x10], ecx
cmp dword [esi + 0x14], 8
jb 0x469020
mov eax, dword [esi]
jmp 0x469022
mov eax, esi
xor edx, edx
mov word [eax + ecx*2], dx
cmp dword [esi + 0x14], 8
jb 0x469032
mov eax, dword [esi]
jmp 0x469034
mov eax, esi
push 0
push eax
push edi
push dword [ebx]
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
test eax, eax
je 0x469161
cmp dword [esi + 0x14], 8
jb 0x469050
mov esi, dword [esi]
mov eax, dword [ebp - 0x2514]
mov eax, dword [ebp + eax*4 - 0x20f8]
mov dword [eax], esi
mov esi, dword [ebp - 0x2514]
mov eax, dword [ebp + esi*4 - 0x20f8]
push dword [eax]
push 0x406030
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
mov eax, dword [ebp + esi*4 - 0x20f8]
mov eax, dword [eax]
xor ecx, ecx
mov dword [ebp - 0x2190], ecx
mov dword [ebp - 0x218c], ecx
mov dword [ebp - 0x218c], 7
mov dword [ebp - 0x2190], ecx
mov word [ebp - 0x21a0], cx
push eax
lea ecx, [ebp - 0x21a0]
call fcn.0046ab77
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x21a0]
call fcn.0046880b
mov bl, al
mov byte [ebp - 4], 0x11
push 0
push 1
lea ecx, [ebp - 0x21a0]
call fcn.0046ad1b
test bl, bl
jne 0x4690e7
push 0x406068
jmp 0x468f55
mov eax, dword [ebp + esi*4 - 0x20f8]
lea ecx, [ebp - 0x2378]
mov dword [eax + 0x198], ecx
mov eax, dword [ebp + esi*4 - 0x20f8]
mov dword [eax + 0x180], 0x468380
mov eax, dword [ebp + esi*4 - 0x20f8]
xor ecx, ecx
mov dword [eax + 0x10], ecx
mov eax, dword [ebp + esi*4 - 0x20f8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov eax, dword [ebp + esi*4 - 0x20f8]
mov dword [eax + 0x190], 0x47b630
mov eax, dword [ebp + esi*4 - 0x20f8]
mov dword [eax + 0x14], 0x10000000
inc esi
mov dword [ebp - 0x2514], esi
mov dword [ebp - 0x2550], esi
mov ebx, dword [ebp - 0x2510]
mov edi, dword [ebp + 8]
push 0x2f
pop esi
jmp 0x469e61
push 0x405ffc
jmp 0x468f55
cmp cx, si
jne 0x469175
mov word [eax], dx
mov eax, dword [ebx]
push 0x403488
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x469e69
mov eax, dword [ebx]
cmp word [eax + 2], 0x3f
je 0x469e69
push 0x4057c8
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4691b6
mov byte [ebp - 0x21de], 1
jmp 0x469e61
push 0x4057d8
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x4691aa
push 0x4057ec
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4691ef
mov al, 1
mov byte [ebp - 0x24fc], al
mov byte [ebp - 0x2531], al
jmp 0x469e61
push 0x405808
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x46920e
mov byte [ebp - 0x21df], 1
jmp 0x469e61
push 0x40581c
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x469e61
push 0x405828
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469244
mov byte [ebp - 0x21e5], 1
jmp 0x469e61
push 0x405834
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x469238
push 0x405840
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469276
mov byte [ebp - 0x21e4], 1
jmp 0x469e61
push 0x405850
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469295
mov byte [ebp - 0x21e3], 1
jmp 0x469e61
push 0x405870
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4692b4
mov byte [ebp - 0x21e6], 1
jmp 0x469e61
push 0x40588c
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4692d2
mov byte [ebp - 0x21e2], al
jmp 0x469e61
push 0x4058ac
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4692f4
mov dword [0x4aa69c], 1
jmp 0x469e61
push 0x4058c4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469315
mov word [ebp - 0x21e9], 0x101
jmp 0x469e61
push 0x4058d0
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469334
mov byte [ebp - 0x21e0], 1
jmp 0x469e61
push 0x4058e8
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x469e61
push 0x4058fc
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469369
mov byte [ebp - 0x21e7], al
jmp 0x469e61
push 0x405910
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469393
mov byte [0x4aa698], 1
mov eax, dword [sym.imp.msvcrt.dll_wprintf]
mov dword [ebp - 0x2330], eax
jmp 0x469e61
push 0x405920
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4693b2
mov byte [ebp - 0x21eb], 1
jmp 0x469e61
push 0x405934
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
je 0x4693a6
push 0x405950
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4693e4
mov byte [ebp - 0x21ea], 1
jmp 0x469e61
push 0x405968
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469403
mov byte [ebp - 0x21ec], 1
jmp 0x469e61
push 0x405980
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x46959c
cmp dword [ebp - 0x2514], eax
je 0x46942c
push 0x405988
jmp 0x468f55
mov al, 1
mov byte [ebp - 0x2509], al
mov byte [ebp - 0x2519], al
push 0x4059fc
lea ecx, [ebp - 0x24f8]
call fcn.0046ab77
cmp edi, 1
jle 0x4694ab
mov esi, dword [ebx + 4]
movzx eax, word [esi]
push 0x2d
pop edx
cmp ax, dx
je 0x4694ab
push 0x2f
pop edx
cmp ax, dx
je 0x4694ab
add ebx, 4
mov dword [ebp - 0x2500], ebx
dec edi
mov dword [ebp + 8], edi
mov edx, esi
lea edi, [edx + 2]
xor ecx, ecx
mov ax, word [edx]
add edx, 2
cmp ax, cx
jne 0x469479
sub edx, edi
sar edx, 1
lea eax, [edx + 1]
cmp eax, 0x3ff
jbe 0x46949c
push 0x405a20
jmp 0x468f55
push esi
lea ecx, [ebp - 0x24f8]
call fcn.0046ab77
mov edi, dword [ebp + 8]
push 0x401a5f
push 0x1a0
call fcn.00482b92
pop ecx
pop ecx
mov esi, eax
mov eax, dword [ebp - 0x20f8]
cmp esi, eax
je 0x4694dc
test eax, eax
je 0x4694d4
push eax
call dword [sym.imp.msvcrt.dll_void___cdecl_operator_delete_void__]
pop ecx
mov dword [ebp - 0x20f8], esi
mov eax, esi
test eax, eax
je 0x46a922
push 0x1a0
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, dword [ebp - 0x20f8]
xor ecx, ecx
mov dword [eax], ecx
cmp dword [ebp - 0x24e4], 8
mov ecx, dword [ebp - 0x24f8]
jae 0x469513
lea ecx, [ebp - 0x24f8]
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x20f8]
push dword [eax + 4]
push 0x405a78
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
lea ecx, [ebp - 0x2378]
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x198], ecx
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x180], 0x468380
mov eax, dword [ebp - 0x20f8]
xor ecx, ecx
mov dword [eax + 0x10], ecx
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x190], 0x47b630
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x14], 0x10000100
xor eax, eax
inc eax
mov dword [ebp - 0x2514], eax
mov dword [ebp - 0x2550], eax
jmp 0x469159
push 0x405ab8
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x46964d
push 0x2d
cmp edi, 1
jle 0x469e63
lea edi, [ebx + 4]
mov edx, dword [edi]
movzx eax, word [edx]
pop ecx
cmp ax, cx
je 0x469e5e
cmp ax, si
je 0x469e5e
mov ecx, edx
lea esi, [ecx + 2]
xor ebx, ebx
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x4695e0
sub ecx, esi
sar ecx, 1
lea eax, [ecx + 1]
cmp eax, 0x400
jbe 0x469603
push 0x405ac4
jmp 0x46a929
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x469608
sub ecx, esi
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
push edx
lea eax, [ebp - 0x814]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ebx, edi
mov dword [ebp - 0x2500], ebx
mov edi, dword [ebp + 8]
dec edi
mov dword [ebp + 8], edi
mov dword [0x4aaae4], 1
jmp 0x469159
push 0x405b00
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4696c5
push 0x2d
cmp edi, 1
jle 0x469e63
lea edi, [ebx + 4]
mov edx, dword [edi]
movzx eax, word [edx]
pop ecx
cmp ax, cx
je 0x469e5e
cmp ax, si
je 0x469e5e
mov ecx, edx
lea esi, [ecx + 2]
xor ebx, ebx
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x46968d
sub ecx, esi
sar ecx, 1
lea eax, [ecx + 1]
cmp eax, 0x400
jbe 0x4696b0
push 0x405b0c
jmp 0x46a929
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x4696b5
jmp 0x469613
push 0x405b48
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469874
push 0x2d
pop edx
cmp edi, 1
jle 0x468f13
lea esi, [ebx + 4]
mov eax, dword [esi]
movzx eax, word [eax]
push 0x2f
cmp ax, dx
je 0x468f12
pop edx
cmp ax, dx
je 0x469159
mov byte [ebp - 4], 0x18
push dword [esi]
lea ecx, [ebp - 0x2128]
call fcn.0046ab77
mov dword [ebp - 4], 0x11
mov ebx, esi
mov dword [ebp - 0x2500], ebx
dec edi
mov dword [ebp + 8], edi
mov dword [0x4aaad8], 1
jmp 0x469159
mov dword [ebp - 4], 0x10
mov byte [ebp - 4], 0x24
push 0x46abc0
push 0x10
push 0x18
lea eax, [ebp - 0x24f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x25
push 0x46a9e0
push 0x10
push 4
lea eax, [ebp - 0x20f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x21b0]
call fcn.0046db6e
lea ecx, [ebp - 0x21c0]
call fcn.0046db6e
lea ecx, [ebp - 0x2378]
call fcn.0047a867
mov byte [ebp - 4], 7
cmp byte [ebp - 0x2504], 0
je 0x4697cb
push dword [ebp - 0x2508]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov byte [ebp - 4], 6
push 0x46aab0
push 0x10
push 8
lea eax, [ebp - 0x2094]
push eax
call fcn.00482c44
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2528]
call fcn.0046a9f6
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2540]
call fcn.0046a9f6
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x254c]
call fcn.0046a9f6
push ebx
push 1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2128]
call fcn.0046ad1b
push ebx
push 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2110]
call fcn.0046ad1b
push ebx
push 1
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x20b8]
call fcn.0046ad1b
push ebx
push 1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2140]
call fcn.0046ad1b
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00482990
leave
ret
push 0x405bb8
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469918
cmp edi, 1
jle 0x46990e
add ebx, 4
mov ecx, dword [ebx]
movzx eax, word [ecx]
push 0x2d
pop edx
cmp ax, dx
je 0x46990e
cmp ax, si
je 0x46990e
xor eax, eax
mov dword [ebp - 0x2148], eax
mov dword [ebp - 0x2144], eax
mov dword [ebp - 0x2144], 7
mov dword [ebp - 0x2148], eax
mov word [ebp - 0x2158], ax
push ecx
lea ecx, [ebp - 0x2158]
call fcn.0046ab77
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x2158]
push eax
lea ecx, [ebp - 0x254c]
call fcn.0046aa34
lea ecx, [ebp - 0x2158]
push 0
mov byte [ebp - 4], 0x11
push 1
call fcn.0046ad1b
mov dword [ebp - 0x2500], ebx
dec edi
mov dword [ebp + 8], edi
jmp 0x469e61
push 0x405bd0
jmp 0x468f55
push 0x405c24
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x4699a1
cmp edi, 1
jle 0x469997
add ebx, 4
mov ecx, dword [ebx]
movzx eax, word [ecx]
push 0x2d
pop edx
cmp ax, dx
je 0x469997
cmp ax, si
je 0x469997
xor eax, eax
mov dword [ebp - 0x2178], eax
mov dword [ebp - 0x2174], eax
mov dword [ebp - 0x2174], 7
mov dword [ebp - 0x2178], eax
mov word [ebp - 0x2188], ax
push ecx
lea ecx, [ebp - 0x2188]
call fcn.0046ab77
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x2188]
push eax
lea ecx, [ebp - 0x2540]
call fcn.0046aa34
lea ecx, [ebp - 0x2188]
jmp 0x4698f2
push 0x405c30
jmp 0x468f55
push 0x405c84
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469a2a
cmp edi, 1
jle 0x469a20
add ebx, 4
mov ecx, dword [ebx]
movzx eax, word [ecx]
push 0x2d
pop edx
cmp ax, dx
je 0x469a20
cmp ax, si
je 0x469a20
xor eax, eax
mov dword [ebp - 0x2160], eax
mov dword [ebp - 0x215c], eax
mov dword [ebp - 0x215c], 7
mov dword [ebp - 0x2160], eax
mov word [ebp - 0x2170], ax
push ecx
lea ecx, [ebp - 0x2170]
call fcn.0046ab77
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x2170]
push eax
lea ecx, [ebp - 0x2528]
call fcn.0046aa34
lea ecx, [ebp - 0x2170]
jmp 0x4698f2
push 0x405c90
jmp 0x468f55
push 0x405ce4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469a82
push 0x2d
pop edx
cmp edi, 1
jle 0x468f13
mov ecx, dword [ebx + 4]
movzx eax, word [ecx]
push 0x2f
cmp ax, dx
je 0x468f12
pop edx
cmp ax, dx
je 0x469159
push ecx
lea ecx, [ebp - 0x2110]
call fcn.0046ab77
add ebx, 4
mov dword [ebp - 0x2500], ebx
dec edi
mov dword [ebp + 8], edi
jmp 0x469159
push 0x405cec
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469b2d
push 0x2d
cmp edi, 1
jle 0x469e63
lea esi, [ebx + 4]
mov edx, dword [esi]
movzx eax, word [edx]
pop ecx
push 0x2f
cmp ax, cx
je 0x46915b
pop ecx
cmp ax, cx
je 0x469159
mov ecx, edx
lea edi, [ecx + 2]
xor ebx, ebx
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x469ac9
sub ecx, edi
sar ecx, 1
lea eax, [ecx + 1]
cmp eax, 0x400
jbe 0x469aec
push 0x405cf8
jmp 0x46a929
push edx
lea ecx, [ebp - 0x2140]
call fcn.0046ab77
mov ebx, esi
mov dword [ebp - 0x2500], ebx
mov edi, dword [ebp + 8]
dec edi
mov dword [ebp + 8], edi
cmp byte [ebp - 0x24fb], 0
je 0x469b1a
push 0x405d48
jmp 0x468f55
mov al, 1
mov byte [ebp - 0x24fa], al
mov byte [ebp - 0x2534], al
jmp 0x469159
push 0x405d98
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469bd8
push 0x2d
cmp edi, 1
jle 0x469e63
lea esi, [ebx + 4]
mov edx, dword [esi]
movzx eax, word [edx]
pop ecx
push 0x2f
cmp ax, cx
je 0x46915b
pop ecx
cmp ax, cx
je 0x469159
mov ecx, edx
lea edi, [ecx + 2]
xor ebx, ebx
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x469b74
sub ecx, edi
sar ecx, 1
lea eax, [ecx + 1]
cmp eax, 0x400
jbe 0x469b97
push 0x405da0
jmp 0x46a929
push edx
lea ecx, [ebp - 0x2140]
call fcn.0046ab77
mov ebx, esi
mov dword [ebp - 0x2500], ebx
mov edi, dword [ebp + 8]
dec edi
mov dword [ebp + 8], edi
cmp byte [ebp - 0x24fa], 0
je 0x469bc5
push 0x405df8
jmp 0x468f55
mov al, 1
mov byte [ebp - 0x24fb], al
mov byte [ebp - 0x2533], al
jmp 0x469159
push 0x405e48
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469c59
push 0x2d
cmp edi, 1
jle 0x469e63
lea esi, [ebx + 4]
mov edx, dword [esi]
movzx eax, word [edx]
pop ecx
push 0x2f
cmp ax, cx
je 0x46915b
pop ecx
cmp ax, cx
je 0x469159
mov ecx, edx
lea edi, [ecx + 2]
xor ebx, ebx
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x469c1b
sub ecx, edi
sar ecx, 1
lea eax, [ecx + 1]
cmp eax, 0x104
jbe 0x469c3e
push 0x405e50
jmp 0x46a929
push edx
mov ecx, 0x49ff60
call fcn.0046ab77
mov ebx, esi
mov dword [ebp - 0x2500], ebx
mov edi, dword [ebp + 8]
jmp 0x469a79
push 0x405eac
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469c7b
mov dword [0x4a02f4], 1
jmp 0x469e61
push 0x405eb4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469c9a
mov byte [ebp - 0x21dd], 1
jmp 0x469e61
push 0x405ec0
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469d89
cmp edi, 1
jle 0x469e61
mov edx, dword [ebx + 4]
movzx eax, word [edx]
cmp ax, word [ebp - 0x252c]
je 0x469e61
cmp ax, si
je 0x469e61
add ebx, 4
mov dword [ebp - 0x2500], ebx
dec edi
mov dword [ebp + 8], edi
push 0x400
push edx
lea eax, [ebp - 0x1014]
push eax
call dword [sym.imp.msvcrt.dll__wfullpath]
add esp, 0xc
mov ecx, 0x200
lea esi, [ebp - 0x1014]
lea edi, [ebp - 0x1814]
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x1814]
lea esi, [edx + 2]
xor ecx, ecx
mov ax, word [edx]
add edx, 2
cmp ax, cx
jne 0x469d17
sub edx, esi
sar edx, 1
lea edi, [ebp - 0x1814]
lea edi, [edi + edx*2]
lea eax, [edx*2 + 0xa]
and eax, 0xfffffffe
cmp eax, 0x800
jle 0x469d7b
mov byte [ebp - 4], 0x1d
push 0x46abc0
push 0x10
push 0x18
lea eax, [ebp - 0x24f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x1e
push 0x46a9e0
push 0x10
push 4
lea eax, [ebp - 0x20f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x1f
jmp 0x468e1a
mov esi, 0x406d64
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x469156
push 0x405ec8
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469e05
cmp edi, 1
jle 0x469dfb
add ebx, 4
mov eax, dword [ebx]
movzx eax, word [eax]
push 0x2d
pop ecx
cmp ax, cx
je 0x469dfb
cmp ax, si
je 0x469dfb
call dword [sym.imp.msvcrt.dll__errno]
xor ecx, ecx
mov dword [eax], ecx
push ecx
lea eax, [ebp - 0x2560]
push eax
push dword [ebx]
call dword [sym.imp.msvcrt.dll_wcstoul]
add esp, 0xc
mov esi, eax
call dword [sym.imp.msvcrt.dll__errno]
xor ecx, ecx
cmp dword [eax], ecx
jne 0x469dfb
mov edx, dword [ebp - 0x2560]
cmp edx, dword [ebx]
je 0x469dfb
cmp word [edx], cx
jne 0x469dfb
mov dword [ebp - 0x21f0], esi
jmp 0x469a73
push 0x405ee0
jmp 0x468f55
push 0x405f48
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wcsicmp]
pop ecx
pop ecx
test eax, eax
jne 0x469e61
cmp edi, 1
jle 0x469e61
mov ecx, dword [ebx + 4]
movzx eax, word [ecx]
push 0x2d
pop edx
push 0x2f
cmp ax, dx
je 0x468f12
pop edx
cmp ax, dx
je 0x469159
call fcn.00467700
mov byte [ebp - 0x24f9], al
mov byte [ebp - 0x2532], al
cmp al, 3
jne 0x469a70
push 0x405f50
jmp 0x468f55
mov edi, dword [ebp + 8]
push 0x2d
pop edx
jmp 0x468f13
call fcn.004688dd
push 0x80000
push 0x40000
push 0x20000
push 0x10000
push 0x8000
push 0x4000
push 0x2000
push 0x1000
push 0x800
push 0x400
push 0x200
push 0x100
push 0x80
push 0x40
push 0x20
push 0x10
pop ebx
push ebx
push 8
push 4
push 2
push 1
push 0xff3f
push 0x403490
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0x58
mov byte [ebp - 4], 0x15
push 0x46abc0
push ebx
push 0x18
lea eax, [ebp - 0x24f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x16
push 0x46a9e0
push ebx
push 4
lea eax, [ebp - 0x20f8]
push eax
call fcn.00482c44
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x21b0]
call fcn.0046db6e
lea ecx, [ebp - 0x21c0]
call fcn.0046db6e
lea ecx, [ebp - 0x2378]
call fcn.0047a867
mov byte [ebp - 4], 7
cmp byte [ebp - 0x2504], 0
je 0x469f41
push dword [ebp - 0x2508]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov byte [ebp - 4], 6
push 0x46aab0
push ebx
push 8
lea eax, [ebp - 0x2094]
push eax
call fcn.00482c44
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2528]
call fcn.0046a9f6
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2540]
call fcn.0046a9f6
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x254c]
call fcn.0046a9f6
xor ebx, ebx
jmp 0x469811
mov esi, dword [ebp - 0x254c]
mov edi, dword [ebp - 0x2548]
push 8
pop ebx
mov dword [ebp - 0x256c], esi
cmp esi, edi
je 0x469fe1
cmp dword [esi + 0x14], ebx
jb 0x469faf
mov eax, dword [esi]
jmp 0x469fb1
mov eax, esi
push eax
lea ecx, [ebp - 0x2358]
call fcn.0047be6e
test eax, eax
je 0x469fdc
cmp dword [esi + 0x14], ebx
jb 0x469fca
mov ecx, dword [esi]
jmp 0x469fcc
mov ecx, esi
push eax
push ecx
push 0x4060b0
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
add esi, 0x18
jmp 0x469f9c
mov esi, dword [ebp - 0x2540]
mov edi, dword [ebp - 0x253c]
mov dword [ebp - 0x2568], esi
cmp esi, edi
je 0x46a02d
cmp dword [esi + 0x14], ebx
jb 0x46a000
mov eax, dword [esi]
jmp 0x46a002
mov eax, esi
push eax
call dword [sym.imp.tdh.dll_TdhLoadManifest]
test eax, eax
je 0x46a028
cmp dword [esi + 0x14], ebx
jb 0x46a016
mov ecx, dword [esi]
jmp 0x46a018
mov ecx, esi
push eax
push ecx
push 0x406130
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
add esi, 0x18
jmp 0x469fed
mov eax, dword [ebp - 0x2528]
xor ebx, ebx
cmp eax, dword [ebp - 0x2524]
je 0x46a0aa
mov dword [ebp - 0x2558], ebx
mov dword [ebp - 0x2510], ebx
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x2510]
mov dword [ebp - 0x2510], ebx
test eax, eax
je 0x46a064
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea eax, [ebp - 0x2510]
push eax
push 0x4061a0
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
test eax, eax
jne 0x46a12c
push 0x4061a8
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
mov dword [ebp - 0x2564], ebx
mov byte [ebp - 4], 0x11
cmp dword [ebp - 0x2510], 0
je 0x46a0aa
push dword [ebp - 0x2510]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x4aaad4], 0x467c80
call fcn.00479113
lea ecx, [ebp - 0x2378]
call fcn.0047a9d3
test al, al
je 0x46a922
mov edi, dword [ebp - 0x21fc]
mov dword [ebp - 0x2510], edi
cmp dword [ebp - 0x2100], 0
je 0x46a0ff
cmp dword [ebp - 0x20fc], 8
mov edx, dword [ebp - 0x2110]
jae 0x46a0f6
lea edx, [ebp - 0x2110]
push edi
push 3
pop ecx
call fcn.0046d1ff
mov esi, 0x49ff60
cmp dword [0x49ff70], 0
je 0x46a1aa
cmp dword [0x49ff74], 8
mov ecx, dword [0x49ff60]
jae 0x46a122
mov ecx, esi
call fcn.00479c3c
jmp 0x46a1e6
push 0x40624c
push dword [ebp - 0x2510]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x2564], eax
test eax, eax
jne 0x46a158
push 0x406268
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x46a091
mov esi, dword [ebp - 0x2528]
mov edi, dword [ebp - 0x2524]
mov dword [ebp - 0x255c], esi
cmp esi, edi
je 0x46a091
cmp dword [esi + 0x14], 8
jb 0x46a17c
mov eax, dword [esi]
jmp 0x46a17e
mov eax, esi
push eax
call dword [sym.imp.tdh.dll_TdhLoadManifestFromBinary]
test eax, eax
je 0x46a1a5
cmp dword [esi + 0x14], 8
jb 0x46a193
mov ecx, dword [esi]
jmp 0x46a195
mov ecx, esi
push eax
push ecx
push 0x406340
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
add esi, 0x18
jmp 0x46a164
mov eax, 0x104
mov dword [ebp - 0x2518], eax
push eax
mov ecx, esi
call fcn.0046ab49
cmp dword [0x49ff74], 8
mov ecx, dword [0x49ff60]
jae 0x46a1ce
mov ecx, esi
lea edx, [ebp - 0x2518]
call fcn.00479eac
push dword [ebp - 0x2518]
mov ecx, esi
call fcn.0046ab49
cmp dword [0x4a02f4], 0
je 0x46a20c
cmp dword [0x49ff74], 8
jb 0x46a1fe
mov esi, dword [0x49ff60]
push esi
push 0x4063c8
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
call fcn.0046d5af
push eax
lea ecx, [ebp - 0x20b8]
call fcn.0046ab77
cmp byte [ebp - 0x24fa], 0
je 0x46a276
lea esi, [ebp - 0x20b8]
sub esp, 0x18
mov dword [ebp - 0x2558], esp
mov ecx, esp
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x14], 7
mov dword [ecx + 0x10], ebx
cmp dword [ecx + 0x14], 8
jb 0x46a251
mov eax, dword [ecx]
jmp 0x46a253
mov eax, ecx
xor edx, edx
mov word [eax], dx
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x2140]
push eax
call fcn.0046ae6c
mov byte [ebp - 4], 0x22
mov byte [ebp - 4], 0x11
mov ecx, esi
call fcn.00467df7
cmp byte [ebp - 0x24fb], 0
je 0x46a290
lea edx, [ebp - 0x20b8]
lea ecx, [ebp - 0x2140]
call fcn.00468060
lea ecx, [ebp - 0x814]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x46a299
sub ecx, edx
sar ecx, 1
je 0x46a36d
lea eax, [ebp - 0x814]
push eax
push 0x406410
call dword [sym.imp.msvcrt.dll_wprintf]
push 0x400
lea eax, [ebp - 0x814]
push eax
lea eax, [ebp - 0x2014]
push eax
call dword [sym.imp.msvcrt.dll__wfullpath]
add esp, 0x14
lea ecx, [ebp - 0x2014]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x46a2e5
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [ebp - 0x2014]
push eax
lea eax, [ebp - 0x814]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edx, edi
lea ecx, [ebp - 0x814]
call fcn.0046ccb4
test eax, eax
jne 0x46a35f
push 0x406458
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 2
jne 0x46a347
push 0x406470
call dword [sym.imp.msvcrt.dll_wprintf]
jmp 0x46a36c
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x46a36d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x406494
jmp 0x46a365
push eax
push 0x4064b8
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
cmp dword [ebp - 0x2118], 0
je 0x46a3ec
cmp dword [ebp - 0x2114], 8
mov eax, dword [ebp - 0x2128]
jae 0x46a38b
lea eax, [ebp - 0x2128]
lea ecx, [ebp - 0x252c]
push ecx
push 0x402574
push eax
call dword [sym.imp.msvcrt.dll_wcstok_s]
mov esi, eax
add esp, 0xc
test esi, esi
je 0x46a3ec
push esi
push 0x406410
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
mov edx, edi
mov ecx, esi
call fcn.0046d17e
test eax, eax
je 0x46a3d1
push eax
push 0x4064d0
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x46a3dc
push 0x40650c
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
lea eax, [ebp - 0x252c]
push eax
push 0x402574
push ebx
jmp 0x46a398
cmp dword [ebp - 0x20a4], 8
mov eax, dword [ebp - 0x20b8]
jae 0x46a401
lea eax, [ebp - 0x20b8]
push eax
push 0x406528
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
mov edi, dword [ebp - 0x2514]
test edi, edi
jne 0x46a4e6
push 0x401a5f
mov edi, 0x1a0
push edi
call fcn.00482b92
pop ecx
pop ecx
mov esi, eax
mov ecx, dword [ebp - 0x20f8]
cmp esi, ecx
je 0x46a44f
test ecx, ecx
je 0x46a447
push ecx
call dword [sym.imp.msvcrt.dll_void___cdecl_operator_delete_void__]
pop ecx
mov ecx, esi
mov dword [ebp - 0x20f8], ecx
test ecx, ecx
je 0x46a924
push edi
push ebx
push ecx
call sub.msvcrt.dll_memset
add esp, 0xc
lea ecx, [ebp - 0x2378]
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x198], ecx
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 4], ebx
push 0x406d34
lea ecx, [ebp - 0x24f8]
call fcn.0046ab77
cmp dword [ebp - 0x24e4], 8
mov ecx, dword [ebp - 0x24f8]
jae 0x46a4a2
lea ecx, [ebp - 0x24f8]
mov eax, dword [ebp - 0x20f8]
mov dword [eax], ecx
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x190], 0x47b630
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x180], 0x468380
mov eax, dword [ebp - 0x20f8]
mov dword [eax + 0x14], 0x10000000
xor edi, edi
inc edi
mov dword [ebp - 0x2514], edi
mov dword [ebp - 0x2550], edi
mov esi, ebx
mov dword [ebp - 0x2530], esi
cmp esi, edi
jae 0x46a59f
push dword [ebp + esi*4 - 0x20f8]
call dword [sym.imp.ADVAPI32.dll_OpenTraceW]
mov edi, dword [ebp + esi*8 - 0x2094]
mov ecx, dword [ebp + esi*8 - 0x2090]
mov dword [ebp + esi*8 - 0x2094], eax
mov dword [ebp + esi*8 - 0x2090], edx
cmp edi, 0xffffffff
jne 0x46a528
cmp ecx, ebx
je 0x46a530
push ecx
push edi
call dword [sym.imp.ADVAPI32.dll_CloseTrace]
cmp dword [ebp + esi*8 - 0x2094], 0xffffffff
jne 0x46a545
cmp dword [ebp + esi*8 - 0x2090], ebx
mov al, bl
je 0x46a547
mov al, 1
test al, al
jne 0x46a561
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push 0x406578
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
mov eax, dword [ebp + esi*4 - 0x20f8]
cmp dword [eax], 0
je 0x46a58d
push dword [eax]
push 0x4065c8
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
mov ecx, dword [ebp + esi*4 - 0x20f8]
add ecx, 0x70
xor edx, edx
call fcn.00468498
inc esi
mov dword [ebp - 0x2530], esi
mov edi, dword [ebp - 0x2514]
jmp 0x46a4ee
cmp byte [ebp - 0x24fc], 0
je 0x46a60e
push 1
call fcn.00483379
pop ecx
mov esi, eax
cmp byte [ebp - 0x2504], 0
je 0x46a5c8
push dword [ebp - 0x2508]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov word [ebp - 0x2504], 0
mov dword [ebp - 0x2508], esi
push 1
call fcn.00483379
pop ecx
mov esi, eax
cmp byte [ebp - 0x236c], 0
je 0x46a5f7
push dword [ebp - 0x2370]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov byte [ebp - 0x236c], bl
mov dword [ebp - 0x2370], esi
mov byte [ebp - 0x236b], bl
jmp 0x46a6d9
push ecx
mov dl, byte [ebp - 0x24f9]
lea ecx, [ebp - 0x1014]
call fcn.00467808
mov esi, eax
test esi, esi
jne 0x46a648
call dword [sym.imp.msvcrt.dll__errno]
push dword [eax]
lea eax, [ebp - 0x1014]
push eax
push 0x4065e8
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
jmp 0x469753
cmp byte [ebp - 0x236c], 0
je 0x46a65e
push dword [ebp - 0x2370]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov byte [ebp - 0x236c], 1
mov dword [ebp - 0x2370], esi
mov al, byte [ebp - 0x24f9]
mov byte [ebp - 0x236b], al
cmp dword [0x4aa69c], 0
jne 0x46a6d9
push ecx
mov dl, al
lea ecx, [ebp - 0x1814]
call fcn.00467808
mov esi, eax
test esi, esi
jne 0x46a6aa
call dword [sym.imp.msvcrt.dll__errno]
push dword [eax]
lea eax, [ebp - 0x1814]
push eax
push 0x406668
jmp 0x46a63a
cmp byte [ebp - 0x2504], 0
je 0x46a6c0
push dword [ebp - 0x2508]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov byte [ebp - 0x2504], 1
mov dword [ebp - 0x2508], esi
mov cl, byte [ebp - 0x24f9]
mov byte [ebp - 0x2503], cl
push dword [ebp - 0x2510]
xor edx, edx
push 0xa
pop ecx
call fcn.0046d1ff
push ebx
push ebx
push edi
lea eax, [ebp - 0x2094]
push eax
call dword [sym.imp.ADVAPI32.dll_ProcessTrace]
mov esi, eax
test esi, esi
je 0x46a715
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
push 0x4066e8
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
xor eax, eax
lea edi, [ebp - 0x20a0]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 0xc
pop ecx
mov dword [ebp - 0x20a0], ecx
mov esi, dword [0x4aa6b4]
test esi, esi
je 0x46a75c
push 0xa
push 0x4076b4
cmp dword [0x4aa6b0], 0
jne 0x46a74f
mov ecx, esi
call dword [0x4ab2d4]
call esi
jmp 0x46a754
call fcn.00471d2a
pop ecx
pop ecx
mov ecx, dword [ebp - 0x20a0]
mov eax, dword [0x4a86f8]
cmp ecx, eax
jbe 0x46a767
mov ecx, eax
push ecx
push 0x4a86f8
lea eax, [ebp - 0x20a0]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0x21c8]
add eax, dword [ebp - 0x21c4]
add eax, dword [ebp - 0x21cc]
add eax, dword [ebp - 0x21d0]
add eax, dword [ebp - 0x2374]
add dword [ebp - 0x209c], eax
mov eax, dword [ebp - 0x2378]
add dword [ebp - 0x2098], eax
cmp dword [0x4aa69c], 0
jne 0x46a89e
mov eax, 0x406770
mov dword [ebp - 0x2578], eax
push 0x11
pop ecx
mov dword [ebp - 0x2574], ecx
push ecx
push eax
lea ecx, [ebp - 0x2508]
call fcn.0046787b
mov esi, ebx
mov dword [ebp - 0x2530], esi
cmp esi, dword [ebp - 0x2514]
jae 0x46a80a
mov eax, dword [ebp + esi*4 - 0x20f8]
push dword [eax]
push 0x406784
lea eax, [ebp - 0x2508]
push eax
call fcn.00467848
add esp, 0xc
inc esi
jmp 0x46a7dc
push ebx
push 0x989680
push dword [ebp - 0x21f4]
push dword [ebp - 0x21f8]
call fcn.00483670
push edx
push eax
push dword [ebp - 0x2098]
push dword [ebp - 0x209c]
push dword [0x4a02f0]
push dword [ebp - 0x21dc]
push dword [0x4aa6a0]
push 0x406790
lea eax, [ebp - 0x2508]
push eax
call fcn.00467848
push 0x4068e4
push 0x4068ec
push 0x406900
push 0x406914
push 0x406930
lea eax, [ebp - 0x2508]
push eax
call fcn.00467848
add esp, 0x3c
push dword [ebp - 0x2510]
call fcn.0046cd88
push 0x4a02f8
push 0x406ac8
lea eax, [ebp - 0x2508]
push eax
call fcn.00467848
add esp, 0xc
cmp dword [0x4a02f4], 0
je 0x46a8b3
push 0x402928
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
push dword [ebp - 0x2098]
push dword [ebp - 0x209c]
push dword [0x4a02f0]
push dword [ebp - 0x21dc]
push dword [0x4aa6a0]
push 0x406b80
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0x18
cmp byte [ebp - 0x24fc], 0
jne 0x469753
lea eax, [ebp - 0x1014]
push eax
push 0x406c4c
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
cmp dword [0x4aa69c], 0
jne 0x469753
lea eax, [ebp - 0x1814]
push eax
push 0x406c84
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x46a92f
xor ebx, ebx
push 0x405a50
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x469753