Function at 0x47e2a0
Capabilities:
Create directory

Disassembly:
sub esp, 0x44
push ebp
push esi
push edi
mov ebp, ecx
call fcn.0043d660
lea edi, [ebp + 0x4a0]
xor esi, esi
push esi
lea ecx, [ebp + 0x560]
mov byte [edi + 0x3e], 0
mov byte [edi + 0xae], 0
call fcn.0044ced0
mov al, byte [esp + 0xf]
lea ecx, [ebp + 0x670]
push esi
mov byte [ecx], al
call fcn.00401b60
mov dword [ebp], vtable.CMyD3DApplication.0
mov dword [ebp + 0x334], 0x280
mov dword [ebp + 0x338], 0x1e0
mov ecx, dword [0x553390]
cmp ecx, esi
jne 0x47e323
push 0xc
call fcn.004fc0e2
add esp, 4
cmp eax, esi
je 0x47e31a
mov ecx, eax
call fcn.0047dc40
jmp 0x47e31c
xor eax, eax
mov dword [0x553390], eax
mov ecx, eax
push ebx
push str.Astro_Avenger
call fcn.0047dc70
mov dword [ebp + 0x330], eax
xor eax, eax
mov byte [ebp + 0x28], 1
mov dword [ebp + 0x20], 0x10
mov dword [ebp + 0x24], 4
mov byte [ebp + 0x33e], 0
mov byte [ebp + 0x33c], 0
mov dword [ebp + 0x350], 1
mov dword [ebp + 0x49c], esi
mov dword [ebp + 0x34c], esi
mov ecx, 0x2c
rep stosd dword es:[edi], eax
push esi
mov dword [ebp + 0x554], esi
mov dword [ebp + 0x558], esi
mov dword [ebp + 0x55c], 0x3e19999a
call dword [sym.imp.ole32.dll_CoInitialize]
mov cl, byte [esp + 0x13]
mov byte [esp + 0x14], cl
push esi
lea ecx, [esp + 0x18]
call fcn.00401b60
or ecx, 0xffffffff
xor eax, eax
mov edi, str.DebugLogs
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
push 1
push ebx
lea ecx, [esp + 0x1c]
call fcn.00401bd0
test al, al
je 0x47e3e8
mov edi, dword [esp + 0x18]
mov ecx, ebx
mov edx, ecx
shr ecx, 2
mov esi, str.DebugLogs
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
lea ecx, [esp + 0x18]
call fcn.00401bb0
xor esi, esi
lea eax, [esp + 0x44]
push eax
call fcn.004884e0
mov edi, eax
mov cl, byte [edi]
add esp, 4
mov byte [esp + 0x24], cl
push esi
lea ecx, [esp + 0x28]
call fcn.00401b60
mov edx, dword [0x5153c0]
push edx
push esi
push edi
lea ecx, [esp + 0x30]
call fcn.00403390
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x30]
call fcn.004103c0
push eax
lea ecx, [esp + 0x38]
call fcn.00403270
push 1
lea ecx, [esp + 0x28]
call fcn.00401b60
mov eax, dword [esp + 0x38]
cmp eax, esi
pop ebx
jne 0x47e44d
mov eax, 0x5153a8
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 1
lea ecx, [esp + 0x34]
call fcn.00401b60
push 1
lea ecx, [esp + 0x44]
call fcn.00401b60
push 1
lea ecx, [esp + 0x14]
call fcn.00401b60
call fcn.004510f0
mov ecx, eax
call fcn.00451280
test al, al
jne 0x47e4bd
mov eax, dword [0x5530d4]
cmp eax, esi
jne 0x47e4ad
push 0x1c
call fcn.004fc0e2
add esp, 4
cmp eax, esi
je 0x47e4a6
mov ecx, eax
call fcn.0044eab0
jmp 0x47e4a8
xor eax, eax
mov dword [0x5530d4], eax
push str.Warning:_Could_not_start_AADebug.exe____Call_Stack_logging_is_disabled.
push 2
push eax
call fcn.0044ef30
add esp, 0xc
mov dword [ebp + 0x550], esi
mov eax, dword [0x5530d4]
cmp eax, esi
jne 0x47e4ea
push 0x1c
call fcn.004fc0e2
add esp, 4
cmp eax, esi
je 0x47e4e3
mov ecx, eax
call fcn.0044eab0
jmp 0x47e4e5
xor eax, eax
mov dword [0x5530d4], eax
push str._Program_Started_
push eax
call fcn.0044ec80
add esp, 8
mov ecx, ebp
call fcn.0047e8a0
mov ecx, dword [0x553360]
cmp ecx, esi
jne 0x47e529
push 0x38
call fcn.004fc0e2
add esp, 4
cmp eax, esi
je 0x47e520
mov ecx, eax
call fcn.0046eeb0
jmp 0x47e522
xor eax, eax
mov dword [0x553360], eax
mov ecx, eax
call fcn.004701b0
mov ecx, dword [0x553360]
cmp ecx, esi
jne 0x47e558
push 0x38
call fcn.004fc0e2
add esp, 4
cmp eax, esi
je 0x47e54f
mov ecx, eax
call fcn.0046eeb0
jmp 0x47e551
xor eax, eax
mov dword [0x553360], eax
mov ecx, eax
call fcn.004712f0
lea ecx, [esp + 0x10]
push ecx
mov byte [ebp + 0x680], 0
call fcn.004884e0
or ecx, 0xffffffff
add esp, 4
xor eax, eax
mov edi, str.ArmAccess.DLL
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.ArmAccess.DLL
lea ecx, [esp + 0x18]
call fcn.00417330
mov eax, dword [esp + 0x14]
cmp eax, esi
jne 0x47e59c
mov eax, 0x5153a8
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, eax
cmp edi, esi
jne 0x47e5bd
push 1
lea ecx, [esp + 0x14]
call fcn.00401b60
pop edi
pop esi
mov eax, ebp
pop ebp
add esp, 0x44
ret
push str.IncrementCounter
push edi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, esi
jne 0x47e5e1
push 1
lea ecx, [esp + 0x14]
call fcn.00401b60
pop edi
pop esi
mov eax, ebp
pop ebp
add esp, 0x44
ret
call eax
push edi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [0x5530d4]
cmp eax, esi
jne 0x47e611
push 0x1c
call fcn.004fc0e2
add esp, 4
cmp eax, esi
je 0x47e60a
mov ecx, eax
call fcn.0044eab0
jmp 0x47e60c
xor eax, eax
mov dword [0x5530d4], eax
push str.Armadillo_IncrementCounter_done
push 2
push eax
call fcn.0044ef30
mov ecx, dword [esp + 0x20]
add esp, 0xc
cmp ecx, esi
je 0x47e64c
mov al, byte [ecx - 1]
test al, al
je 0x47e642
cmp al, 0xff
je 0x47e642
dec al
pop edi
mov byte [ecx - 1], al
pop esi
mov eax, ebp
pop ebp
add esp, 0x44
ret
dec ecx
push ecx
call fcn.004ef70e
add esp, 4
pop edi
pop esi
mov eax, ebp
pop ebp
add esp, 0x44
ret