Function at 0x432e20
Capabilities:
Get file attributes
Get file size
Get geographical location
Manipulate console buffer
Move file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x4332eb
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x147c
call fcn.004085c0
mov eax, dword [0x437030]
xor eax, esp
mov dword [esp + 0x1478], eax
push ebx
push esi
push edi
mov eax, dword [0x437030]
xor eax, esp
push eax
lea eax, [esp + 0x1490]
mov dword fs:[0], eax
mov edx, dword [0x439498]
mov ecx, dword [0x80cc04]
xor eax, eax
mov edi, 0xec58ae96
or esi, 0xffffffff
jmp 0x432e80
cmp eax, 0x4db
jne 0x432e8d
lea ecx, [edx + 0x9e49]
cmp ecx, 0xbcf
jne 0x432ea1
mov dword [0x43a008], edi
mov dword [0x43a00c], esi
inc eax
cmp eax, 0x1180b56
jl 0x432e80
mov dword [0x80cc04], ecx
xor esi, esi
cmp esi, 0x55b777
jne 0x432ec3
mov eax, dword [0x437cb8]
mov dword [0x80cd34], eax
cmp ecx, 0x3c
jne 0x432ed6
push 0
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ecx, dword [0x80cc04]
inc esi
cmp esi, 0x4cd970b6
jl 0x432eb1
mov edi, dword [sym.imp.KERNEL32.dll_SetCommMask]
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
xor esi, esi
lea ecx, [ecx]
push 0
push 0
call edi
call ebx
cmp esi, 0x16ea57
jg 0x432f09
inc esi
cmp esi, 0x9438f3
jl 0x432ef0
mov eax, dword [0x80cc04]
cmp eax, 0x2a
jne 0x43301a
xor esi, esi
lea ecx, [esp + 0x10]
push ecx
push esi
push str.jisur
push esi
push esi
mov dword [0x80cbf8], esi
mov dword [0x80cbfc], esi
call dword [sym.imp.KERNEL32.dll_GetStringTypeExW]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_BuildCommDCBA]
xor eax, eax
push esi
mov dword [esp + 0x26], eax
mov dword [esp + 0x2a], eax
mov dword [esp + 0x2e], eax
mov word [esp + 0x32], ax
lea eax, [esp + 0x888]
push eax
push str.lizukuwakuhomagahonasigana
lea ecx, [esp + 0x2c]
push ecx
push esi
xor edx, edx
push esi
mov word [esp + 0x38], dx
call dword [sym.imp.KERNEL32.dll_GetTimeFormatA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetProcessPriorityBoost]
push esi
push str.lafumenogujirugir_nemocaxeleyawadetakeciv
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthA]
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_OpenWaitableTimerA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_SetProcessAffinityMask]
push esi
lea edx, [esp + 0x88]
push edx
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
push esi
push esi
lea eax, [esp + 0x48c]
push eax
push esi
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
push esi
push esi
call sub.KERNEL32.dll_Process32First
push esi
push esi
call fcn.0040121e
push esi
call fcn.00401190
add esp, 0xc
push esi
push esi
call fcn.0040121e
push 4
call fcn.00401623
add esp, 0xc
cmp eax, esi
je 0x432ff9
lea ecx, [esp + 0x38]
mov dword [eax], ecx
jmp 0x432ffb
xor eax, eax
mov dword [esp + 0x38], eax
push esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x50], esi
call fcn.00401190
add esp, 4
push esi
call fcn.00401570
cmp eax, 0x7c
jne 0x43311b
xor esi, esi
push esi
push esi
lea edx, [esp + 0x3c]
push edx
call dword [sym.imp.KERNEL32.dll_InterlockedCompareExchange]
push esi
lea eax, [esp + 0xc88]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
push esi
lea ecx, [esp + 0x34]
push ecx
push esi
lea edx, [esp + 0x490]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_WriteConsoleW]
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_GetThreadContext]
push esi
call dword [sym.imp.KERNEL32.dll_FindAtomW]
push 0x2e
lea eax, [esp + 0x58]
push esi
push eax
mov dword [esp + 0x5c], esi
call fcn.004034a0
add esp, 0xc
push esi
lea ecx, [esp + 0x54]
push ecx
push esi
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigA]
push esi
push esi
lea edx, [esp + 0x8c]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasA]
push esi
push esi
call dword [sym.imp.KERNEL32.dll_MoveFileW]
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x20], esi
call dword [sym.imp.KERNEL32.dll_DisconnectNamedPipe]
xor edx, edx
xor ecx, ecx
mov word [esp + 0x16], dx
xor eax, eax
mov word [esp + 0x12], cx
lea edx, [esp + 0x20]
push edx
mov word [esp + 0x14], ax
mov eax, dword [esp + 0x14]
push eax
mov word [esp + 0x1c], cx
mov ecx, dword [esp + 0x1c]
push ecx
lea edx, [esp + 0x24]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_WriteConsoleOutputA]
push esi
lea eax, [esp + 0x888]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
cmp dword [0x80cc04], 0x2d
jne 0x43310d
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
push esi
call fcn.00401269
mov eax, dword [0x80cc04]
add esp, 4
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edx, dword [0x80cc04]
mov esi, eax
xor ecx, ecx
mov dword [0x80ca4c], esi
test edx, edx
jbe 0x43316c
mov edi, dword [0x80cd34]
mov eax, 0x17bc
jmp 0x433150
mov bl, byte [edi + ecx + 0x9e49]
mov byte [esi + ecx], bl
cmp edx, 0x8d
jne 0x433167
mov dword [0x80ca50], eax
inc ecx
cmp ecx, edx
jb 0x433150
push str.msimg32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
call fcn.00432b30
call fcn.00432d90
mov edi, dword [sym.imp.KERNEL32.dll_AddAtomW]
mov ebx, dword [sym.imp.KERNEL32.dll_GetFileSize]
xor esi, esi
nop
cmp dword [0x80cc04], 0x41
jne 0x4331b0
push str.vunezovatokiz
call edi
push 0
push 0
call ebx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_MoveFileW]
cmp esi, 0xd4ed7
jne 0x4331bd
call fcn.00432b20
cmp dword [0x80cc04], 0xc
jne 0x4331db
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_Beep]
inc esi
cmp esi, 0x24cd25
jl 0x433190
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov edi, dword [sym.imp.KERNEL32.dll_WriteConsoleOutputCharacterA]
mov ebx, dword [sym.imp.KERNEL32.dll_RegisterWaitForSingleObject]
mov dword [esp + 0x10], 0x1dfe99
mov edi, edi
cmp dword [0x80cc04], 0x7c4
mov dword [0x80ca54], 0x8e4e0198
jne 0x433248
push str.zuzisagopapixabawufiganepametema
call esi
xor eax, eax
xor edx, edx
lea ecx, [esp + 0x18]
push ecx
mov word [esp + 0x18], dx
mov word [esp + 0x1a], ax
mov edx, dword [esp + 0x18]
push edx
push eax
push eax
push eax
call edi
push 0
push 0
push 0
push 0
push 0
push 0
call ebx
sub dword [esp + 0x10], 1
jne 0x433200
mov edi, dword [sym.imp.USER32.dll_GetMonitorInfoW]
mov ebx, dword [sym.imp.USER32.dll_GetClassLongW]
xor esi, esi
lea eax, [esp + 0x50]
push eax
push 0
call edi
push 0
push 0
call ebx
cmp esi, 0x408e
jle 0x43327e
cmp dword [esp + 0x58], 0xf5bed7
jne 0x433287
inc esi
cmp esi, 0x687ed2
jl 0x43325d
mov ecx, dword [esp + 0x1490]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1478]
xor ecx, esp
call fcn.00401070
mov esp, ebp
pop ebp
ret