Function at 0x45fdc4
Capabilities:
Accept command line arguments
Get common file path
Get session user name

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xb3
push 0
push 0
dec ecx
jne 0x45fdcc
push ecx
push ebx
push esi
push edi
mov esi, edx
mov dword [ebp - 0x1c], eax
xor eax, eax
push ebp
push 0x4610bb
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x1c]
cmp dword [eax + 0x1a0], 0
jne 0x45fe20
mov dl, 1
mov eax, dword [0x43c9f8]
call fcn.00444c08
mov ebx, eax
mov eax, dword [ebp - 0x1c]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x1c]
add eax, 0x1a0
mov edx, ebx
test edx, edx
je 0x45fe1b
sub edx, 0xffffffc0
call fcn.0040909c
mov eax, esi
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x1a0]
call fcn.0040909c
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x1c4], 0
je 0x460f8b
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax + 0x1a0]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jne 0x460f8b
lea eax, [ebp - 0x18]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x1a0]
call fcn.0040909c
lea eax, [ebp - 0x49c]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x1a0]
mov ecx, 0x4610cc
call fcn.004090c8
mov eax, dword [ebp - 0x49c]
mov edx, dword [eax]
call dword [edx + 0x18]
xor eax, eax
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x45fff0
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4a4]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x224]
mov cx, 0x30
mov edx, 4
call fcn.0040e24c
push dword [ebp - 0x4a4]
push 0x4610e8
lea eax, [ebp - 0x4a8]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x226]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x4a8]
push 0x4610e8
lea eax, [ebp - 0x4ac]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x22a]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x4ac]
push 0x4610f8
lea eax, [ebp - 0x4b0]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x22c]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x4b0]
push 0x46110c
lea eax, [ebp - 0x4b4]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x22e]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x4b4]
push 0x46110c
lea eax, [ebp - 0x4b8]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x230]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x4b8]
push 0x4610f8
lea eax, [ebp - 0x4bc]
push eax
mov eax, dword [ebp - 0x1c]
movzx eax, word [eax + 0x232]
mov cx, 0x30
mov edx, 1
call fcn.0040e24c
push dword [ebp - 0x4bc]
push 0x46111c
lea eax, [ebp - 0x4a0]
mov edx, 0xe
call fcn.00407380
mov edx, dword [ebp - 0x4a0]
mov eax, 0x461130
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45fffa
xor eax, eax
push ebp
push 0x46002f
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4c0]
call fcn.00436220
mov edx, dword [ebp - 0x4c0]
mov eax, 0x461150
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460039
xor eax, eax
push ebp
push 0x46006e
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4c4]
call fcn.0045e66c
mov edx, dword [ebp - 0x4c4]
mov eax, 0x461178
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460078
xor eax, eax
push ebp
push 0x460117
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x20], 0x104
call sub.KERNEL32.DLL_GetVersion_1
test eax, 0x80000000
jne 0x4600be
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x236]
push eax
call sub.advapi32.dll_GetUserNameW
lea eax, [ebp - 0x10]
lea edx, [ebp - 0x236]
mov ecx, 0x105
call fcn.004070dc
jmp 0x4600e8
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x236]
push eax
call sub.advapi32.dll_GetUserNameA
lea eax, [ebp - 0x10]
lea edx, [ebp - 0x236]
mov dword [ebp - 0x4c8], edx
mov edx, dword [ebp - 0x4c8]
call fcn.004070f8
call fcn.0045e5ac
test al, al
je 0x4600fe
lea eax, [ebp - 0x10]
mov edx, 0x4611a4
call fcn.00407230
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x4611c4
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460121
xor eax, eax
push ebp
push 0x460208
push dword fs:[eax]
mov dword fs:[eax], esp
call sub.KERNEL32.DLL_GetVersion_1
test eax, 0x80000000
jne 0x46014a
lea eax, [ebp - 0x10]
mov edx, 0x4611e4
call fcn.00406f30
jmp 0x460154
lea eax, [ebp - 0x10]
xor edx, edx
call fcn.00406f30
lea eax, [ebp - 0x14]
push eax
push 0x4611f8
push dword [ebp - 0x10]
push 0x46123c
lea eax, [ebp - 0x4cc]
mov edx, 3
call fcn.00407380
mov edx, dword [ebp - 0x4cc]
mov ecx, 0x461268
mov eax, 0x80000002
call fcn.004362d4
lea eax, [ebp - 0x4d0]
push eax
push 0x4611f8
push dword [ebp - 0x10]
push 0x46123c
lea eax, [ebp - 0x4d4]
mov edx, 3
call fcn.00407380
mov edx, dword [ebp - 0x4d4]
mov ecx, 0x4612a4
mov eax, 0x80000002
call fcn.004362d4
mov edx, dword [ebp - 0x4d0]
lea eax, [ebp - 0x10]
call fcn.00406f30
cmp dword [ebp - 0x14], 0
je 0x4601ef
push dword [ebp - 0x10]
push 0x4612d0
push dword [ebp - 0x14]
lea eax, [ebp - 0x10]
mov edx, 3
call fcn.00407380
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x4612e4
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460212
xor eax, eax
push ebp
push 0x460247
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4d8]
call fcn.0045ea28
mov edx, dword [ebp - 0x4d8]
mov eax, 0x461314
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460251
xor eax, eax
push ebp
push 0x460286
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4dc]
call fcn.0045eae0
mov edx, dword [ebp - 0x4dc]
mov eax, 0x461344
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460290
xor eax, eax
push ebp
push 0x4602c5
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4e0]
call fcn.0045ebb4
mov edx, dword [ebp - 0x4e0]
mov eax, 0x461370
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4602cf
xor eax, eax
push ebp
push 0x460304
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4e4]
call fcn.0045ec10
mov edx, dword [ebp - 0x4e4]
mov eax, 0x46139c
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46030e
xor eax, eax
push ebp
push 0x46039b
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x10]
call fcn.0045ed24
cmp dword [ebp - 0x10], 0
je 0x460391
call fcn.0045ee28
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 1
jne 0x460349
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x4613c8
call fcn.0045fd20
pop ecx
jmp 0x460391
push ebp
lea eax, [ebp - 0x4ec]
push eax
mov cx, 0x30
mov edx, 1
mov eax, dword [ebp - 0x24]
call fcn.0040e150
push dword [ebp - 0x4ec]
push 0x4613e8
push dword [ebp - 0x10]
lea eax, [ebp - 0x4e8]
mov edx, 3
call fcn.00407380
mov edx, dword [ebp - 0x4e8]
mov eax, 0x4613fc
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4603a5
xor eax, eax
push ebp
push 0x4603da
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4f0]
call fcn.0045ef5c
mov edx, dword [ebp - 0x4f0]
mov eax, 0x461420
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4603e4
call sub.KERNEL32.DLL_GetVersion_1
test eax, 0x80000000
je 0x46042f
xor eax, eax
push ebp
push 0x460425
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x4f4]
call fcn.0045f0f0
mov edx, dword [ebp - 0x4f4]
mov eax, 0x46144c
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46042f
xor eax, eax
push ebp
push 0x460574
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x461470
push 0x461498
call sub.KERNEL32.DLL_GetModuleHandleW_2
push eax
call fcn.0040a328
mov dword [ebp - 8], eax
push 0x104
lea eax, [ebp - 0x236]
push eax
call sub.KERNEL32.DLL_GetWindowsDirectoryA
lea edx, [ebp - 0x10]
xor eax, eax
call fcn.00435a34
lea eax, [ebp - 0x10]
call fcn.00406050
movzx eax, byte [eax]
mov ebx, dword [0x67d534]
mov ebx, dword [ebx]
call ebx
mov ebx, eax
mov esi, dword [0x67d534]
mov esi, dword [esi]
lea eax, [ebp - 0x236]
movzx eax, byte [eax]
call esi
cmp bl, al
je 0x46052c
push ebp
push ebp
lea eax, [ebp - 0x500]
lea edx, [ebp - 0x236]
movzx edx, byte [edx]
mov ecx, 0
call fcn.00406114
mov eax, dword [ebp - 0x500]
lea edx, [ebp - 0x4fc]
call fcn.0045fb8c
pop ecx
push dword [ebp - 0x4fc]
push 0x4614c0
push ebp
lea eax, [ebp - 0x508]
mov edx, dword [ebp - 0x10]
movzx edx, byte [edx]
mov ecx, 0
call fcn.00406114
mov eax, dword [ebp - 0x508]
lea edx, [ebp - 0x504]
call fcn.0045fb8c
pop ecx
push dword [ebp - 0x504]
lea eax, [ebp - 0x4f8]
mov edx, 3
call fcn.00407380
mov edx, dword [ebp - 0x4f8]
mov eax, 0x4614d0
call fcn.0045fd20
pop ecx
jmp 0x46056a
push ebp
push ebp
lea eax, [ebp - 0x510]
lea edx, [ebp - 0x236]
movzx edx, byte [edx]
mov ecx, 0
call fcn.00406114
mov eax, dword [ebp - 0x510]
lea edx, [ebp - 0x50c]
call fcn.0045fb8c
pop ecx
mov edx, dword [ebp - 0x50c]
mov eax, 0x4614d0
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46057e
xor eax, eax
push ebp
push 0x4605b3
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x514]
call fcn.0045f1bc
mov edx, dword [ebp - 0x514]
mov eax, 0x4614fc
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4605bd
xor eax, eax
push ebp
push 0x460601
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x518]
push eax
call sub.KERNEL32.DLL_GetCurrentProcessId
mov cx, 0x30
mov edx, 1
call fcn.0040e2dc
mov edx, dword [ebp - 0x518]
mov eax, 0x461524
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46060b
xor eax, eax
push ebp
push 0x460640
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x51c]
call fcn.0045f3a4
mov edx, dword [ebp - 0x51c]
mov eax, 0x461548
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46064a
xor eax, eax
push ebp
push 0x46067f
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea eax, [ebp - 0x520]
call fcn.0045f3c8
mov edx, dword [ebp - 0x520]
mov eax, 0x461578
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460689
xor eax, eax
push ebp
push 0x46071f
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [0x66b590], 0
je 0x460715
call fcn.004035e0
test eax, eax
jle 0x460715
call sub.KERNEL32.DLL_GetVersion_1
test eax, 0x80000000
jne 0x4606db
push ebp
call sub.KERNEL32.DLL_GetCommandLineW_1
mov edx, eax
lea eax, [ebp - 0x524]
call fcn.00407088
mov edx, dword [ebp - 0x524]
mov eax, 0x4615ac
call fcn.0045fd20
pop ecx
jmp 0x460715
push ebp
call sub.KERNEL32.DLL_GetCommandLineA
mov edx, eax
lea eax, [ebp - 0x52c]
mov ecx, 0
call fcn.00406124
mov edx, dword [ebp - 0x52c]
lea eax, [ebp - 0x528]
call fcn.004070f8
mov edx, dword [ebp - 0x528]
mov eax, 0x4615ac
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460729
xor eax, eax
push ebp
push 0x460771
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
lea edx, [ebp - 0x534]
xor eax, eax
call fcn.00435a34
mov eax, dword [ebp - 0x534]
lea edx, [ebp - 0x530]
call fcn.0040f998
mov edx, dword [ebp - 0x530]
mov eax, 0x4615d4
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x46077b
xor eax, eax
push ebp
push 0x4607d5
push dword fs:[eax]
mov dword fs:[eax], esp
push 0
call sub.KERNEL32.DLL_GetModuleHandleW_2
cmp eax, dword [0x66b6ac]
je 0x4607cb
push ebp
lea edx, [ebp - 0x53c]
mov eax, dword [0x66b6ac]
call fcn.00435a34
mov eax, dword [ebp - 0x53c]
lea edx, [ebp - 0x538]
call fcn.0040f998
mov edx, dword [ebp - 0x538]
mov eax, 0x4615f8
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4607df
xor edx, edx
push ebp
push 0x460a57
push dword fs:[edx]
mov dword fs:[edx], esp
cmp byte [0x66b6b8], 0
je 0x460802
lea edx, [ebp - 0x10]
xor eax, eax
call fcn.00435a34
jmp 0x46080f
lea edx, [ebp - 0x10]
mov eax, dword [0x66b6ac]
call fcn.00435a34
call sub.KERNEL32.DLL_GetVersion_1
test eax, 0x80000000
jne 0x460832
lea eax, [ebp - 0x488]
push eax
mov eax, dword [ebp - 0x10]
call fcn.00406f68
push eax
call sub.KERNEL32.DLL_FindFirstFileW_1
jmp 0x46085d
lea eax, [ebp - 0x488]
push eax
lea eax, [ebp - 0x540]
mov edx, dword [ebp - 0x10]
mov ecx, 0
call fcn.00407120
mov eax, dword [ebp - 0x540]
call fcn.0040652c
push eax
call sub.KERNEL32.DLL_FindFirstFileA
cmp eax, 0xffffffff
je 0x460a4d
push eax
call sub.KERNEL32.DLL_FindClose_1
xor eax, eax
push ebp
push 0x4609d9
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x474]
push eax
lea eax, [ebp - 0x474]
push eax
call sub.KERNEL32.DLL_FileTimeToLocalFileTime
lea eax, [ebp - 0x498]
push eax
lea eax, [ebp - 0x474]
push eax
call sub.KERNEL32.DLL_FileTimeToSystemTime
cmp byte [0x66b6b8], 0
jne 0x4608b8
push 0
call sub.KERNEL32.DLL_GetModuleHandleW_2
cmp eax, dword [0x66b6ac]
jne 0x4608c7
lea eax, [ebp - 0x14]
mov edx, 0x461624
call fcn.00406f30
jmp 0x4608d4
lea eax, [ebp - 0x14]
mov edx, 0x46163c
call fcn.00406f30
push ebp
lea eax, [ebp - 0x548]
push eax
movzx eax, word [ebp - 0x498]
mov cx, 0x30
mov edx, 4
call fcn.0040e24c
push dword [ebp - 0x548]
push 0x4610e8
lea eax, [ebp - 0x54c]
push eax
movzx eax, word [ebp - 0x496]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x54c]
push 0x4610e8
lea eax, [ebp - 0x550]
push eax
movzx eax, word [ebp - 0x492]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x550]
push 0x4614c0
lea eax, [ebp - 0x554]
push eax
movzx eax, word [ebp - 0x490]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x554]
push 0x46110c
lea eax, [ebp - 0x558]
push eax
movzx eax, word [ebp - 0x48e]
mov cx, 0x30
mov edx, 2
call fcn.0040e24c
push dword [ebp - 0x558]
push 0x461658
lea eax, [ebp - 0x544]
mov edx, 0xa
call fcn.00407380
mov eax, dword [ebp - 0x544]
push eax
lea eax, [ebp - 0x55c]
mov ecx, 0x46166c
mov edx, dword [ebp - 0x14]
call fcn.004072b0
mov eax, dword [ebp - 0x55c]
pop edx
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4609e3
lea edx, [ebp - 0x560]
mov eax, dword [ebp - 0x1c]
call fcn.004411c0
cmp dword [ebp - 0x560], 0
jne 0x460a2d
lea edx, [ebp - 0x564]
mov eax, dword [ebp - 0x10]
call fcn.00419ee8
mov edx, dword [ebp - 0x564]
lea eax, [ebp - 0x10]
call fcn.00406f30
cmp dword [ebp - 0x10], 0
je 0x460a4d
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x461690
call fcn.0045fd20
pop ecx
jmp 0x460a4d
push ebp
lea edx, [ebp - 0x568]
mov eax, dword [ebp - 0x1c]
call fcn.004411c0
mov edx, dword [ebp - 0x568]
mov eax, 0x461690
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460a61
xor eax, eax
push ebp
push 0x460abe
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x4616a0
call sub.KERNEL32.DLL_GetModuleHandleW_2
mov ebx, eax
test ebx, ebx
je 0x460ab4
lea edx, [ebp - 0x56c]
mov eax, ebx
call fcn.00435a34
mov eax, dword [ebp - 0x56c]
mov ebx, dword [0x67d028]
mov ebx, dword [ebx]
lea edx, [ebp - 0x10]
call ebx
cmp dword [ebp - 0x10], 0
je 0x460ab4
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x4616c4
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460ac8
xor eax, eax
push ebp
push 0x460b80
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x460b22
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x66b6ac]
call fcn.0041ac74
cmp byte [eax + 0x1a], 2
je 0x460b07
push ebp
mov edx, 0x4616e8
mov eax, 0x461708
call fcn.0045fd20
pop ecx
jmp 0x460b18
push ebp
mov edx, 0x461730
mov eax, 0x461708
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460b3d
push ebp
lea eax, [ebp - 0x574]
mov edx, dword [0x66b580]
mov ecx, 0
call fcn.00406124
mov edx, dword [ebp - 0x574]
lea eax, [ebp - 0x570]
call fcn.004070f8
mov edx, dword [ebp - 0x570]
mov eax, 0x461754
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460b8a
lea ecx, [ebp - 0x14]
mov edx, 0x461784
mov eax, dword [ebp - 0x1c]
call fcn.004435d0
mov ebx, dword [0x67d478]
mov ebx, dword [ebx]
mov dl, 0x7c
mov eax, dword [ebp - 0x14]
call ebx
test eax, eax
jle 0x460d63
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], 1
xor eax, eax
push ebp
push 0x460d4d
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x10]
push eax
mov ebx, dword [0x67d5a0]
mov ebx, dword [ebx]
mov cl, 0x7c
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x14]
call ebx
mov eax, dword [0x681cb8]
call fcn.004085c8
mov ebx, eax
test ebx, ebx
jl 0x460d43
inc ebx
mov dword [ebp - 0x28], 0
mov esi, dword [ebp - 0x28]
mov eax, esi
add esi, esi
add esi, esi
add esi, esi
sub esi, eax
mov eax, dword [0x681cb8]
mov eax, dword [eax + esi*4]
mov edi, dword [0x67cce8]
mov edi, dword [edi]
mov edx, dword [ebp - 0x10]
call edi
test al, al
je 0x460d39
mov eax, dword [0x681cb8]
cmp byte [eax + esi*4 + 0x18], 0
jne 0x460d43
mov eax, dword [0x681cb8]
cmp dword [eax + esi*4 + 8], 0
je 0x460c7d
push ebp
mov eax, dword [0x681cb8]
mov ebx, dword [eax + esi*4 + 8]
lea eax, [ebp - 0x57c]
call ebx
mov edx, dword [ebp - 0x57c]
lea eax, [ebp - 0x578]
call fcn.004070f8
mov edx, dword [ebp - 0x578]
mov eax, dword [0x681cb8]
mov eax, dword [eax + esi*4]
call fcn.0045fd20
pop ecx
jmp 0x460d43
mov eax, dword [0x681cb8]
cmp dword [eax + esi*4 + 0xc], 0
je 0x460cb4
push ebp
mov eax, dword [0x681cb8]
mov ebx, dword [eax + esi*4 + 0xc]
lea eax, [ebp - 0x580]
call ebx
mov edx, dword [ebp - 0x580]
mov eax, dword [0x681cb8]
mov eax, dword [eax + esi*4]
call fcn.0045fd20
pop ecx
jmp 0x460d43
mov eax, dword [0x681cb8]
cmp dword [eax + esi*4 + 0x10], 0
je 0x460d05
push ebp
mov eax, dword [0x681cb8]
mov ebx, dword [eax + esi*4 + 0x10]
lea edx, [ebp - 0x588]
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x460cdc
sub eax, 0xfffffdc0
call ebx
mov edx, dword [ebp - 0x588]
lea eax, [ebp - 0x584]
call fcn.004070f8
mov edx, dword [ebp - 0x584]
mov eax, dword [0x681cb8]
mov eax, dword [eax + esi*4]
call fcn.0045fd20
pop ecx
jmp 0x460d43
push ebp
mov eax, dword [0x681cb8]
mov ebx, dword [eax + esi*4 + 0x14]
lea edx, [ebp - 0x58c]
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x460d21
sub eax, 0xfffffdc0
call ebx
mov edx, dword [ebp - 0x58c]
mov eax, dword [0x681cb8]
mov eax, dword [eax + esi*4]
call fcn.0045fd20
pop ecx
jmp 0x460d43
inc dword [ebp - 0x28]
dec ebx
jne 0x460bfb
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460d57
inc dword [ebp - 0x24]
dec dword [ebp - 0x2c]
jne 0x460bbb
mov eax, dword [ebp - 0xc]
dec eax
mov dword [ebp - 0x28], eax
xor eax, eax
push ebp
push 0x460d93
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov edx, 0x461798
mov eax, 0x4617d4
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460d9d
xor eax, eax
push ebp
push 0x460df5
push dword fs:[eax]
mov dword fs:[eax], esp
add dword [0x66c01c], 1
adc dword [0x66c020], 0
push ebp
push dword [0x66c020]
push dword [0x66c01c]
lea ecx, [ebp - 0x590]
mov dx, 0x30
mov eax, 1
call fcn.0040e298
mov edx, dword [ebp - 0x590]
mov eax, 0x4617fc
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460dff
xor eax, eax
push ebp
push 0x460ef2
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x1c]
cmp byte [eax + 0x4f], 1
je 0x460ec8
lea edx, [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
call fcn.0045f990
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
call fcn.0045f8f0
push ebp
mov edx, dword [ebp - 0x14]
mov eax, 0x46182c
call fcn.0045fd20
pop ecx
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x14]
call fcn.00407528
je 0x460ee8
lea edx, [ebp - 0x594]
mov eax, dword [ebp - 0x10]
call fcn.00438c60
mov edx, dword [ebp - 0x594]
lea eax, [ebp - 0x10]
call fcn.00406f30
push 0
mov ebx, dword [0x67d144]
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
mov ecx, 0x4614c0
mov edx, 0x461858
call ebx
push 0
mov ebx, dword [0x67d144]
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
mov ecx, 0x4614c0
mov edx, 0x461868
call ebx
push 1
mov ebx, dword [0x67d144]
mov ebx, dword [ebx]
lea eax, [ebp - 0x10]
mov ecx, 0x4614c0
mov edx, 0x461878
call ebx
push ebp
mov edx, dword [ebp - 0x10]
mov eax, 0x46188c
call fcn.0045fd20
pop ecx
jmp 0x460ee8
push ebp
lea edx, [ebp - 0x598]
mov eax, dword [ebp - 0x1c]
call fcn.00441234
mov edx, dword [ebp - 0x598]
mov eax, 0x46188c
call fcn.0045fd20
pop ecx
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460efc
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0xc]
xor eax, eax
push ebp
push 0x460f79
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
dec eax
test eax, eax
jl 0x460f48
inc eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x24]
mov ecx, dword [eax + edx*8 + 4]
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x24]
mov edx, dword [eax + edx*8]
mov eax, dword [ebp - 0x18]
mov ebx, dword [eax]
call dword [ebx + 0x28]
inc dword [ebp - 0x24]
dec dword [ebp - 0x2c]
jne 0x460f25
lea eax, [ebp - 0x59c]
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx + 0x1a0]
mov ecx, 0x4610cc
call fcn.004090c8
mov eax, dword [ebp - 0x59c]
mov edx, dword [ebp - 0x28]
mov ecx, dword [eax]
call dword [ecx + 0x14]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x460f83
mov eax, dword [ebp - 0x18]
mov edx, dword [eax]
call dword [edx + 0x10]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4610c5
lea eax, [ebp - 0x59c]
call fcn.00409084
lea eax, [ebp - 0x598]
mov edx, 4
call fcn.00406ed4
lea eax, [ebp - 0x588]
call fcn.00405e70
lea eax, [ebp - 0x584]
mov edx, 2
call fcn.00406ed4
lea eax, [ebp - 0x57c]
call fcn.00405e70
lea eax, [ebp - 0x578]
call fcn.00406ecc
lea eax, [ebp - 0x574]
call fcn.00405e70
lea eax, [ebp - 0x570]
mov edx, 0xc
call fcn.00406ed4
lea eax, [ebp - 0x540]
call fcn.00405e70
lea eax, [ebp - 0x53c]
mov edx, 4
call fcn.00406ed4
lea eax, [ebp - 0x52c]
call fcn.00405e70
lea eax, [ebp - 0x528]
mov edx, 6
call fcn.00406ed4
lea eax, [ebp - 0x510]
call fcn.00405e70
lea eax, [ebp - 0x50c]
call fcn.00406ecc
lea eax, [ebp - 0x508]
call fcn.00405e70
lea eax, [ebp - 0x504]
call fcn.00406ecc
lea eax, [ebp - 0x500]
call fcn.00405e70
lea eax, [ebp - 0x4fc]
mov edx, 0xd
call fcn.00406ed4
lea eax, [ebp - 0x4c4]
mov edx, 0xa
call fcn.00406ed4
lea eax, [ebp - 0x49c]
call fcn.00409084
lea eax, [ebp - 0x18]
call fcn.00409084
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.00406ed4
lea eax, [ebp - 4]
mov edx, dword [0x45fb58]
call fcn.004088a8
ret