Function at 0x41ed00
Capabilities:
Accept command line arguments
Get memory capacity
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4553d8
mov eax, dword fs:[0]
push eax
sub esp, 0x764
mov eax, dword [0x46c664]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov edi, edx
mov eax, dword [edi + 4]
push eax
mov edx, 2
lea ecx, [ebp - 0x614]
mov word [ebp - 0x614], 0xfeff
call fcn.0041a2c0
xor ebx, ebx
add esp, 4
cmp byte [esi + 0x60], bl
jne 0x420e9e
cmp byte [esi + 0x5e], bl
je 0x41ed90
mov eax, dword [edi + 4]
push 2
push ebx
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
jne 0x41ed7a
call fcn.0041a390
mov eax, dword [edi + 4]
push eax
mov edx, 0xc
mov ecx, 0x45eaec
call fcn.0041a2c0
add esp, 4
cmp byte [esi + 0x60], bl
jne 0x420e9e
mov esi, dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 0x8007
call esi
push str.NwSapFeiUt.dll
mov dword [ebp - 0x4b8], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x60c], eax
mov eax, dword [ebp - 0x4b8]
push eax
call esi
mov eax, dword [edi + 4]
push 2
push ebx
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
jne 0x41edde
call fcn.0041a390
xor ecx, ecx
push 3
mov eax, 0x45eb1c
lea esi, [ebp - 0x508]
mov dword [ebp - 0x4f4], 7
mov dword [ebp - 0x4f8], ebx
mov word [ebp - 0x508], cx
call fcn.0040e990
mov dword [ebp - 4], ebx
mov byte [ebp - 0x60d], bl
cmp dword [ebp - 0x60c], ebx
je 0x41ee9a
mov edx, dword [ebp - 0x60c]
push str.GetGeneralSystemInfo86
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x41ee8d
lea ecx, [ebp - 0x4c0]
pxor xmm0, xmm0
push ecx
movq qword [ebp - 0x4bc], xmm0
mov dword [ebp - 0x4c0], 0xc
call eax
mov eax, dword [ebp - 0x4bc]
add esp, 4
cmp eax, ebx
je 0x41ee80
mov ecx, eax
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x41ee65
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x508]
call fcn.0040e990
cmp byte [ebp - 0x4b8], bl
setne byte [ebp - 0x60d]
mov edx, dword [ebp - 0x60c]
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [edi + 4]
mov esi, dword [sym.imp.KERNEL32.dll_WriteFile]
push ebx
lea ecx, [ebp - 0x60c]
push ecx
push 0xa4
push str._r_n
push eax
mov dword [ebp - 0x60c], ebx
call esi
cmp eax, ebx
je 0x4212a2
cmp dword [ebp - 0x60c], 0xa4
jne 0x4212a2
mov eax, dword [edi + 4]
push ebx
lea edx, [ebp - 0x60c]
push edx
push 6
push 0x45ebe8
push eax
mov dword [ebp - 0x60c], ebx
call esi
cmp eax, ebx
je 0x421225
cmp dword [ebp - 0x60c], 6
jne 0x421225
mov eax, dword [edi + 4]
push ebx
lea ecx, [ebp - 0x60c]
push ecx
push ebx
push 0x45d498
push eax
mov dword [ebp - 0x60c], ebx
call esi
cmp eax, ebx
je 0x4211a8
cmp dword [ebp - 0x60c], ebx
jne 0x4211a8
mov eax, dword [edi + 4]
push ebx
lea edx, [ebp - 0x60c]
push edx
push 4
push 0x45ebf0
push eax
mov dword [ebp - 0x60c], ebx
call esi
cmp eax, ebx
je 0x42112b
cmp dword [ebp - 0x60c], 4
jne 0x42112b
lea eax, [ebp - 0x6c0]
push eax
call fcn.0040ca50
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x6b0]
push str.Logfile:_t_t
push ecx
call fcn.0040dc20
lea edx, [edi + 0x10]
push edx
push eax
call fcn.0040e660
mov eax, dword [edi + 4]
add esp, 0x10
push ebx
lea ecx, [ebp - 0x60c]
push ecx
push 6
push 0x45ebe8
push eax
mov dword [ebp - 0x60c], ebx
call esi
cmp eax, ebx
je 0x4210ae
cmp dword [ebp - 0x60c], 6
jne 0x4210ae
lea edx, [ebp - 0x470]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0xc
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41efed
cmp dword [eax + 0x14], 8
jb 0x41efef
mov eax, dword [eax]
jmp 0x41efef
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 9
cmp dword [ebp - 0x45c], 8
jb 0x41f018
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
push ebx
lea ecx, [ebp - 0x60c]
push ecx
push 4
push 0x45ebf0
xor edx, edx
push eax
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
mov dword [ebp - 0x60c], ebx
call esi
cmp eax, ebx
je 0x421031
cmp dword [ebp - 0x60c], 4
jne 0x421031
lea edx, [ebp - 0x6c8]
push edx
call fcn.00434c25
add esp, 4
lea eax, [ebp - 0x6c8]
push eax
lea ecx, [ebp - 0x5c8]
push ecx
call fcn.0043499d
add esp, 8
xor edx, edx
push ebx
mov eax, 0x45d498
lea esi, [ebp - 0x470]
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
call fcn.0040e990
mov byte [ebp - 4], 0xf
mov eax, esi
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 9
cmp dword [ebp - 0x45c], 8
jb 0x41f0dd
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
lea edx, [ebp - 0x5c8]
push edx
lea eax, [ebp - 0x450]
xor ecx, ecx
push 0x80
push eax
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call fcn.00434eb5
lea eax, [ebp - 0x450]
add esp, 0xc
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x41f120
sub eax, edx
sar eax, 1
cmp word [ebp + eax*2 - 0x452], 0xa
lea eax, [ebp + eax*2 - 0x450]
jne 0x41f147
xor ecx, ecx
mov word [eax - 2], cx
lea edx, [ebp - 0x450]
push edx
push ecx
lea eax, [ebp - 0x6b0]
push str.Started_logging:_t
push eax
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0040dc20
mov eax, dword [edi + 4]
add esp, 8
push ebx
lea ecx, [ebp - 0x60c]
push ecx
push 6
push 0x45ebe8
push eax
mov dword [ebp - 0x60c], ebx
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebx
je 0x420fb4
cmp dword [ebp - 0x60c], 6
jne 0x420fb4
lea edx, [ebp - 0x470]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0x12
mov ecx, dword [eax + 0x10]
mov esi, dword [edi + 4]
cmp ecx, ebx
je 0x41f1cb
cmp dword [eax + 0x14], 8
jb 0x41f1cd
mov eax, dword [eax]
jmp 0x41f1cd
xor eax, eax
lea edx, [ecx + ecx]
push esi
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 9
cmp dword [ebp - 0x45c], 8
jb 0x41f1f7
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
push ebx
lea ecx, [ebp - 0x60c]
push ecx
push 4
push 0x45ebf0
xor edx, edx
push eax
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
mov dword [ebp - 0x60c], ebx
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebx
je 0x420f37
cmp dword [ebp - 0x60c], 4
jne 0x420f37
xor edx, edx
push ebx
mov eax, 0x45d498
lea esi, [ebp - 0x470]
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
call fcn.0040e990
mov byte [ebp - 4], 0x15
mov eax, esi
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 9
cmp dword [ebp - 0x45c], 8
jb 0x41f29b
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
lea edx, [ebp - 0x508]
push edx
xor ecx, ecx
push ecx
lea eax, [ebp - 0x6b0]
push str.Operating_system:_t
push eax
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0040e660
mov eax, dword [edi + 4]
add esp, 8
push ebx
lea ecx, [ebp - 0x60c]
push ecx
push 6
push 0x45ebe8
push eax
mov dword [ebp - 0x60c], ebx
call dword [sym.imp.KERNEL32.dll_WriteFile]
cmp eax, ebx
je 0x420eba
cmp dword [ebp - 0x60c], 6
jne 0x420eba
lea edx, [ebp - 0x4d0]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0x18
mov ecx, dword [eax + 0x10]
mov esi, dword [edi + 4]
cmp ecx, ebx
je 0x41f338
cmp dword [eax + 0x14], 8
jb 0x41f33a
mov eax, dword [eax]
jmp 0x41f33a
xor eax, eax
lea edx, [ecx + ecx]
push esi
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 9
cmp dword [ebp - 0x4bc], 8
jb 0x41f364
mov ecx, dword [ebp - 0x4d0]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor edx, edx
mov esi, 7
mov word [ebp - 0x4d0], dx
push eax
lea edx, [esi - 3]
mov ecx, 0x45ebf0
mov dword [ebp - 0x4bc], esi
mov dword [ebp - 0x4c0], ebx
call fcn.0041a2c0
xor eax, eax
add esp, 4
mov dword [ebp - 0x45c], esi
mov word [ebp - 0x470], ax
push ebx
mov eax, 0x45d498
lea esi, [ebp - 0x470]
mov dword [ebp - 0x460], ebx
call fcn.0040e990
mov byte [ebp - 4], 0x19
mov eax, esi
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 9
cmp dword [ebp - 0x45c], 8
jb 0x41f3e5
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
xor edx, edx
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
mov esi, str.__Administrator_
cmp byte [ebp - 0x60d], bl
jne 0x41f410
mov esi, 0x45d498
lea eax, [ebp - 0x470]
push eax
call fcn.0041aea0
add esp, 4
mov byte [ebp - 4], 0x1a
push esi
push ecx
push eax
push ecx
lea ecx, [ebp - 0x6b0]
push str.Executing_user:_t
push ecx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0040e660
add esp, 0xc
push eax
call fcn.0040dc20
add esp, 8
mov byte [ebp - 4], 9
mov esi, 8
cmp dword [ebp - 0x45c], esi
jb 0x41f46d
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov word [ebp - 0x470], ax
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
lea ecx, [ebp - 0x4d0]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.004052e0
mov byte [ebp - 4], 0x1b
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41f4c6
cmp dword [eax + 0x14], esi
jb 0x41f4c8
mov eax, dword [eax]
jmp 0x41f4c8
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 9
cmp dword [ebp - 0x4bc], esi
jb 0x41f4f0
mov eax, dword [ebp - 0x4d0]
push eax
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor ecx, ecx
mov esi, 7
mov word [ebp - 0x4d0], cx
push eax
lea edx, [esi - 3]
mov ecx, 0x45ebf0
mov dword [ebp - 0x4bc], esi
mov dword [ebp - 0x4c0], ebx
call fcn.0041a2c0
lea edx, [ebp - 0x524]
add esp, 4
push edx
call fcn.0041a680
add esp, 4
mov byte [ebp - 4], 0x1c
lea eax, [ebp - 0x55c]
push eax
call fcn.00418ce0
add esp, 4
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x540]
push ecx
call fcn.0041ab90
add esp, 4
mov byte [ebp - 4], 0x1e
mov dword [ebp - 0x45c], esi
xor edx, edx
push ebx
mov eax, 0x45d498
lea esi, [ebp - 0x470]
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
call fcn.0040e990
mov byte [ebp - 4], 0x1f
mov eax, esi
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f5aa
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
lea edx, [ebp - 0x540]
push edx
xor ecx, ecx
push ecx
lea eax, [ebp - 0x6b0]
push str.Workstation_name:_t
push eax
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0040e660
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 0xc
lea ecx, [ebp - 0x4d0]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.004052e0
mov byte [ebp - 4], 0x20
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41f626
cmp dword [eax + 0x14], 8
jb 0x41f628
mov eax, dword [eax]
jmp 0x41f628
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x4bc], 8
jb 0x41f651
mov eax, dword [ebp - 0x4d0]
push eax
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor ecx, ecx
mov esi, 7
mov word [ebp - 0x4d0], cx
push eax
lea edx, [esi - 3]
mov ecx, 0x45ebf0
mov dword [ebp - 0x4bc], esi
mov dword [ebp - 0x4c0], ebx
call fcn.0041a2c0
add esp, 4
mov dword [ebp - 0x45c], esi
xor edx, edx
push ebx
mov eax, 0x45d498
lea esi, [ebp - 0x470]
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
call fcn.0040e990
mov byte [ebp - 4], 0x21
mov eax, esi
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f6d2
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
lea edx, [ebp - 0x6b0]
xor ecx, ecx
push str.Windows_directory:_t
mov esi, 7
push edx
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call fcn.0040dc20
lea ecx, [ebp - 0x524]
push ecx
push eax
call fcn.0040e660
mov eax, dword [edi + 4]
push eax
lea edx, [esi - 1]
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 0x14
lea edx, [ebp - 0x470]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0x22
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41f749
cmp dword [eax + 0x14], 8
jb 0x41f74b
mov eax, dword [eax]
jmp 0x41f74b
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f774
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor edx, edx
mov word [ebp - 0x470], dx
push eax
mov edx, 4
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
call fcn.0040ea80
mov byte [ebp - 4], 0x23
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f7e0
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
lea edx, [ebp - 0x6b0]
xor ecx, ecx
push str.Temp_directory:_t
push edx
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call fcn.0040dc20
lea ecx, [ebp - 0x55c]
push ecx
push eax
call fcn.0040e660
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 0x14
lea edx, [ebp - 0x470]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0x24
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41f854
cmp dword [eax + 0x14], 8
jb 0x41f856
mov eax, dword [eax]
jmp 0x41f856
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f87f
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor edx, edx
mov word [ebp - 0x470], dx
push eax
mov edx, 4
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
call fcn.0040ea80
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f8eb
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
lea edx, [ebp - 0x470]
xor ecx, ecx
push edx
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call fcn.00418ee0
add esp, 4
mov dword [ebp - 0x4b8], eax
mov byte [ebp - 4], 0x26
lea eax, [ebp - 0x6b0]
push str.Working_directory:_t
push eax
call fcn.0040dc20
mov ecx, dword [ebp - 0x4b8]
push ecx
push eax
call fcn.0040e660
add esp, 0x10
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f956
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov word [ebp - 0x470], ax
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
lea ecx, [ebp - 0x470]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.004052e0
mov byte [ebp - 4], 0x28
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41f9ac
cmp dword [eax + 0x14], 8
jb 0x41f9ae
mov eax, dword [eax]
jmp 0x41f9ae
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x45c], 8
jb 0x41f9d7
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor ecx, ecx
mov word [ebp - 0x470], cx
lea edx, [ecx + 4]
push eax
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
xor edx, edx
mov ecx, 0x45d498
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 4
mov ecx, 0x45ebf0
call fcn.0041a2c0
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea ecx, [ebp - 0x4ec]
call fcn.0040ea80
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x4d8], 8
mov esi, dword [ebp - 0x4ec]
jae 0x41fa69
lea esi, [ebp - 0x4ec]
mov edx, dword [ebp - 0x4dc]
lea eax, [esi + edx*2]
mov dword [ebp - 0x4b8], eax
cmp esi, eax
ja 0x41fabe
lea esp, [esp]
push 3
push 0x45ed40
push esi
call fcn.00434c76
add esp, 0xc
add esi, 2
test eax, eax
jne 0x41fab6
cmp word [esi], bx
je 0x41fab6
lea esp, [esp]
cmp word [esi], 0x20
je 0x41fab6
mov eax, 0x20
mov word [esi], ax
add esi, 2
cmp word [esi], bx
jne 0x41faa0
cmp esi, dword [ebp - 0x4b8]
jbe 0x41fa80
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
call fcn.0040ea80
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x45c], 8
jb 0x41faff
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
push 0x45ed48
push ecx
lea eax, [ebp - 0x4ec]
push eax
push ecx
lea ecx, [ebp - 0x6b0]
xor edx, edx
push 0x45ed4c
mov esi, 7
push ecx
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0040e660
add esp, 0xc
push eax
call fcn.0040dc20
mov eax, dword [edi + 4]
push eax
lea edx, [esi - 1]
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 0xc
lea edx, [ebp - 0x470]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0x2b
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41fb89
cmp dword [eax + 0x14], 8
jb 0x41fb8b
mov eax, dword [eax]
jmp 0x41fb8b
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x45c], 8
jb 0x41fbb4
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor edx, edx
mov word [ebp - 0x470], dx
push eax
mov edx, 4
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
call fcn.0040ea80
mov byte [ebp - 4], 0x2c
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x45c], 8
jb 0x41fc20
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
lea edx, [ebp - 0x470]
xor ecx, ecx
push edx
mov dword [ebp - 0x45c], 7
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call fcn.0041b0c0
add esp, 4
mov dword [ebp - 0x4b8], eax
mov byte [ebp - 4], 0x2d
lea eax, [ebp - 0x6b0]
push str.Executable:_t_t
push eax
call fcn.0040dc20
mov ecx, dword [ebp - 0x4b8]
mov esi, eax
push ecx
push esi
call fcn.0040e660
push 0x45ed48
push esi
call fcn.0040dc20
add esp, 0x18
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x45c], 8
jb 0x41fc9c
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov word [ebp - 0x470], ax
mov eax, dword [edi + 4]
mov esi, 7
push eax
lea edx, [esi - 1]
mov ecx, 0x45ebe8
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
lea ecx, [ebp - 0x470]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.004052e0
mov byte [ebp - 4], 0x2f
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41fcf5
cmp dword [eax + 0x14], 8
jb 0x41fcf7
mov eax, dword [eax]
jmp 0x41fcf7
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x29
cmp dword [ebp - 0x45c], 8
jb 0x41fd20
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor ecx, ecx
mov word [ebp - 0x470], cx
lea edx, [ecx + 4]
push eax
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
lea edx, [ebp - 0x470]
add esp, 4
push edx
xor ecx, ecx
call fcn.0041b0c0
add esp, 4
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x580]
push ecx
push eax
call fcn.004174b0
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x41fd87
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov word [ebp - 0x470], ax
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0040ea80
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x41fddd
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
xor edx, edx
lea ecx, [ebp - 0x580]
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], dx
call fcn.0041e5f0
push eax
push ecx
lea eax, [ebp - 0x6b0]
push str.Version:_t_t
push eax
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0040dc20
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 0xc
lea ecx, [ebp - 0x470]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.004052e0
mov byte [ebp - 4], 0x35
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41fe5a
cmp dword [eax + 0x14], 8
jb 0x41fe5c
mov eax, dword [eax]
jmp 0x41fe5c
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x41fe85
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor ecx, ecx
mov word [ebp - 0x470], cx
lea edx, [ecx + 4]
push eax
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
call fcn.0040ea80
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x41feef
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], ax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push ecx
lea ecx, [ebp - 0x6b0]
push str.ProcessId:_t_t
push ecx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0041bd10
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 4
lea edx, [ebp - 0x470]
push edx
lea eax, [ebp - 0x6c0]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0x37
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x41ff67
cmp dword [eax + 0x14], 8
jb 0x41ff69
mov eax, dword [eax]
jmp 0x41ff69
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x41ff92
mov ecx, dword [ebp - 0x470]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor edx, edx
mov word [ebp - 0x470], dx
push eax
mov edx, 4
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
call fcn.0040ea80
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x41fffe
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], cx
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push ecx
lea edx, [ebp - 0x6b0]
push str.ThreadId:_t_t
push edx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0041bd10
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 4
lea eax, [ebp - 0x470]
push eax
lea ecx, [ebp - 0x6c0]
push ecx
call fcn.004052e0
mov byte [ebp - 4], 0x39
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x420076
cmp dword [eax + 0x14], 8
jb 0x420078
mov eax, dword [eax]
jmp 0x420078
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x4200a1
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov word [ebp - 0x470], ax
mov eax, dword [edi + 4]
push eax
mov edx, 4
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
push 0x3c
lea ecx, [ebp - 0x604]
push ebx
push ecx
call fcn.0043a080
add esp, 0xc
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
mov dword [ebp - 0x608], 0x40
call fcn.0040ea80
mov byte [ebp - 4], 0x3a
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x420129
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
lea ecx, [ebp - 0x608]
xor eax, eax
push ecx
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], ax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x420245
mov eax, dword [ebp - 0x5fc]
mov edx, dword [ebp - 0x600]
push str._MB_free
push ecx
mov ecx, eax
mov dword [ebp - 0x4c0], edx
and eax, 0x7fffffff
mov dword [ebp - 0x4bc], eax
fild qword [ebp - 0x4c0]
and ecx, 0x80000000
mov dword [ebp - 0x4bc], ecx
mov dword [ebp - 0x4c0], ebx
fild qword [ebp - 0x4c0]
sub esp, 8
fchs
faddp st(1)
fmul qword [0x460d78]
fstp qword [esp]
call fcn.00434880
add esp, 8
call fcn.0044f7a0
push eax
mov eax, dword [ebp - 0x5f4]
push ecx
push str._MB_of
push ecx
mov ecx, dword [ebp - 0x5f8]
mov dword [ebp - 0x4c0], ecx
mov ecx, eax
and eax, 0x7fffffff
mov dword [ebp - 0x4bc], eax
fild qword [ebp - 0x4c0]
and ecx, 0x80000000
mov dword [ebp - 0x4bc], ecx
mov dword [ebp - 0x4c0], ebx
fild qword [ebp - 0x4c0]
sub esp, 8
fchs
faddp st(1)
fmul qword [0x460d78]
fstp qword [esp]
call fcn.00434880
add esp, 8
call fcn.0044f7a0
push eax
push ecx
lea edx, [ebp - 0x6b0]
push str.Physical_memory:_t
push edx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.00411110
add esp, 4
push eax
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.00411110
jmp 0x42026d
push 0x45ee20
push ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push ecx
lea eax, [ebp - 0x6b0]
push 0x45ee24
push eax
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0041bd10
add esp, 4
push eax
call fcn.0040dc20
mov eax, dword [edi + 4]
add esp, 8
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 4
lea ecx, [ebp - 0x470]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.004052e0
mov byte [ebp - 4], 0x3b
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x4202ba
cmp dword [eax + 0x14], 8
jb 0x4202bc
mov eax, dword [eax]
jmp 0x4202bc
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x4202e5
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor ecx, ecx
mov word [ebp - 0x470], cx
lea edx, [ecx + 4]
push eax
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
add esp, 4
mov eax, 0x45d498
lea ecx, [ebp - 0x470]
call fcn.0040ea80
mov byte [ebp - 4], 0x3c
lea eax, [ebp - 0x470]
lea ecx, [ebp - 0x6a8]
call fcn.00426000
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x42034f
mov edx, dword [ebp - 0x470]
push edx
call fcn.0043266a
add esp, 4
lea ecx, [ebp - 0x4c8]
xor eax, eax
push ecx
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
mov word [ebp - 0x470], ax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
lea edx, [ebp - 0x4c0]
push edx
call dword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
lea eax, [ebp - 0x6b0]
push str.System_Uptime:_t
push eax
call fcn.0040dc20
push eax
lea eax, [ebp - 0x4c8]
call fcn.0041e820
mov eax, dword [edi + 4]
add esp, 0xc
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 4
lea ecx, [ebp - 0x470]
push ecx
lea edx, [ebp - 0x6c0]
push edx
call fcn.004052e0
mov byte [ebp - 4], 0x3d
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x4203df
cmp dword [eax + 0x14], 8
jb 0x4203e1
mov eax, dword [eax]
jmp 0x4203e1
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x45c], 8
jb 0x42040a
mov eax, dword [ebp - 0x470]
push eax
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor ecx, ecx
mov word [ebp - 0x470], cx
lea edx, [ecx + 4]
push eax
mov ecx, 0x45ebf0
mov dword [ebp - 0x45c], esi
mov dword [ebp - 0x460], ebx
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
xor edx, edx
mov ecx, 0x45d498
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 4
mov ecx, 0x45ebf0
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 0x38
mov ecx, str.System_libraries_information
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 4
mov ecx, 0x45ebf0
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 0x38
mov ecx, str.____________________________
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 4
mov ecx, 0x45ebf0
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
xor edx, edx
mov ecx, 0x45d498
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 4
mov ecx, 0x45ebf0
call fcn.0041a2c0
movq xmm0, qword [str.atl.dll]
add esp, 4
push 0x30
lea edx, [ebp - 0x340]
movq qword [ebp - 0x350], xmm0
movq xmm0, qword [0x45eef8]
push ebx
push edx
movq qword [ebp - 0x348], xmm0
call fcn.0043a080
movq xmm0, qword [str.comctl32.dll]
movzx eax, word [0x45eaa0]
mov ecx, dword [0x45ef10]
movq qword [ebp - 0x310], xmm0
movq xmm0, qword [0x45ea90]
movq qword [ebp - 0x308], xmm0
movq xmm0, qword [0x45ea98]
add esp, 0xc
movq qword [ebp - 0x300], xmm0
pxor xmm0, xmm0
movq qword [ebp - 0x2f6], xmm0
movq qword [ebp - 0x2ee], xmm0
movq qword [ebp - 0x2e6], xmm0
movq qword [ebp - 0x2de], xmm0
movq xmm0, qword [str.mfc42.dll]
push 0x2c
lea edx, [ebp - 0x2bc]
movq qword [ebp - 0x2d0], xmm0
movq xmm0, qword [0x45ef08]
push ebx
push edx
mov word [ebp - 0x2f8], ax
mov dword [ebp - 0x2d6], ebx
mov word [ebp - 0x2d2], bx
movq qword [ebp - 0x2c8], xmm0
mov dword [ebp - 0x2c0], ecx
call fcn.0043a080
movq xmm0, qword [str.msvcrt.dll]
movzx ecx, word [0x45ef28]
mov eax, dword [0x45ef24]
add esp, 0xc
push 0x2a
lea edx, [ebp - 0x27a]
movq qword [ebp - 0x290], xmm0
movq xmm0, qword [0x45ef1c]
push ebx
push edx
movq qword [ebp - 0x288], xmm0
mov dword [ebp - 0x280], eax
mov word [ebp - 0x27c], cx
call fcn.0043a080
movq xmm0, qword [str.oleaut32.dll]
movzx eax, word [0x45ef44]
movq qword [ebp - 0x250], xmm0
movq xmm0, qword [0x45ef34]
movq qword [ebp - 0x248], xmm0
movq xmm0, qword [0x45ef3c]
movq qword [ebp - 0x240], xmm0
pxor xmm0, xmm0
movq qword [ebp - 0x236], xmm0
movq qword [ebp - 0x22e], xmm0
movq qword [ebp - 0x226], xmm0
movq qword [ebp - 0x21e], xmm0
movq xmm0, qword [str.shell32.dll]
movq qword [ebp - 0x210], xmm0
movq xmm0, qword [0x45eaac]
movq qword [ebp - 0x208], xmm0
movq xmm0, qword [0x45eab4]
movq qword [ebp - 0x200], xmm0
pxor xmm0, xmm0
movq qword [ebp - 0x1f8], xmm0
movq qword [ebp - 0x1f0], xmm0
movq qword [ebp - 0x1e8], xmm0
movq qword [ebp - 0x1e0], xmm0
movq qword [ebp - 0x1d8], xmm0
movq xmm0, qword [str.shlwapi.dll]
add esp, 0xc
mov word [ebp - 0x238], ax
mov dword [ebp - 0x216], ebx
mov word [ebp - 0x212], bx
movq qword [ebp - 0x1d0], xmm0
movq xmm0, qword [0x45ef50]
movq qword [ebp - 0x1c8], xmm0
movq xmm0, qword [0x45ef58]
movq qword [ebp - 0x1c0], xmm0
pxor xmm0, xmm0
movq qword [ebp - 0x1b8], xmm0
movq qword [ebp - 0x1b0], xmm0
movq qword [ebp - 0x1a8], xmm0
movq qword [ebp - 0x1a0], xmm0
movq qword [ebp - 0x198], xmm0
movq xmm0, qword [str.msi.dll]
push 0x30
lea ecx, [ebp - 0x180]
movq qword [ebp - 0x190], xmm0
movq xmm0, qword [0x45ef68]
push ebx
push ecx
movq qword [ebp - 0x188], xmm0
call fcn.0043a080
movq xmm0, qword [str.NwSapSetupEngine.dll]
movq qword [ebp - 0x150], xmm0
movq xmm0, qword [0x45ef78]
movq qword [ebp - 0x148], xmm0
movq xmm0, qword [0x45ef80]
movq qword [ebp - 0x140], xmm0
movq xmm0, qword [0x45ef88]
movq qword [ebp - 0x138], xmm0
movq xmm0, qword [0x45ef90]
movq qword [ebp - 0x130], xmm0
pxor xmm0, xmm0
movq qword [ebp - 0x126], xmm0
movq qword [ebp - 0x11e], xmm0
movq xmm0, qword [str.NwSapSetupATLCommon.dll]
movq qword [ebp - 0x110], xmm0
movq xmm0, qword [0x45efa4]
movzx edx, word [0x45ef98]
movq qword [ebp - 0x108], xmm0
movq xmm0, qword [0x45efac]
movq qword [ebp - 0x100], xmm0
movq xmm0, qword [0x45efb4]
movzx eax, word [0x45efec]
movq qword [ebp - 0xf8], xmm0
movq xmm0, qword [0x45efbc]
mov ecx, dword [0x45eb14]
movq qword [ebp - 0xf0], xmm0
movq xmm0, qword [0x45efc4]
movq qword [ebp - 0xe8], xmm0
pxor xmm0, xmm0
movq qword [ebp - 0xe0], xmm0
movq qword [ebp - 0xd8], xmm0
movq xmm0, qword [str.NwSapSetupUi.dll]
movq qword [ebp - 0xd0], xmm0
movq xmm0, qword [0x45efd4]
movq qword [ebp - 0xc8], xmm0
movq xmm0, qword [0x45efdc]
movq qword [ebp - 0xc0], xmm0
movq xmm0, qword [0x45efe4]
movq qword [ebp - 0xb8], xmm0
pxor xmm0, xmm0
movq qword [ebp - 0xae], xmm0
movq qword [ebp - 0xa6], xmm0
movq qword [ebp - 0x9e], xmm0
movq xmm0, qword [str.NwSapFeiUt.dll]
movq qword [ebp - 0x90], xmm0
movq xmm0, qword [0x45eb04]
mov word [ebp - 0x128], dx
movzx edx, word [0x45eb18]
movq qword [ebp - 0x88], xmm0
movq xmm0, qword [0x45eb0c]
movq qword [ebp - 0x80], xmm0
pxor xmm0, xmm0
add esp, 0xc
mov dword [ebp - 0x116], ebx
mov word [ebp - 0x112], bx
mov word [ebp - 0xb0], ax
mov dword [ebp - 0x96], ebx
mov word [ebp - 0x92], bx
mov dword [ebp - 0x78], ecx
mov word [ebp - 0x74], dx
movq qword [ebp - 0x72], xmm0
movq qword [ebp - 0x6a], xmm0
movzx ecx, word [0x45f00c]
mov eax, dword [0x45f008]
movq qword [ebp - 0x62], xmm0
movq qword [ebp - 0x5a], xmm0
movq xmm0, qword [str.NwSapFeiLg.dll]
movq qword [ebp - 0x50], xmm0
movq xmm0, qword [0x45eff8]
movq qword [ebp - 0x48], xmm0
movq xmm0, qword [0x45f000]
movq qword [ebp - 0x40], xmm0
pxor xmm0, xmm0
lea edx, [ebp - 0x710]
mov word [ebp - 0x52], bx
mov dword [ebp - 0x38], eax
mov word [ebp - 0x34], cx
movq qword [ebp - 0x32], xmm0
movq qword [ebp - 0x2a], xmm0
movq qword [ebp - 0x22], xmm0
movq qword [ebp - 0x1a], xmm0
mov word [ebp - 0x12], bx
mov dword [ebp - 0x60c], ebx
mov dword [ebp - 0x4b8], edx
jmp 0x4209f0
mov esi, dword [ebp - 0x60c]
cmp esi, 8
jne 0x420aed
mov eax, dword [edi + 4]
push eax
lea edx, [esi - 2]
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
xor edx, edx
mov ecx, 0x45d498
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi - 4]
mov ecx, 0x45ebf0
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi - 2]
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi + 0x36]
mov ecx, str.SAP_Setup_libraries_information
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi - 4]
mov ecx, 0x45ebf0
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi - 2]
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi + 0x36]
mov ecx, str._______________________________
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi - 4]
mov ecx, 0x45ebf0
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi - 2]
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
xor edx, edx
mov ecx, 0x45d498
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
lea edx, [esi - 4]
mov ecx, 0x45ebf0
call fcn.0041a2c0
add esp, 4
shl esi, 6
lea esi, [ebp + esi - 0x350]
push esi
lea eax, [ebp - 0x48c]
push eax
call fcn.00415630
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x5a4]
push ecx
push eax
call fcn.004174b0
mov byte [ebp - 4], 0x40
cmp dword [ebp - 0x478], 8
jb 0x420b31
mov edx, dword [ebp - 0x48c]
push edx
call fcn.0043266a
add esp, 4
lea ecx, [ebp - 0x770]
xor eax, eax
push ecx
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
mov word [ebp - 0x48c], ax
call fcn.0040ca50
mov byte [ebp - 4], 0x42
push ebx
lea edx, [ebp - 0x468]
push 0x17
push edx
call fcn.0043125a
mov edx, dword [eax + 0xc]
mov ecx, dword [ebp - 0x760]
mov ecx, dword [ecx + 4]
add esp, 0xc
push edx
mov edx, dword [eax + 8]
mov eax, dword [eax]
lea ecx, [ebp + ecx - 0x760]
push edx
push ecx
call eax
add esp, 0xc
push str.:
push ecx
lea ecx, [ebp - 0x760]
push esi
push ecx
call fcn.0040dc20
add esp, 0xc
push eax
call fcn.0040dc20
add esp, 8
lea ecx, [ebp - 0x5a4]
mov esi, eax
call fcn.0041e5f0
push eax
push esi
call fcn.0040dc20
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
add esp, 0xc
lea edx, [ebp - 0x4ac]
push edx
lea eax, [ebp - 0x770]
push eax
call fcn.004052e0
mov byte [ebp - 4], 0x43
mov edx, dword [eax + 0x10]
mov ecx, dword [edi + 4]
cmp edx, ebx
je 0x420c00
cmp dword [eax + 0x14], 8
jb 0x420c02
mov eax, dword [eax]
jmp 0x420c02
xor eax, eax
push ecx
add edx, edx
mov ecx, eax
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x42
cmp dword [ebp - 0x498], 8
jb 0x420c2b
mov ecx, dword [ebp - 0x4ac]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [edi + 4]
xor edx, edx
mov esi, 7
mov word [ebp - 0x4ac], dx
push eax
lea edx, [esi - 3]
mov ecx, 0x45ebf0
mov dword [ebp - 0x498], esi
mov dword [ebp - 0x49c], ebx
call fcn.0041a2c0
add esp, 4
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0x710]
call fcn.0040d930
mov dword [ebp - method.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0x710]
push eax
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0043060b
add esp, 4
mov byte [ebp - 4], 0x32
cmp dword [ebp - 0x588], 8
jb 0x420cab
mov ecx, dword [ebp - 0x59c]
push ecx
call fcn.0043266a
add esp, 4
mov eax, dword [ebp - 0x60c]
inc eax
xor edx, edx
mov dword [ebp - 0x588], esi
mov dword [ebp - 0x58c], ebx
mov word [ebp - 0x59c], dx
mov dword [ebp - 0x60c], eax
cmp eax, 0xc
jl 0x4209f0
mov eax, dword [edi + 4]
push eax
mov edx, 6
mov ecx, 0x45ebe8
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
xor edx, edx
mov ecx, 0x45d498
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 4
mov ecx, 0x45ebf0
call fcn.0041a2c0
mov eax, dword [edi + 4]
add esp, 4
push eax
mov edx, 0xac
mov ecx, str._r_n_r_n_r_n
call fcn.0041a2c0
mov edi, dword [edi + 4]
add esp, 4
push edi
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
mov byte [ebp - 4], 0x29
mov esi, 8
cmp dword [ebp - 0x564], esi
jb 0x420d55
mov eax, dword [ebp - 0x578]
push eax
call fcn.0043266a
add esp, 4
mov edi, 7
xor ecx, ecx
mov dword [ebp - 0x564], edi
mov dword [ebp - 0x568], ebx
mov word [ebp - 0x578], cx
mov byte [ebp - 4], 0x1e
cmp dword [ebp - 0x4d8], esi
jb 0x420d8a
mov edx, dword [ebp - 0x4ec]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov dword [ebp - 0x4d8], edi
mov dword [ebp - 0x4dc], ebx
mov word [ebp - 0x4ec], ax
mov byte [ebp - 4], 0x1d
cmp dword [ebp - 0x52c], esi
jb 0x420dba
mov ecx, dword [ebp - 0x540]
push ecx
call fcn.0043266a
add esp, 4
xor edx, edx
mov dword [ebp - 0x52c], edi
mov dword [ebp - 0x530], ebx
mov word [ebp - 0x540], dx
mov byte [ebp - 4], 0x1c
cmp dword [ebp - 0x548], esi
jb 0x420dea
mov eax, dword [ebp - 0x55c]
push eax
call fcn.0043266a
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x548], edi
mov dword [ebp - 0x54c], ebx
mov word [ebp - 0x55c], cx
mov byte [ebp - 4], 9
cmp dword [ebp - 0x510], esi
jb 0x420e1a
mov edx, dword [ebp - 0x524]
push edx
call fcn.0043266a
add esp, 4
xor eax, eax
mov dword [ebp - 0x510], edi
mov dword [ebp - 0x514], ebx
mov word [ebp - 0x524], ax
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x660]
call fcn.0040d930
lea ecx, [ebp - 0x660]
mov dword [ebp - 0x4b8], ecx
mov dword [ebp - method.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.virtual_0], vtable.std::basic_ios_wchar_t__struct_std::char_traits_wchar_t__.0
mov byte [ebp - 4], bl
mov edx, ecx
push edx
mov dword [ebp - method.std::ios_base.virtual_0], vtable.std::ios_base.0
call fcn.0043060b
add esp, 4
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x4f4], esi
jb 0x420e89
mov eax, dword [ebp - 0x508]
push eax
call fcn.0043266a
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x4f4], edi
mov dword [ebp - 0x4f8], ebx
mov word [ebp - 0x508], cx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00432675
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor edx, edx
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
mov word [ebp - 0x4ac], dx
call fcn.0040e990
mov byte [ebp - 4], 0x16
xor eax, eax
push ebx
mov ecx, esi
mov word [ebp - 0x48c], ax
push ecx
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
call fcn.00401a90
mov byte [ebp - 4], 0x16
push 0x4630f4
lea edx, [ebp - 0x490]
push edx
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor eax, eax
mov word [ebp - 0x4ac], ax
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
call fcn.0040e990
mov byte [ebp - 4], 0x13
xor ecx, ecx
push ebx
mov edx, esi
mov word [ebp - 0x48c], cx
push edx
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
call fcn.00401a90
mov byte [ebp - 4], 0x13
push 0x4630f4
lea eax, [ebp - 0x490]
push eax
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor ecx, ecx
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
mov word [ebp - 0x4ac], cx
call fcn.0040e990
mov byte [ebp - 4], 0x10
push ebx
mov eax, esi
xor edx, edx
push eax
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
mov word [ebp - 0x48c], dx
call fcn.00401a90
mov byte [ebp - 4], 0x10
push 0x4630f4
lea ecx, [ebp - 0x490]
push ecx
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor edx, edx
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
mov word [ebp - 0x4ac], dx
call fcn.0040e990
mov byte [ebp - 4], 0xd
xor eax, eax
push ebx
mov ecx, esi
mov word [ebp - 0x48c], ax
push ecx
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
call fcn.00401a90
mov byte [ebp - 4], 0xd
push 0x4630f4
lea edx, [ebp - 0x490]
push edx
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor eax, eax
mov word [ebp - 0x4ac], ax
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
call fcn.0040e990
mov byte [ebp - 4], 0xa
xor ecx, ecx
push ebx
mov edx, esi
mov word [ebp - 0x48c], cx
push edx
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
call fcn.00401a90
mov byte [ebp - 4], 0xa
push 0x4630f4
lea eax, [ebp - 0x490]
push eax
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor ecx, ecx
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
mov word [ebp - 0x4ac], cx
call fcn.0040e990
mov byte [ebp - 4], 7
push ebx
mov eax, esi
xor edx, edx
push eax
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
mov word [ebp - 0x48c], dx
call fcn.00401a90
mov byte [ebp - 4], 7
push 0x4630f4
lea ecx, [ebp - 0x490]
push ecx
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor edx, edx
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
mov word [ebp - 0x4ac], dx
call fcn.0040e990
mov byte [ebp - 4], 5
xor eax, eax
push ebx
mov ecx, esi
mov word [ebp - 0x48c], ax
push ecx
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
call fcn.00401a90
mov byte [ebp - 4], 5
push 0x4630f4
lea edx, [ebp - 0x490]
push edx
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor eax, eax
mov word [ebp - 0x4ac], ax
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
call fcn.0040e990
mov byte [ebp - 4], 3
xor ecx, ecx
push ebx
mov edx, esi
mov word [ebp - 0x48c], cx
push edx
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
call fcn.00401a90
mov byte [ebp - 4], 3
push 0x4630f4
lea eax, [ebp - 0x490]
push eax
call fcn.00436bf2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
xor ecx, ecx
push 0x1b
mov eax, str.WinAPI::writeFile___failed.
lea esi, [ebp - 0x4ac]
mov dword [ebp - 0x498], 7
mov dword [ebp - 0x49c], ebx
mov word [ebp - 0x4ac], cx
call fcn.0040e990
mov byte [ebp - 4], 1
push ebx
mov eax, esi
xor edx, edx
push eax
or eax, 0xffffffff
lea ecx, [ebp - 0x48c]
mov dword [ebp - 0x490], edi
mov dword [ebp - 0x478], 7
mov dword [ebp - 0x47c], ebx
mov word [ebp - 0x48c], dx
call fcn.00401a90
mov byte [ebp - 4], 1
push 0x4630f4
lea ecx, [ebp - 0x490]
push ecx
call fcn.00436bf2
int3