Function at 0x1000cc10
Capabilities:
Delete directory
Delete file
Get geographical location
Manipulate console buffer

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x90
mov dword [ebp - 0x88], ecx
movsx eax, byte [ebp + 8]
cmp eax, 0x41
jl 0x1000cc3d
movsx ecx, byte [ebp + 8]
cmp ecx, 0x5a
jg 0x1000cc3d
movsx eax, byte [ebp + 8]
sub eax, 0x41
jmp 0x1000d782
mov edx, dword [0x100d4f40]
xor eax, eax
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x84], 0xe01eaf5b
jne 0x1000cea5
cmp dword [ebp - 0x80], 0
jne 0x1000cea5
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_GetEnhMetaFileHeader]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleFontSize]
mov dword [ebp - 0x8c], eax
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_GetBitmapBits]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push 0
call dword [sym.imp.KERNEL32.dll_SetThreadExecutionState]
push 0
call dword [sym.imp.KERNEL32.dll_SetEvent]
push 0
call dword [sym.imp.GDI32.dll_EndPath]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_RoundRect]
push 0
call dword [sym.imp.KERNEL32.dll_SwitchToFiber]
push 0
call dword [sym.imp.GDI32.dll_GetPolyFillMode]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_EraseTape]
call dword [sym.imp.KERNEL32.dll_GetThreadUILanguage]
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_ExtTextOutW]
push 0
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetFileIoOverlappedRange]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetHandleInformation]
push 0
push 0
call dword [sym.imp.GDI32.dll_CopyMetaFileW]
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x7c], ecx
push 0
mov edx, dword [ebp - 0x7c]
push edx
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_ReadConsoleOutputCharacterW]
push 0
call dword [sym.imp.KERNEL32.dll_SetConsoleActiveScreenBuffer]
push 0
call dword [sym.imp.GDI32.dll_StrokeAndFillPath]
push 0
call dword [sym.imp.KERNEL32.dll_GetUserGeoID]
call dword [sym.imp.KERNEL32.dll_GetErrorMode]
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_GetTextCharsetInfo]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_TrySubmitThreadpoolCallback]
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
push 0
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetThreadIdealProcessor]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleTitleW]
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleHistoryInfo]
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
push 0
push 0
push 0x100de600
push 0
call dword [sym.imp.KERNEL32.dll_EnumTimeFormatsEx]
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_GetRegionData]
push 0
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WaitForThreadpoolWaitCallbacks]
push 0
push 0
push 0
call dword [sym.imp.GDI32.dll_GetTextFaceW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetConsoleCtrlHandler]
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_QueryMemoryResourceNotification]
push 0
push 0
call dword [sym.imp.GDI32.dll_SetGraphicsMode]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetThreadpoolStackInformation]
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
push 0
push 0
call dword [sym.imp.GDI32.dll_GetRgnBox]
push 0
push 0x100de638
call dword [sym.imp.KERNEL32.dll_LoadPackagedLibrary]
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_SetThreadpoolWaitEx]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_LocalReAlloc]
push 0
call dword [sym.imp.KERNEL32.dll_FreeResource]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_FindNextFileNameW]
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_RtlUnwind]
push 0
push 0
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleProcessList]
push 0
push 0
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryTransactedW]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_GlobalReAlloc]
movsx eax, byte [ebp + 8]
cmp eax, 0x61
jl 0x1000cec3
movsx ecx, byte [ebp + 8]
cmp ecx, 0x7a
jg 0x1000cec3
movsx eax, byte [ebp + 8]
sub eax, 0x47
jmp 0x1000d782
movsx edx, byte [ebp + 8]
cmp edx, 0x30
jl 0x1000cee1
movsx eax, byte [ebp + 8]
cmp eax, 0x39
jg 0x1000cee1
movsx eax, byte [ebp + 8]
add eax, 4
jmp 0x1000d782
mov dword [ebp - 0x34], 0x2130
mov dword [ebp - 4], 0x17cd
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 4]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 8], 0
mov edx, dword [ebp - 4]
sub edx, 0xa70
mov dword [ebp - 4], edx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x60], 0
jmp 0x1000cf24
mov eax, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0x62
jge 0x1000cf35
mov ecx, dword [ebp - 0x10]
sub ecx, 1
mov dword [ebp - 0x10], ecx
jmp 0x1000cf1b
mov edx, dword [ebp - 8]
sub edx, 0x7f
mov dword [ebp - 8], edx
mov dword [ebp - 0x28], 0xa19
mov dword [ebp - 0x18], 0x2055
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x30], 0xb8b
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x10]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 4]
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x18]
sub edx, 0x9b3
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x78], 0x2c
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x78]
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x48]
add ecx, dword [ebp - 4]
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x34]
add edx, dword [ebp - 0x78]
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 8]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x58], 0
mov ecx, dword [ebp - 4]
add ecx, dword [ebp - 0x18]
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 8]
cdq
mov ecx, 3
idiv ecx
test edx, edx
je 0x1000cfdb
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
jmp 0x1000cfc1
mov dword [ebp - 0x2c], 0x14a2
mov dword [ebp - 0x38], 0x2694
mov eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x10]
sub ecx, dword [ebp - 8]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x18]
add edx, 0x492
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x48]
add eax, 0xc6
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x10]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x14]
add edx, 0x229b
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 0x30]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
and ecx, 0x80000001
jns 0x1000d040
dec ecx
or ecx, 0xfffffffe
inc ecx
test ecx, ecx
je 0x1000d050
mov edx, dword [ebp - 0x30]
sub edx, 0x1e57
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x18]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 4]
add ecx, dword [ebp - 0x38]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x10]
sub edx, 0x5df
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
add eax, dword [ebp - 4]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x18]
sub ecx, 0xdb8
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x58]
and edx, 0x80000001
jns 0x1000d093
dec edx
or edx, 0xfffffffe
inc edx
test edx, edx
je 0x1000d0a2
mov eax, dword [ebp - 0x58]
add eax, 1
mov dword [ebp - 0x58], eax
jmp 0x1000d083
mov ecx, dword [ebp - 0x18]
add ecx, 0x3fa
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 4]
add edx, 0xd2f
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x2c]
sub ecx, 0x833
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x34]
sub edx, dword [ebp - 0x30]
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x2c]
sub eax, 0x17fa
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 4]
add ecx, dword [ebp - 0x34]
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x30]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x58]
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 4]
sub edx, 0x19db
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
sub eax, dword [ebp - 0x48]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 8]
and ecx, 0x80000001
jns 0x1000d12c
dec ecx
or ecx, 0xfffffffe
inc ecx
test ecx, ecx
je 0x1000d13b
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
jmp 0x1000d11c
mov eax, dword [ebp - 0x28]
sub eax, 0x44
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
add ecx, 0xf58
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x48]
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 4]
cdq
mov ecx, 3
idiv ecx
test edx, edx
je 0x1000d173
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
jmp 0x1000d159
mov eax, dword [ebp - 0x14]
sub eax, 0x1d0f
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x2c]
sub ecx, 0x25d2
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x10]
sub edx, 0x689
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
add eax, 0x22e0
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x18]
sub ecx, 0xf7d
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x54]
add edx, dword [ebp - 0x10]
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x28]
add eax, 0x167f
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x14]
sub ecx, 0x1537
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x10]
sub edx, 0x15c5
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x2c]
add eax, 0x1709
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x18]
sub ecx, 0x1349
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x2c]
add edx, 0x230b
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x14]
sub eax, 0xd25
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 8]
sub ecx, 0x23fb
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x48]
sub edx, 0x1c4
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x48]
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 4]
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x64], 0
jmp 0x1000d243
mov edx, dword [ebp - 0x64]
add edx, 1
mov dword [ebp - 0x64], edx
cmp dword [ebp - 0x64], 0x53
jge 0x1000d254
mov eax, dword [ebp - 0x2c]
add eax, 2
mov dword [ebp - 0x2c], eax
jmp 0x1000d23a
mov ecx, dword [ebp - 0x28]
sub ecx, 0x63d
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x10]
sub edx, 0x2cc
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x28]
add eax, dword [ebp - 0x30]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 4]
sub ecx, 0x162b
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
add edx, dword [ebp - 0x54]
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x30]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x48]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x38]
add ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x38]
add edx, dword [ebp - 4]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x1ffc
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x14]
add edx, 0x1732
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x30]
add eax, dword [ebp - 4]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x28]
sub ecx, 0x855
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x28]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x34]
add eax, 0x1fb5
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x48]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x28]
add edx, dword [ebp - 0x30]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x2c]
add eax, 0x9eb
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x10]
add ecx, 0x974
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x68], 0
jmp 0x1000d345
mov edx, dword [ebp - 0x68]
add edx, 1
mov dword [ebp - 0x68], edx
cmp dword [ebp - 0x68], 0x50
jge 0x1000d356
mov eax, dword [ebp - 0x34]
add eax, 7
mov dword [ebp - 0x34], eax
jmp 0x1000d33c
mov ecx, dword [ebp - 4]
add ecx, 0xbb1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
add edx, 0x22f1
mov dword [ebp - 4], edx
mov dword [ebp - 0x6c], 0
jmp 0x1000d380
mov eax, dword [ebp - 0x6c]
add eax, 1
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 0x29
jge 0x1000d391
mov ecx, dword [ebp - 8]
sub ecx, 2
mov dword [ebp - 8], ecx
jmp 0x1000d377
mov edx, dword [ebp - 0x10]
add edx, dword [ebp - 4]
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 8]
add eax, 0x2282
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x38]
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x54]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 4]
add eax, dword [ebp - 0x30]
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x58]
cdq
mov ecx, 3
idiv ecx
test edx, edx
je 0x1000d3db
mov edx, dword [ebp - 0x58]
add edx, 0x3ba
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x14]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x30]
add ecx, 0x149f
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x38]
sub edx, dword [ebp - 0x54]
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 0x18]
mov dword [ebp - 0x34], eax
movsx ecx, byte [ebp + 8]
cmp ecx, 0x2b
jne 0x1000d412
mov al, 0x3e
jmp 0x1000d782
mov dword [ebp - 0x40], 0x3a0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x4c], 0x24b2
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x50], 0x49c
mov dword [ebp - 0x44], 0x462
mov edx, dword [ebp - 0x44]
add edx, dword [ebp - 0x1c]
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x1c]
add eax, 0xd83
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x4c]
add ecx, 0x26c9
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0xc], 0x64
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0xc]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x40]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
cdq
mov ecx, 3
idiv ecx
test edx, edx
je 0x1000d48f
mov edx, dword [ebp - 0x20]
add edx, 1
mov dword [ebp - 0x20], edx
jmp 0x1000d475
mov eax, dword [ebp - 0xc]
sub eax, 0x9c6
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x24], 0
mov ecx, dword [ebp - 0x44]
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x1c]
sub edx, 0x22
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x5c], 0
mov eax, dword [ebp - 0x44]
sub eax, dword [ebp - 0x50]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x3c], 0
mov ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0xc]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x1c]
sub edx, dword [ebp - 0x5c]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x4c]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x40]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x4c]
sub edx, 0x57e
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x40]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x20]
sub ecx, 0x21fd
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x20]
add edx, 0x1842
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x3c]
cdq
mov ecx, 3
idiv ecx
test edx, edx
je 0x1000d53e
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
jmp 0x1000d524
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x40]
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0xc]
sub ecx, 0xf0
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x24]
add edx, 0xf14
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x3c]
sub eax, 0x20a9
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x50]
sub ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x44]
add edx, 0xe5b
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x4c]
sub eax, 0x1c99
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x50]
sub ecx, 0x2516
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x40]
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x20]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x3c]
add ecx, 0x55d
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x1c]
sub edx, 0x1597
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x24]
sub eax, 0x164c
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x5c]
cdq
mov ecx, 3
idiv ecx
test edx, edx
je 0x1000d5e5
mov edx, dword [ebp - 0x5c]
add edx, 1
mov dword [ebp - 0x5c], edx
jmp 0x1000d5cb
mov eax, dword [ebp - 0x1c]
add eax, 0x505
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
cdq
mov ecx, 3
idiv ecx
test edx, edx
je 0x1000d60a
mov edx, dword [ebp - 0x1c]
add edx, 1
mov dword [ebp - 0x1c], edx
jmp 0x1000d5f0
mov eax, dword [ebp - 0x44]
sub eax, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
sub ecx, dword [ebp - 0xc]
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x24]
add edx, 0x22d4
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x4c]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x3c]
add edx, 0xc58
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x20]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x20]
add ecx, 0x2562
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x4c]
sub edx, dword [ebp - 0x5c]
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0xc]
add eax, 0x20c0
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x24]
and ecx, 0x80000003
jns 0x1000d67f
dec ecx
or ecx, 0xfffffffc
inc ecx
test ecx, ecx
je 0x1000d68f
mov edx, dword [ebp - 0x24]
sub edx, 0x2174
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x24]
add eax, 0x1212
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x20]
sub ecx, 0x2419
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x50]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
sub eax, 0x1a57
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
add ecx, 0x1632
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x3c]
add edx, 0x1f27
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x50]
sub eax, dword [ebp - 0xc]
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x44]
sub ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x70], 0
jmp 0x1000d6f6
mov edx, dword [ebp - 0x70]
add edx, 1
mov dword [ebp - 0x70], edx
cmp dword [ebp - 0x70], 0x5f
jge 0x1000d707
mov eax, dword [ebp - 0x40]
sub eax, 2
mov dword [ebp - 0x40], eax
jmp 0x1000d6ed
mov ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x74], 0
jmp 0x1000d722
mov edx, dword [ebp - 0x74]
add edx, 1
mov dword [ebp - 0x74], edx
cmp dword [ebp - 0x74], 0x50
jge 0x1000d733
mov eax, dword [ebp - 0xc]
sub eax, 4
mov dword [ebp - 0xc], eax
jmp 0x1000d719
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x1c]
sub edx, 0x26ab
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x50]
add eax, 0x1496
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x3c]
add ecx, 0x2122
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x40]
add edx, dword [ebp - 0x50]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
sub eax, 0x1358
mov dword [ebp - 0x40], eax
movsx ecx, byte [ebp + 8]
cmp ecx, 0x2f
jne 0x1000d780
mov al, 0x3f
jmp 0x1000d782
xor al, al
mov esp, ebp
pop ebp
ret 4