Function at 0x448d52
Capabilities:
Contain obfuscated stackstrings
Create directory
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x572b36
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x1108
call fcn.0054c740
push esi
mov dword [ebp - 0x10fc], ecx
cmp dword [0x673ea0], 0xe
jl 0x448db9
cmp dword [0x673ea0], 0x16
jg 0x448db9
mov eax, dword [ebp + 0x20]
push eax
mov ecx, dword [ebp + 0x1c]
push ecx
mov edx, dword [ebp + 0x18]
push edx
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x10fc]
call fcn.0044867a
jmp 0x449dd9
cmp dword [0x673ea0], 8
jl 0x448df7
cmp dword [0x673ea0], 0xd
jg 0x448df7
mov ecx, dword [ebp + 0x20]
push ecx
mov edx, dword [ebp + 0x1c]
push edx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x10fc]
call fcn.00447d01
jmp 0x449dd9
mov word [ebp - 0xee8], 0
mov dword [ebp - 0xc50], 0
mov dword [ebp - 0x828], 0
mov dword [ebp - 0x824], 0xffffffff
mov dword [ebp - 0x618], 0
mov dword [ebp - 0x208], 0
mov dword [ebp - 0xee4], 0
mov dword [ebp - 0xee0], 0
lea ecx, [ebp - 0x84c]
call fcn.00566717
mov dword [ebp - 4], 0
push 0x104
push 0
lea edx, [ebp - 0xe58]
push edx
call fcn.0054bf90
add esp, 0xc
lea eax, [ebp - 0xe58]
push eax
call fcn.00529440
add esp, 4
push 0
push 0x5a2e2c
push 0x220000
push str.SaveInfo
push 0
push 0
lea ecx, [ebp - 0x204]
call fcn.0055f87c
mov byte [ebp - 4], 1
push 0
push 0x200
lea ecx, [ebp - 0x10ec]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0051a525
add esp, 0x1c
mov dword [ebp - 0xeec], eax
push 0x200
lea eax, [ebp - 0x10ec]
push eax
lea ecx, [ebp - 0x818]
push ecx
call fcn.0054c7e0
add esp, 0xc
mov edx, dword [ebp - 0x818]
and edx, 0xff
mov dword [ebp - 0x828], edx
mov dword [ebp - 0x820], 0
cmp dword [0x673ea0], 0
jl 0x448f34
cmp dword [0x673ea0], 7
jg 0x448f34
mov eax, dword [ebp - 0x815]
and eax, 0xff
and eax, 0x20
test eax, eax
je 0x448f32
mov dword [ebp - 0x820], 1
jmp 0x448f51
mov ecx, dword [ebp - 0x80d]
and ecx, 0xff
and ecx, 0x20
test ecx, ecx
je 0x448f51
mov dword [ebp - 0x820], 1
lea ecx, [ebp - 0x204]
call fcn.0055f9de
cmp eax, 1
jne 0x44919c
lea edx, [ebp - 0x10f0]
push edx
lea ecx, [ebp - 0x204]
call fcn.0055fab9
mov dword [ebp - 0x1100], eax
mov eax, dword [ebp - 0x1100]
mov dword [ebp - 0x1104], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x1104]
call fcn.005287a0
push eax
lea ecx, [ebp - 0xe58]
push ecx
call fcn.0054be90
add esp, 8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10f0]
call fcn.0056206c
lea edx, [ebp - 0xe58]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0x10
je 0x448fd8
push 0
lea eax, [ebp - 0xe58]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
push 0x5a2e68
lea ecx, [ebp - 0xe58]
push ecx
call fcn.0054bea0
add esp, 8
lea edx, [ebp - 0xe58]
push edx
lea eax, [ebp - 0xd54]
push eax
call fcn.0054be90
add esp, 8
lea ecx, [ebp - 0x10f4]
push ecx
lea ecx, [ebp - 0x204]
call fcn.0055fbc9
mov dword [ebp - 0x1108], eax
mov edx, dword [ebp - 0x1108]
mov dword [ebp - 0x110c], edx
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x110c]
call fcn.005287a0
push eax
lea eax, [ebp - 0xe58]
push eax
call fcn.0054bea0
add esp, 8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10f4]
call fcn.0056206c
lea ecx, [ebp - 0x10f8]
push ecx
lea ecx, [ebp - 0x204]
call fcn.0055fbc9
mov dword [ebp - 0x1110], eax
mov edx, dword [ebp - 0x1110]
mov dword [ebp - 0x1114], edx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x1114]
call fcn.005287a0
push eax
lea eax, [ebp - 0xed8]
push eax
call fcn.0054be90
add esp, 8
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x10f8]
call fcn.0056206c
lea ecx, [ebp - 0xed8]
push ecx
call fcn.0054ce70
add esp, 4
cmp eax, 4
jb 0x449186
lea edx, [ebp - 0xed8]
push edx
call fcn.0054ce70
add esp, 4
movsx eax, byte [ebp + eax - 0xedb]
cmp eax, 0x42
je 0x4490fa
lea ecx, [ebp - 0xed8]
push ecx
call fcn.0054ce70
add esp, 4
movsx edx, byte [ebp + eax - 0xedb]
cmp edx, 0x62
jne 0x449186
lea eax, [ebp - 0xed8]
push eax
call fcn.0054ce70
add esp, 4
movsx ecx, byte [ebp + eax - 0xeda]
cmp ecx, 0x49
je 0x449132
lea edx, [ebp - 0xed8]
push edx
call fcn.0054ce70
add esp, 4
movsx eax, byte [ebp + eax - 0xeda]
cmp eax, 0x69
jne 0x449186
lea ecx, [ebp - 0xed8]
push ecx
call fcn.0054ce70
add esp, 4
movsx edx, byte [ebp + eax - 0xed9]
cmp edx, 0x4e
je 0x44916a
lea eax, [ebp - 0xed8]
push eax
call fcn.0054ce70
add esp, 4
movsx ecx, byte [ebp + eax - 0xed9]
cmp ecx, 0x6e
jne 0x449186
lea edx, [ebp - 0xed8]
push edx
call fcn.0054ce70
add esp, 4
movsx eax, byte [ebp + eax - 0xedc]
cmp eax, 0x2e
je 0x44919a
push 0x5a2e6c
lea ecx, [ebp - 0xe58]
push ecx
call fcn.0054bea0
add esp, 8
jmp 0x4491c2
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x204]
call fcn.004048d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84c]
call fcn.0056676c
jmp 0x449dd9
push 4
lea edx, [ebp - 0xe58]
push edx
call fcn.0054ce70
add esp, 4
lea eax, [ebp + eax - 0xe5c]
push eax
lea ecx, [ebp - 0xe58]
push ecx
call fcn.0054ce70
add esp, 4
lea edx, [ebp + eax - 0xe5b]
push edx
call fcn.0054c7e0
add esp, 0xc
lea eax, [ebp - 0xe58]
push eax
call fcn.0054ce70
add esp, 4
mov byte [ebp + eax - 0xe5d], 0x31
push 0
push 0x1041
lea ecx, [ebp - 0xe58]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.00566829
mov edx, dword [ebp - 0x80d]
and edx, 0xff
and edx, 0x80
test edx, edx
je 0x44924a
mov dword [ebp - 0x618], 1
cmp dword [ebp - 0x618], 0
je 0x4492f8
mov dword [ebp - 0xee0], 0
jmp 0x449272
mov eax, dword [ebp - 0xee0]
add eax, 1
mov dword [ebp - 0xee0], eax
cmp dword [ebp - 0xee0], 8
jge 0x449292
mov ecx, dword [ebp - 0xee0]
xor edx, edx
mov dl, byte [ebp + ecx - 0x7f8]
test edx, edx
je 0x449290
jmp 0x449292
jmp 0x449263
mov eax, dword [ebp - 0xee0]
shl eax, 4
xor ecx, ecx
mov cl, byte [ebp + eax - 0x7f8]
cmp ecx, 7
jne 0x4492f8
mov edx, dword [ebp - 0xee0]
shl edx, 4
xor eax, eax
mov al, byte [ebp + edx - 0x7f7]
cmp eax, 0x29
jne 0x4492f8
mov ecx, dword [ebp - 0xee0]
shl ecx, 4
xor edx, edx
mov dl, byte [ebp + ecx - 0x7f6]
cmp edx, 7
jne 0x4492f8
mov eax, dword [ebp - 0xee0]
shl eax, 4
xor ecx, ecx
mov cl, byte [ebp + eax - 0x7f5]
cmp ecx, 0x29
jne 0x4492f8
mov dword [ebp - 0xc50], 1
push 0x200
lea edx, [ebp - 0x10ec]
push edx
lea ecx, [ebp - 0x84c]
call fcn.00566980
push 0x200
push 0
lea eax, [ebp - 0x10ec]
push eax
call fcn.0054bf90
add esp, 0xc
push 0x200
lea ecx, [ebp - 0x10ec]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0051b8e5
add esp, 0x18
push 0x200
lea eax, [ebp - 0x10ec]
push eax
lea ecx, [ebp - 0x84c]
call fcn.00566980
push 0x200
push 0
lea ecx, [ebp - 0x10ec]
push ecx
call fcn.0054bf90
add esp, 0xc
push 0x10
push 0
lea edx, [ebp - 0x83c]
push edx
call fcn.0054bf90
add esp, 0xc
mov byte [ebp - 0x83c], 0xf0
mov byte [ebp - 0x83b], 5
mov byte [ebp - 0x831], 1
lea eax, [ebp - 0x83c]
push eax
push 0x200
lea ecx, [ebp - 0x10ec]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov al, byte [ebp + 0x1c]
push eax
mov cl, byte [ebp + 0x18]
push ecx
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004bf692
add esp, 0x28
mov dword [ebp - 0xeec], eax
push 0x200
lea eax, [ebp - 0x10ec]
push eax
lea ecx, [ebp - 0x84c]
call fcn.00566980
push 0x200
push 0
lea ecx, [ebp - 0x10ec]
push ecx
call fcn.0054bf90
add esp, 0xc
push 0x10
push 0
lea edx, [ebp - 0x83c]
push edx
call fcn.0054bf90
add esp, 0xc
mov byte [ebp - 0x83c], 0xf0
mov byte [ebp - 0x83b], 4
mov byte [ebp - 0x831], 1
lea eax, [ebp - 0x83c]
push eax
push 0x200
lea ecx, [ebp - 0x10ec]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov al, byte [ebp + 0x1c]
push eax
mov cl, byte [ebp + 0x18]
push ecx
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004bf692
add esp, 0x28
mov dword [ebp - 0xeec], eax
push 0x200
lea eax, [ebp - 0x10ec]
push eax
lea ecx, [ebp - 0x84c]
call fcn.00566980
push 0x400
push 0
lea ecx, [ebp - 0x610]
push ecx
call fcn.0054bf90
add esp, 0xc
push 0x200
lea edx, [ebp - 0x818]
push edx
lea eax, [ebp - 0x410]
push eax
call fcn.0054c7e0
add esp, 0xc
push 0x400
push 0
lea ecx, [ebp - 0xc4c]
push ecx
call fcn.0054bf90
add esp, 0xc
lea edx, [ebp - 0xc4c]
push edx
mov eax, dword [ebp + 0x20]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [0x67aaa8]
push eax
call fcn.0051f08a
add esp, 0x14
mov dword [ebp - 0x82c], 0
mov dword [ebp - 0x81c], 0
lea ecx, [ebp - 0xc4c]
push ecx
call fcn.0054ce70
add esp, 4
cmp dword [ebp - 0x82c], eax
jge 0x4495c2
mov edx, dword [ebp - 0x82c]
movsx eax, byte [ebp + edx - 0xc4c]
cmp eax, 0xd
jne 0x449585
mov ecx, dword [ebp - 0x82c]
movsx edx, byte [ebp + ecx - 0xc4b]
cmp edx, 0xa
jne 0x449585
mov eax, dword [ebp - 0x81c]
cdq
and edx, 0xf
add eax, edx
sar eax, 4
mov dword [ebp - 0x81c], eax
mov eax, dword [ebp - 0x81c]
add eax, 1
mov dword [ebp - 0x81c], eax
mov ecx, dword [ebp - 0x81c]
shl ecx, 4
mov dword [ebp - 0x81c], ecx
mov edx, dword [ebp - 0x82c]
add edx, 2
mov dword [ebp - 0x82c], edx
jmp 0x4495bd
mov eax, dword [ebp - 0x81c]
mov ecx, dword [ebp - 0x82c]
mov dl, byte [ebp + ecx - 0xc4c]
mov byte [ebp + eax - 0x610], dl
mov eax, dword [ebp - 0x81c]
add eax, 1
mov dword [ebp - 0x81c], eax
mov ecx, dword [ebp - 0x82c]
add ecx, 1
mov dword [ebp - 0x82c], ecx
jmp 0x449500
push 0x200
lea edx, [ebp - 0x610]
push edx
lea ecx, [ebp - 0x84c]
call fcn.00566980
push 0x400
push 0
lea eax, [ebp - 0x610]
push eax
call fcn.0054bf90
add esp, 0xc
push 0x10
push 0
lea ecx, [ebp - 0x83c]
push ecx
call fcn.0054bf90
add esp, 0xc
mov byte [ebp - 0x83c], 0xf0
mov byte [ebp - 0x83b], 0xa
mov byte [ebp - 0x831], 2
lea edx, [ebp - 0x83c]
push edx
push 0x400
lea eax, [ebp - 0x610]
push eax
mov ecx, dword [ebp + 0x20]
push ecx
mov dl, byte [ebp + 0x1c]
push edx
mov al, byte [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.004bf692
add esp, 0x28
mov dword [ebp - 0xeec], eax
push str._MU:0_Block:000_
lea edx, [ebp - 0x420]
push edx
call fcn.0054be90
add esp, 8
push 0x200
lea eax, [ebp - 0x610]
push eax
lea ecx, [ebp - 0x84c]
call fcn.00566980
lea ecx, [ebp - 0x84c]
call fcn.00566a44
lea ecx, [ebp - 0xe58]
push ecx
call fcn.0054ce70
add esp, 4
mov byte [ebp + eax - 0xe5d], 0x32
push 0
push 0x1041
lea edx, [ebp - 0xe58]
push edx
lea ecx, [ebp - 0x84c]
call fcn.00566829
mov dword [ebp - 0x20c], 0
jmp 0x4496d5
mov eax, dword [ebp - 0x20c]
add eax, 1
mov dword [ebp - 0x20c], eax
mov ecx, dword [ebp - 0x20c]
cmp ecx, dword [ebp - 0x828]
jge 0x449873
mov edx, dword [ebp - 0x20c]
xor eax, eax
mov al, byte [ebp + edx - 0x698]
cmp eax, 0x50
je 0x449710
cmp dword [ebp - 0x824], 0
jge 0x449710
mov ecx, dword [ebp - 0x20c]
mov dword [ebp - 0x824], ecx
push 0x400
push 0
lea edx, [ebp - 0x610]
push edx
call fcn.0054bf90
add esp, 0xc
push 0x10
push 0
lea eax, [ebp - 0x83c]
push eax
call fcn.0054bf90
add esp, 0xc
mov byte [ebp - 0x83c], 0xf0
mov byte [ebp - 0x83b], 0xa
mov byte [ebp - 0x83a], 3
mov ecx, dword [ebp - 0x20c]
mov dl, byte [ebp + ecx - 0x698]
mov byte [ebp - 0x839], dl
mov al, byte [ebp - 0x20c]
mov byte [ebp - 0x836], al
mov byte [ebp - 0x831], 1
lea ecx, [ebp - 0x83c]
push ecx
push 0x200
lea edx, [ebp - 0x610]
push edx
mov eax, dword [ebp + 0x20]
push eax
mov cl, byte [ebp + 0x1c]
push ecx
mov dl, byte [ebp + 0x18]
push edx
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.004bf692
add esp, 0x28
mov dword [ebp - 0xeec], eax
mov ecx, dword [ebp - 0x824]
cmp ecx, dword [ebp - 0x20c]
jne 0x4497e2
mov edx, dword [ebp - 0x504]
and edx, 0xff
shl edx, 8
mov eax, dword [ebp - 0x503]
and eax, 0xff
add edx, eax
mov word [ebp - 0xee8], dx
mov byte [ebp - 0x420], 0x44
mov byte [ebp - 0x41f], 0x55
mov byte [ebp - 0x41e], 0x4d
mov byte [ebp - 0x41d], 0x50
mov byte [ebp - 0x41c], 0x20
mov byte [ebp - 0x41b], 0x49
mov byte [ebp - 0x41a], 0x4e
mov byte [ebp - 0x419], 0x46
mov byte [ebp - 0x418], 0x4f
mov byte [ebp - 0x417], 0x20
mov byte [ebp - 0x416], 0x42
mov byte [ebp - 0x415], 0x4c
mov byte [ebp - 0x414], 0x4f
mov byte [ebp - 0x413], 0x43
mov byte [ebp - 0x412], 0x4b
mov cl, byte [ebp - 0x20c]
mov byte [ebp - 0x411], cl
push 0x200
lea edx, [ebp - 0x610]
push edx
lea ecx, [ebp - 0x84c]
call fcn.00566980
jmp 0x4496c6
lea ecx, [ebp - 0x84c]
call fcn.00566a44
lea eax, [ebp - 0xe58]
push eax
call fcn.0054ce70
add esp, 4
mov byte [ebp + eax - 0xe5d], 0x34
push 0
push 0x1041
lea ecx, [ebp - 0xe58]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.00566829
mov dword [ebp - 0xedc], 0
jmp 0x4498c9
mov edx, dword [ebp - 0xedc]
add edx, 1
mov dword [ebp - 0xedc], edx
cmp dword [ebp - 0xedc], 0x3ff
jg 0x44998a
push 0x10
push 0
lea eax, [ebp - 0x83c]
push eax
call fcn.0054bf90
add esp, 0xc
mov byte [ebp - 0x83c], 0xf0
mov byte [ebp - 0x83b], 0xa
mov ecx, dword [ebp - 0xedc]
sar ecx, 8
mov byte [ebp - 0x83a], cl
mov dl, byte [ebp - 0xedc]
mov byte [ebp - 0x839], dl
mov byte [ebp - 0x831], 2
lea eax, [ebp - 0x83c]
push eax
push 0x400
lea ecx, [ebp - 0x610]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov al, byte [ebp + 0x1c]
push eax
mov cl, byte [ebp + 0x18]
push ecx
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004bf692
add esp, 0x28
mov dword [ebp - 0xeec], eax
push 3
lea eax, [ebp - 0x400]
push eax
lea ecx, [ebp - 0x40b]
push ecx
call fcn.0054c7e0
add esp, 0xc
push 0x10
lea edx, [ebp - 0x410]
push edx
lea ecx, [ebp - 0x84c]
call fcn.00566980
jmp 0x4498ba
lea ecx, [ebp - 0x84c]
call fcn.00566a44
lea eax, [ebp - 0xe58]
push eax
call fcn.0054ce70
add esp, 4
mov byte [ebp + eax - 0xe5d], 0x35
push 0
push 0x1041
lea ecx, [ebp - 0xe58]
push ecx
lea ecx, [ebp - 0x84c]
call fcn.00566829
mov dword [ebp - 0xedc], 0x3ff
jmp 0x4499e0
mov edx, dword [ebp - 0xedc]
sub edx, 1
mov dword [ebp - 0xedc], edx
cmp dword [ebp - 0xedc], 0x3e0
jle 0x449abd
push 0x10
push 0
lea eax, [ebp - 0x83c]
push eax
call fcn.0054bf90
add esp, 0xc
mov byte [ebp - 0x83c], 0xf0
mov byte [ebp - 0x83b], 0xa
mov ecx, dword [ebp - 0xedc]
sar ecx, 8
mov byte [ebp - 0x83a], cl
mov dl, byte [ebp - 0xedc]
mov byte [ebp - 0x839], dl
mov byte [ebp - 0x831], 2
lea eax, [ebp - 0x83c]
push eax
push 0x400
lea ecx, [ebp - 0x610]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov al, byte [ebp + 0x1c]
push eax
mov cl, byte [ebp + 0x18]
push ecx
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.004bf692
add esp, 0x28
mov dword [ebp - 0xeec], eax
mov eax, dword [ebp - 0xedc]
push eax
push str.Blk__.3X_P0S0
lea ecx, [ebp - 0x3f0]
push ecx
call fcn.0054c6e3
add esp, 0xc
push 0x1d0
push 0
lea edx, [ebp - 0x3e0]
push edx
call fcn.0054bf90
add esp, 0xc
push 0x400
lea eax, [ebp - 0x610]
push eax
lea ecx, [ebp - 0x84c]
call fcn.00566980
jmp 0x4499d1
lea ecx, [ebp - 0x84c]
call fcn.00566a44
mov ecx, dword [ebp - 0xee8]
and ecx, 0xffff
push ecx
push str.__.3X_
lea edx, [ebp - 0xc4c]
push edx
call fcn.0054c6e3
add esp, 0xc
lea eax, [ebp - 0xe58]
push eax
call fcn.0054ce70
add esp, 4
mov dword [ebp - 0x614], eax
push 4
mov ecx, dword [ebp - 0x614]
lea edx, [ebp + ecx - 0xe5c]
push edx
mov eax, dword [ebp - 0x614]
lea esi, [ebp + eax - 0xe58]
lea ecx, [ebp - 0xc4c]
push ecx
call fcn.0054ce70
add esp, 4
mov edx, 4
sub edx, eax
sub esi, edx
push esi
call fcn.0054c7e0
add esp, 0xc
lea eax, [ebp - 0xc4c]
push eax
call fcn.0054ce70
add esp, 4
push eax
lea ecx, [ebp - 0xc4c]
push ecx
mov edx, dword [ebp - 0x614]
lea eax, [ebp + edx - 0xe5c]
push eax
call fcn.0054c7e0
add esp, 0xc
lea ecx, [ebp - 0xe58]
push ecx
call fcn.0054ce70
add esp, 4
mov esi, eax
sub esi, 5
lea edx, [ebp - 0xc4c]
push edx
call fcn.0054ce70
add esp, 4
sub esi, eax
mov byte [ebp + esi - 0xe58], 0x33
push 0
push 0x1041
lea eax, [ebp - 0xe58]
push eax
lea ecx, [ebp - 0x84c]
call fcn.00566829
mov ecx, 1
test ecx, ecx
je 0x449d83
mov dword [ebp - 0x210], 8
cmp dword [0x673ea0], 0
jl 0x449be2
cmp dword [0x673ea0], 7
jg 0x449be2
mov dword [ebp - 0x208], pe_nt_image_headers32
mov dword [ebp - 0xedc], 0
jmp 0x449bfd
mov edx, dword [ebp - 0xedc]
add edx, 1
mov dword [ebp - 0xedc], edx
mov eax, dword [ebp - 0xedc]
cmp eax, dword [ebp - 0x208]
jge 0x449d83
push 0x400
push 0
lea ecx, [ebp - 0x610]
push ecx
call fcn.0054bf90
add esp, 0xc
push 0x10
push 0
lea edx, [ebp - 0x83c]
push edx
call fcn.0054bf90
add esp, 0xc
mov byte [ebp - 0x83c], 0xf0
mov byte [ebp - 0x83b], 0xa
mov eax, dword [ebp - 0xee8]
and eax, 0xffff
sar eax, 8
mov byte [ebp - 0x83a], al
mov cl, byte [ebp - 0xee8]
mov byte [ebp - 0x839], cl
mov dl, byte [ebp - 0xedc]
mov byte [ebp - 0x838], dl
cmp dword [ebp - 0x618], 0
je 0x449c87
mov al, byte [ebp - 0xee4]
mov byte [ebp - 0x838], al
mov cl, byte [ebp - 0xee0]
mov byte [ebp - 0x837], cl
mov dl, byte [ebp - 0x824]
mov byte [ebp - 0x836], dl
mov byte [ebp - 0x831], 1
cmp dword [0x673ea0], 0
jl 0x449ce5
cmp dword [0x673ea0], 7
jg 0x449ce5
mov eax, dword [ebp - 0xedc]
cdq
and edx, 3
add eax, edx
sar eax, 2
mov byte [ebp - 0x838], al
mov eax, dword [ebp - 0xedc]
and eax, reloc.WSOCK32.dll_closesocket
jns 0x449cdf
dec eax
or eax, 0xfffffffc
inc eax
mov byte [ebp - 0x837], al
lea ecx, [ebp - 0x83c]
push ecx
push 0x200
lea edx, [ebp - 0x610]
push edx
mov eax, dword [ebp + 0x20]
push eax
mov cl, byte [ebp + 0x1c]
push ecx
mov dl, byte [ebp + 0x18]
push edx
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.004bf692
add esp, 0x28
mov dword [ebp - 0xeec], eax
cmp dword [ebp - 0x618], 0
je 0x449d67
mov ecx, dword [ebp - 0xee4]
add ecx, 1
mov dword [ebp - 0xee4], ecx
mov eax, dword [ebp - 0xedc]
add eax, 1
cdq
idiv dword [ebp - 0x210]
test edx, edx
jne 0x449d67
mov dword [ebp - 0xee4], 0
mov edx, dword [ebp - 0xee0]
add edx, 1
mov dword [ebp - 0xee0], edx
push 0x200
lea eax, [ebp - 0x610]
push eax
lea ecx, [ebp - 0x84c]
call fcn.00566980
jmp 0x449bee
lea ecx, [ebp - 0x84c]
call fcn.00566a44
lea ecx, [ebp - 0xd54]
push ecx
lea edx, [ebp - 0xe58]
push edx
call fcn.0054be90
add esp, 8
push 0
push 0
push 0x5a2ea0
mov ecx, dword [ebp - 0x10fc]
call fcn.00564245
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x204]
call fcn.004048d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x84c]
call fcn.0056676c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 0x1c