Function at 0x403573
Capabilities:
Accept command line arguments

Disassembly:
push ecx
push ecx
push ebx
push edi
push 4
xor edi, edi
push edi
push esi
call fcn.00407490
add esp, 0xc
push 0x400
lea eax, [esi + 4]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov ebx, 0x41ce68
lea eax, [esi + 0x2004]
push ebx
push eax
mov word [esi + 0x802], di
mov dword [esi], edi
call fcn.004069d2
push dword [esp + 0x1c]
call fcn.00407ee0
push eax
push dword [esp + 0x24]
lea eax, [esi + 0x804]
push eax
call fcn.00407eab
add esp, 0x18
mov word [esi + eax*2 + 0x804], di
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
lea eax, [esi + 0x1004]
push eax
call fcn.004069d2
lea eax, [esi + 0x1804]
push ebx
push eax
call fcn.004069d2
lea eax, [esi + 0x3004]
push 0x800
push eax
call fcn.004080aa
mov eax, esi
call fcn.00403437
mov eax, esi
call fcn.004034b6
lea eax, [esi + 0x54f0]
push ebx
push eax
mov dword [esi + 0x54ec], edi
call fcn.004069d2
lea eax, [esi + 0x5cf0]
push ebx
push eax
call fcn.004069d2
push str.USERNAME
call fcn.004070e6
add esp, 0x2c
cmp eax, edi
je 0x403652
push eax
call fcn.00406955
pop ecx
mov dword [esi + 0x4004], eax
push ebp
push str.ALLUSERSPROFILE
call fcn.004070e6
cmp eax, edi
pop ecx
mov dword [esp + 0xc], eax
je 0x4036e4
push str.APPDATA
call fcn.004070e6
mov ebp, eax
cmp ebp, edi
pop ecx
je 0x4036e4
push dword [esp + 0xc]
call fcn.0040576d
test eax, eax
pop ecx
je 0x4036e4
push ebp
call fcn.0040576d
test eax, eax
pop ecx
je 0x4036e4
mov eax, ebp
call fcn.004033d4
push 0x400
push dword [esp + 0x10]
lea ebp, [esi + 0x3804]
push ebp
mov dword [esp + 0x1c], eax
call fcn.00406646
push ebp
call fcn.0040691f
mov ecx, 0x400
sub ecx, eax
push ecx
push 0x41ce64
push ebp
call fcn.004068e2
push ebp
call fcn.0040691f
mov ecx, 0x400
sub ecx, eax
push ecx
push dword [esp + 0x34]
push ebp
call fcn.004068e2
add esp, 0x2c
lea eax, [esi + 0x54f0]
push ebx
push eax
call fcn.004069d2
push str.COMSPEC
call fcn.004070e6
add esp, 0xc
cmp eax, edi
lea ebx, [esi + 0x4008]
mov dword [ebx], eax
jne 0x403717
push str.cmd.exe
call fcn.00406955
pop ecx
mov dword [ebx], eax
xor ebx, ebx
inc ebx
push str.AF_FLOATING_LICENSE
mov dword [esi + 0x2ed94], edi
mov dword [esi + 0x2ed98], edi
mov dword [esi + 0x2ed8c], edi
mov dword [esi + 0x2ed90], edi
mov dword [esi + 0x2ed9c], edi
mov dword [esi + 0x2eda0], edi
mov dword [esi + 0x2eda4], edi
mov dword [esi + 0x400c], edi
mov dword [esi + 0x4410], edi
mov dword [esi + 0x451c], edi
mov dword [esi + 0x494c], edi
mov dword [esi + 0x4734], edi
mov dword [esi + 0x4628], edi
mov dword [esi + 0x4840], edi
mov dword [esi + 0x4a58], edi
mov dword [esi + 0x4a5c], edi
mov dword [esi + 0x4a60], ebx
mov dword [esi + 0x4a64], ebx
mov dword [esi + 0x4a68], edi
mov dword [esi + 0x4a6c], ebx
call fcn.004070e6
cmp eax, edi
pop ecx
mov ebp, 0x41c1e0
jne 0x4037aa
xor eax, eax
jmp 0x4037b8
push ebp
push eax
call fcn.00407a8c
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
push str.AF_MKS_INSTALLED
mov dword [esi + 0x4a70], eax
mov dword [esi + 0x4a74], edi
mov dword [esi + 0x4a78], edi
mov dword [esi + 0x4a7c], ebx
call fcn.004070e6
cmp eax, edi
pop ecx
jne 0x4037e3
xor eax, eax
jmp 0x4037f1
push ebp
push eax
call fcn.00407a8c
neg eax
pop ecx
sbb eax, eax
pop ecx
inc eax
mov dword [esi + 0x4a80], eax
push 2
lea eax, [esi + 0x2804]
push eax
push 0x41ced0
call fcn.00407748
neg eax
sbb eax, eax
inc eax
push str.AFLMD_LICENSE_FILE
mov dword [esi + 0x4a84], eax
mov dword [esi + 0x4a88], 0xdac
call fcn.004070e6
add esp, 0x10
cmp eax, edi
pop ebp
jne 0x403835
xor eax, eax
jmp 0x40383c
push eax
call fcn.00406955
pop ecx
or dword [esi + 0x4ab4], 0xffffffff
or dword [esi + 0x4abc], 0xffffffff
xor ecx, ecx
cmp eax, edi
sete cl
push 2
push 0x10000
mov dword [esi + 0x4a8c], eax
mov dword [esi + 0x4a90], edi
mov dword [esi + 0x4a94], edi
mov dword [esi + 0x4a98], edi
mov dword [esi + 0x4aa4], edi
mov dword [esi + 0x4aa0], edi
mov dword [esi + 0x4a9c], edi
mov dword [esi + 0x4aa8], edi
mov dword [esi + 0x4aac], edi
mov dword [esi + 0x4ab0], edi
mov dword [esi + 0x4ab8], edi
mov dword [esi + 0x4ac0], edi
mov dword [esi + 0x4ddc], edi
mov dword [esi + 0x4dc4], edi
mov dword [esi + 0x4dc8], edi
mov dword [esi + 0x4dcc], edi
mov dword [esi + 0x4dd0], edi
mov dword [esi + 0x4dd4], edi
mov dword [esi + 0x4dd8], edi
mov dword [esi + 0x54e0], edi
mov dword [esi + 0x54e4], edi
mov dword [esi + 0x54e8], edi
mov dword [esi + 0x6d88], edi
mov dword [esi + 0x64f0], edi
mov dword [esi + 0x64f4], edi
mov dword [esi + 0x64f8], edi
mov dword [esi + 0x64fc], edi
mov dword [esi + 0x6500], edi
mov dword [esi + 0x6504], edi
mov dword [esi + 0x6508], edi
mov dword [esi + 0x650c], edi
mov dword [esi + 0x6510], edi
mov dword [esi + 0x6514], edi
mov dword [esi + 0x6518], edi
mov dword [esi + 0x651c], edi
mov dword [esi + 0x6520], edi
mov dword [esi + 0x6524], edi
mov dword [esi + 0x6528], edi
mov dword [esi + 0x652c], edi
mov dword [esi + 0x6530], ebx
mov dword [esi + 0x6534], edi
mov dword [esi + 0x6538], ecx
mov dword [esi + 0x653c], edi
mov dword [esi + 0x6540], edi
mov dword [esi + 0x6544], edi
mov dword [esi + 0x654c], edi
mov dword [esi + 0x6548], edi
mov dword [esi + 0x6554], edi
mov dword [esi + 0x6558], edi
mov dword [esi + 0x655c], edi
mov dword [esi + 0x6560], edi
mov dword [esi + 0x6564], edi
mov dword [esi + 0x6550], edi
call fcn.004063e5
pop ecx
pop ecx
pop edi
mov dword [esi + 0x6568], eax
pop ebx
pop ecx
pop ecx
ret