Function at 0x4cfb74
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0xc7
push 0
push 0
dec ecx
jne 0x4cfb7d
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x4d2358
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
add eax, 0x1482c
call fcn.00403ccc
mov eax, dword [ebp - 4]
add eax, 0x14824
call fcn.00403ccc
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x890]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x894]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x898]
xor edx, edx
call fcn.00435340
mov dword [ebp - 0x38], 0x46
xor ecx, ecx
push ebp
push 0x4d2270
push dword fs:[ecx]
mov dword fs:[ecx], esp
cmp dword [ebp - 0xc], 0
jne 0x4cfd42
mov edx, dword [ebp - 8]
mov eax, edx
shl edx, 3
sub edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
mov al, byte [eax + edx*8 + 0xe]
cmp al, 0x10
je 0x4cfc82
mov ecx, dword [ebp - 8]
mov ebx, ecx
shl ecx, 3
sub ecx, ebx
mov ebx, dword [ebp - 4]
mov ebx, dword [ebx + 0x15194]
cmp al, 0xf
je 0x4cfc82
mov ecx, dword [ebp - 8]
mov ebx, ecx
shl ecx, 3
sub ecx, ebx
mov ebx, dword [ebp - 4]
mov ebx, dword [ebx + 0x15194]
cmp al, 0xe
je 0x4cfc82
mov ecx, dword [ebp - 8]
mov ebx, ecx
shl ecx, 3
sub ecx, ebx
mov ebx, dword [ebp - 4]
mov ebx, dword [ebx + 0x15194]
cmp al, 0xb
je 0x4cfc82
mov ecx, dword [ebp - 8]
mov ebx, ecx
shl ecx, 3
sub ecx, ebx
mov ebx, dword [ebp - 4]
mov ebx, dword [ebx + 0x15194]
cmp al, 0xc
jne 0x4cfc92
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
cmp dword [eax + edx*8 + 4], 0xffffffff
je 0x4cfc9e
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
mov dword [eax + 0x14fe0], ecx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
cmp dword [eax + edx*8 + 0x10], 0
jne 0x4cfcd8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
call fcn.00435458
mov edx, 3
mov eax, dword [ebp - 4]
call fcn.004d2cb8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 0x10], 0
jle 0x4cfd3a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14fe0]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 5
je 0x4cfd3a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14fe0]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 6
je 0x4cfd3a
mov eax, dword [ebp - 4]
call fcn.004ce0b0
mov eax, dword [ebp - 4]
call fcn.004cdf84
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
mov byte [eax + 0x1451e], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
xor edx, edx
call fcn.00435458
inc dword [ebp - 0x38]
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 0x10], 0
jle 0x4d1294
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov al, byte [edx + eax*8 + 0xf]
sub al, 1
jb 0x4cfdb5
je 0x4cfe19
jmp 0x4cfe49
cmp dword [ebp - 0xc], 0
jne 0x4cfddd
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x151a4]
mov eax, dword [ebp - 4]
call fcn.004cfa04
test al, al
jne 0x4cfddd
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x151a4]
call fcn.00403d64
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov eax, dword [edx + eax*8]
mov edx, dword [ebp - 4]
add eax, dword [edx + 0x14474]
dec eax
add eax, 4
mov dword [ebp - 0x30], eax
jmp 0x4cfea4
lea eax, [ebp - 0x2c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15198]
call fcn.00403d64
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov eax, dword [edx + eax*8]
dec eax
add eax, 4
mov dword [ebp - 0x30], eax
jmp 0x4cfea4
lea eax, [ebp - 0x2c]
mov esi, dword [ebp - 8]
mov edx, esi
shl esi, 3
sub esi, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
xor ebx, ebx
mov bl, byte [edx + esi*8 + 0xf]
mov edx, dword [ebp - 4]
mov edx, dword [edx + ebx*4 + 0x14518]
call fcn.00403d64
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x14568]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
add eax, dword [edx + esi*8]
dec eax
add eax, 4
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x2c]
call fcn.00409718
test al, al
jne 0x4cfee5
cmp dword [ebp - 0x2c], 0
je 0x4cfed0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x634]
mov dl, 1
call fcn.00456d84
mov eax, dword [ebp - 4]
mov byte [eax + 0x14a9c], 0x16
mov eax, dword [ebp - 4]
call fcn.004ce0d8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 4]
add eax, 0x14ab0
mov edx, dword [ebp - 0x2c]
call fcn.0040649a
mov eax, dword [0x50b4bc]
mov byte [eax], 0
mov eax, dword [ebp - 4]
add eax, 0x14ab0
mov edx, 1
call fcn.004069d1
call fcn.00402874
mov edx, dword [ebp - 0x30]
sub edx, 4
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406a08
call fcn.00402874
lea eax, [ebp - 0x10]
push eax
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 4]
add eax, 0x14ab0
mov ecx, 4
call fcn.0040653c
call fcn.00402874
inc dword [ebp - 0x38]
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
movzx eax, byte [edx + eax*8 + 0xe]
cmp eax, 0x10
ja case.0x4cff6e.8
jmp dword [eax*4 + 0x4cff75]
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2370
lea edx, [ebp - 0x58c]
mov eax, dword [ebp - 8]
call fcn.00409428
push dword [ebp - 0x58c]
push 0x4d2380
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2370
lea edx, [ebp - 0x590]
mov eax, dword [ebp - 8]
call fcn.00409428
push dword [ebp - 0x590]
push 0x4d2390
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2370
lea edx, [ebp - 0x594]
mov eax, dword [ebp - 8]
call fcn.00409428
push dword [ebp - 0x594]
push 0x4d23a0
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d23b0
lea edx, [ebp - 0x598]
mov eax, dword [ebp - 8]
call fcn.00409428
push dword [ebp - 0x598]
push 0x4d23c0
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2370
lea edx, [ebp - 0x59c]
mov eax, dword [ebp - 8]
call fcn.00409428
push dword [ebp - 0x59c]
push 0x4d23d0
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2370
lea edx, [ebp - 0x5a0]
mov eax, dword [ebp - 8]
call fcn.00409428
push dword [ebp - 0x5a0]
push 0x4d23e0
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
lea eax, [ebp - 0x1c]
call fcn.00403ccc
cmp dword [ebp - 0xc], 0
jne 0x4d0fad
mov eax, dword [ebp - 0x30]
push eax
push 1
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov eax, dword [edx + eax*8 + 0x10]
push eax
lea eax, [ebp - 0x1c]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x155ac]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x1555c]
lea eax, [ebp - 0x5a4]
call fcn.00403f98
mov edx, dword [ebp - 0x5a4]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
call fcn.004be404
mov eax, dword [ebp - 4]
cmp dword [eax + 0x14a98], 0
je 0x4d048a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14a98]
call fcn.00409718
test al, al
je 0x4d048a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov eax, dword [eax + 0x208]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x58]
lea edx, [ebp - 0x5a8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x5a8]
lea edx, [ebp - 0x20]
call fcn.004090d8
mov edx, dword [ebp - 0x20]
mov eax, 0x4d23f0
call fcn.00404238
mov ebx, eax
test ebx, ebx
jle 0x4d0fad
lea eax, [ebp - 0x20]
push eax
lea edx, [ebx + 5]
mov ecx, 0x14
mov eax, dword [ebp - 0x20]
call fcn.00404154
mov edx, dword [ebp - 0x20]
mov eax, 0x4d2400
call fcn.00404238
test eax, eax
jne 0x4d02b6
lea edx, [ebx + 4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov ecx, dword [eax]
call dword [ecx + 0xc8]
lea edx, [ebp - 0x5b0]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14a98]
call fcn.00409868
mov ecx, dword [ebp - 0x5b0]
lea eax, [ebp - 0x5ac]
mov edx, 0x4d2414
call fcn.00403f98
mov edx, dword [ebp - 0x5ac]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
call fcn.0042c2f8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov eax, dword [eax + 0x208]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x64]
jmp 0x4d0472
lea edx, [ebp - 0x5b4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov eax, dword [eax + 0x208]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x5b4]
lea edx, [ebp - 0x20]
call fcn.004090d8
mov edx, dword [ebp - 0x20]
mov eax, 0x4d2400
call fcn.00404238
mov ebx, eax
lea eax, [ebp - 0x20]
push eax
lea edx, [ebx + 0xa]
mov ecx, 0xff
mov eax, dword [ebp - 0x20]
call fcn.00404154
mov edx, dword [ebp - 0x20]
mov eax, 0x4d2434
call fcn.00404238
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0x18]
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x20]
call fcn.00404154
jmp 0x4d0344
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov ecx, eax
dec ecx
mov edx, 2
mov eax, dword [ebp - 0x20]
call fcn.00404154
mov eax, dword [ebp - 0x20]
mov al, byte [eax]
cmp al, 0x5c
je 0x4d0328
cmp al, 0x2e
je 0x4d0328
cmp al, 0x20
je 0x4d0328
cmp al, 0x3d
je 0x4d0328
cmp al, 0x27
je 0x4d0328
cmp al, 0x22
je 0x4d0328
jmp 0x4d037f
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x20]
call fcn.00404154
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov edx, dword [ebp - 0x20]
cmp byte [edx + eax - 1], 0x20
je 0x4d0363
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov edx, dword [ebp - 0x20]
cmp byte [edx + eax - 1], 0x27
je 0x4d0363
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov edx, dword [ebp - 0x20]
cmp byte [edx + eax - 1], 0x22
je 0x4d0363
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2440
push dword [ebp - 0x20]
lea eax, [ebp - 0x5b8]
mov edx, 4
call fcn.0040400c
mov eax, dword [ebp - 0x5b8]
call fcn.00409718
test al, al
jne 0x4d0472
mov edx, ebx
dec edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov ecx, dword [eax]
call dword [ecx + 0xc8]
mov edx, dword [ebp - 0x18]
add edx, 9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov ecx, dword [eax]
call dword [ecx + 0xc4]
lea edx, [ebp - 0x5c0]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14a98]
call fcn.00409868
mov ecx, dword [ebp - 0x5c0]
lea eax, [ebp - 0x5bc]
mov edx, 0x4d2414
call fcn.00403f98
mov edx, dword [ebp - 0x5bc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
call fcn.0042c2f8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
mov eax, dword [eax + 0x208]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x64]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8d4]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0xc4]
jmp 0x4d0fad
mov eax, dword [ebp - 4]
add eax, 0x14a98
call fcn.00403ccc
jmp 0x4d0fad
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d244c
lea eax, [ebp - 0x1c]
mov edx, 3
call fcn.0040400c
mov eax, dword [ebp - 0x1c]
call fcn.00409764
jmp 0x4d0fad
cmp dword [ebp - 0xc], 5
jne 0x4d055d
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 0x24], 0
jne 0x4d0550
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14aa8]
call fcn.00409764
mov eax, dword [ebp - 4]
inc dword [eax + 0x16640]
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2460
lea edx, [ebp - 0x5c4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16640]
call fcn.00409428
push dword [ebp - 0x5c4]
push 0x4d2474
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
lea eax, [ebp - 0x1c]
call fcn.00403ccc
jmp 0x4d0fad
mov eax, dword [ebp - 4]
inc dword [eax + 0x16640]
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2484
lea edx, [ebp - 0x5c8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16640]
call fcn.00409428
push dword [ebp - 0x5c8]
push 0x4d2474
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
cmp byte [eax + 0x144bd], 1
jne 0x4d0622
cmp dword [ebp - 0xc], 0
cmp dword [ebp - 0xc], 5
jne 0x4d05d1
lea eax, [ebp - 0x1c]
call fcn.00403ccc
jmp 0x4d0fad
mov eax, dword [ebp - 4]
inc dword [eax + 0x16644]
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2494
lea edx, [ebp - 0x5cc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16644]
call fcn.00409428
push dword [ebp - 0x5cc]
push 0x4d24a4
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5f0]
mov edx, 0x4d24b4
call fcn.00435458
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
add eax, 0x14aac
call fcn.00403ccc
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.004d2cb8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov edx, 0x4d24c0
call fcn.00435458
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x144be], 1
jne 0x4d07a9
cmp dword [ebp - 0xc], 0
jne 0x4d0758
xor eax, eax
push ebp
push 0x4d06ff
push dword fs:[eax]
mov dword fs:[eax], esp
lea edx, [ebp - 0x5d0]
mov eax, 0x4d24f0
call fcn.0046d7e4
mov edx, dword [ebp - 0x5d0]
mov eax, dword [ebp - 4]
add eax, 0x16618
call fcn.00405394
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d0758
mov eax, dword [ebp - 4]
inc dword [eax + 0x16648]
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2494
lea edx, [ebp - 0x5d8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16648]
call fcn.00409428
push dword [ebp - 0x5d8]
push 0x4d250c
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5f0]
mov edx, 0x4d24b4
call fcn.00435458
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
add eax, 0x14aac
call fcn.00403ccc
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.004d2cb8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov edx, 0x4d251c
call fcn.00435458
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x144bf], 1
jne 0x4d088e
mov eax, dword [ebp - 4]
inc dword [eax + 0x1664c]
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d254c
lea edx, [ebp - 0x5dc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1664c]
call fcn.00409428
push dword [ebp - 0x5dc]
push 0x4d255c
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
jmp 0x4d0fad
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5f0]
mov edx, 0x4d24b4
call fcn.00435458
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
add eax, 0x14aac
call fcn.00403ccc
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.004d2cb8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov edx, 0x4d256c
call fcn.00435458
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x144c0], 1
jne 0x4d0ab3
push 0
lea edx, [ebp - 0x43c]
mov eax, dword [ebp - 4]
add eax, 0x14ab0
mov ecx, 0x1e
call fcn.0040653c
call fcn.00402874
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 0
je 0x4d0979
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 3
jne 0x4d0990
mov ebx, 0x1e
lea esi, [ebp - 0x43c]
mov al, byte [esi]
sub al, byte [ebp - 0x14]
dec eax
mov byte [esi], al
inc esi
dec ebx
jne 0x4d0984
lea eax, [ebp - 0x20]
call fcn.00403ccc
mov ebx, 0xf
lea esi, [ebp - 0x43c]
lea eax, [ebp - 0x5e0]
mov dl, byte [esi]
call fcn.00403e74
mov edx, dword [ebp - 0x5e0]
lea eax, [ebp - 0x20]
call fcn.00403f54
inc esi
dec ebx
jne 0x4d09a3
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2440
push dword [ebp - 0x20]
push 0x4d25a4
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 1
je 0x4d0a22
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 4
jne 0x4d0a26
add dword [ebp - 0x30], 0x1e
mov eax, dword [ebp - 0x1c]
call fcn.00409718
test al, al
je 0x4d0fad
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5f0]
mov edx, 0x4d24b4
call fcn.00435458
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
add eax, 0x14aac
mov edx, dword [ebp - 0x1c]
call fcn.00403d20
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.004d2cb8
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406604
call fcn.00402874
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5f0]
mov edx, 0x4d24b4
call fcn.00435458
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
add eax, 0x14aac
call fcn.00403ccc
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.004d2cb8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8ac]
mov edx, 0x4d25b4
call fcn.00435458
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406604
call fcn.00402874
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
push 0
lea edx, [ebp - 0x43c]
mov eax, dword [ebp - 4]
add eax, 0x14ab0
mov ecx, 0x1e
call fcn.0040653c
call fcn.00402874
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 0
je 0x4d0ba0
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 3
jne 0x4d0bb7
mov ebx, 0x1e
lea esi, [ebp - 0x43c]
mov al, byte [esi]
sub al, byte [ebp - 0x14]
dec eax
mov byte [esi], al
inc esi
dec ebx
jne 0x4d0bab
mov ebx, 0xf
lea esi, [ebp - 0x43c]
lea eax, [ebp - 0x5e4]
mov dl, byte [esi]
call fcn.00403e74
mov edx, dword [ebp - 0x5e4]
lea eax, [ebp - 0x20]
call fcn.00403f54
inc esi
dec ebx
jne 0x4d0bc2
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 5
jne 0x4d0c27
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2440
push dword [ebp - 0x20]
push 0x4d25f4
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 6
jne 0x4d0c6d
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2440
push dword [ebp - 0x20]
push 0x4d2604
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 1
je 0x4d0ca1
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x28], 4
jne 0x4d0ca5
add dword [ebp - 0x30], 0x1e
mov eax, dword [ebp - 4]
add eax, 0xb58
mov edx, dword [ebp - 0x1c]
call fcn.00403d20
mov eax, dword [ebp - 0x1c]
call fcn.00409718
test al, al
je 0x4d0fad
mov ebx, 1
lea edx, [ebp - 0x5e8]
mov eax, dword [ebp - 0x1c]
call fcn.00409830
mov edx, dword [ebp - 0x5e8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x155ac]
call fcn.0040405c
jne 0x4d0df0
mov eax, dword [ebp - 4]
cmp dword [eax + ebx*4 + 0x15a5c], 0
je 0x4d0d55
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x15a5c]
push eax
call sub.user32.dll_IsWindow
test eax, eax
je 0x4d0d55
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x15a5c]
push eax
call sub.user32.dll_SetForegroundWindow
push 9
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x15a5c]
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406604
call fcn.00402874
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
push 5
lea edx, [ebp - 0x5ec]
mov eax, dword [ebp - 0x1c]
call fcn.004097fc
mov eax, dword [ebp - 0x5ec]
call fcn.00404110
push eax
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x155ac]
call fcn.00404110
push eax
push 0x4d260c
mov eax, dword [0x50b418]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
push eax
call sub.shell32.dll_ShellExecuteA
cmp eax, 0x20
jbe 0x4d0dfd
lea edx, [ebp - 0x5f0]
mov eax, dword [ebp - 0x1c]
call fcn.00409830
mov edx, dword [ebp - 0x5f0]
mov eax, dword [ebp - 4]
lea eax, [eax + ebx*4 + 0x155ac]
call fcn.00403d20
mov eax, dword [ebp - 4]
mov dword [eax + 0x15f10], ebx
mov eax, dword [ebp - 4]
call fcn.004cec6c
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406604
call fcn.00402874
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
inc ebx
cmp ebx, 0x12d
jne 0x4d0cca
cmp ebx, 0x12d
jne 0x4d0f1d
mov ebx, 1
mov eax, dword [ebp - 4]
cmp dword [eax + ebx*4 + 0x155ac], 0
je 0x4d0e4c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + ebx*4 + 0x155ac]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x1555c]
lea eax, [ebp - 0x5f4]
call fcn.00403f98
mov eax, dword [ebp - 0x5f4]
call fcn.00409718
test al, al
jne 0x4d0f10
mov eax, dword [ebp - 4]
mov dword [eax + 0x15f10], ebx
lea edx, [ebp - 0x5f8]
mov eax, dword [ebp - 0x1c]
call fcn.00409830
mov edx, dword [ebp - 0x5f8]
mov eax, dword [ebp - 4]
lea eax, [eax + ebx*4 + 0x155ac]
call fcn.00403d20
push 5
lea edx, [ebp - 0x5fc]
mov eax, dword [ebp - 0x1c]
call fcn.004097fc
mov eax, dword [ebp - 0x5fc]
call fcn.00404110
push eax
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x155ac]
call fcn.00404110
push eax
push 0x4d260c
mov eax, dword [0x50b418]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
push eax
call sub.shell32.dll_ShellExecuteA
cmp eax, 0x20
jbe 0x4d0eca
mov eax, dword [ebp - 4]
call fcn.004cec6c
jmp 0x4d0ef1
push 0
mov ecx, 0x4d2614
mov edx, 0x4d2620
mov eax, dword [0x50b418]
mov eax, dword [eax]
call fcn.00453df0
mov eax, dword [ebp - 4]
lea eax, [eax + ebx*4 + 0x155ac]
call fcn.00403ccc
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406604
call fcn.00402874
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
inc ebx
cmp ebx, 0x12d
jne 0x4d0e0e
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
lea eax, [ebp - 0x20]
mov edx, dword [ebp - 4]
add edx, 0x151c1
call fcn.00403ef0
mov eax, dword [ebp - 4]
call fcn.004ce0d8
push 0
push 0x4d2648
push dword [ebp - 0x20]
push 0x4d2678
mov eax, dword [ebp - 4]
push dword [eax + 0x148e4]
push 0x4d2688
lea eax, [ebp - 0x600]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 0x600]
call fcn.00404110
mov edx, eax
mov ecx, 0x4d2614
mov eax, dword [0x50b418]
mov eax, dword [eax]
call fcn.00453df0
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406604
call fcn.00402874
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
inc dword [ebp - 0x38]
cmp dword [ebp - 0xc], 0
jne 0x4d0fd4
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp byte [ecx + edx*8 + 0xe], 0xa
je 0x4d1126
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov al, byte [edx + eax*8 + 0x28]
cmp al, 1
je 0x4d100a
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 4
jne 0x4d1126
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov esi, dword [edx + eax*8 + 0x10]
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov dl, byte [edx + eax*8 + 0xe]
test dl, dl
je 0x4d1084
mov ecx, dword [ebp - 8]
mov ebx, ecx
shl ecx, 3
sub ecx, ebx
mov ebx, dword [ebp - 4]
mov ebx, dword [ebx + 0x15194]
cmp dl, 2
je 0x4d1084
mov ecx, dword [ebp - 8]
mov ebx, ecx
shl ecx, 3
sub ecx, ebx
mov ebx, dword [ebp - 4]
mov ebx, dword [ebx + 0x15194]
cmp dl, 0xa
je 0x4d1084
mov ecx, dword [ebp - 8]
mov ebx, ecx
shl ecx, 3
sub ecx, ebx
mov ebx, dword [ebp - 4]
mov ebx, dword [ebx + 0x15194]
cmp dl, 1
jne 0x4d10e0
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 0x24], 0
jle 0x4d10e0
cmp dword [ebp - 0xc], 0
jne 0x4d10a9
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
sub esi, dword [edx + eax*8 + 0x24]
jmp 0x4d10e0
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov edx, dword [edx + eax*8 + 0x10]
add edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
sub edx, dword [ecx + eax*8 + 0x24]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov esi, dword [edx + eax*8 + 0x24]
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 0
jne 0x4d1111
mov eax, dword [ebp - 0x30]
push eax
push esi
push 6
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
call fcn.004e8840
jmp 0x4d1126
mov eax, dword [ebp - 0x30]
push eax
push esi
push 1
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
call fcn.004e8840
cmp dword [ebp - 0xc], 0
jne 0x4d114a
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp byte [ecx + edx*8 + 0xe], 0xa
je 0x4d1294
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov al, byte [edx + eax*8 + 0x28]
test al, al
je 0x4d1180
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 3
jne 0x4d1294
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov esi, dword [edx + eax*8 + 0x10]
mov ebx, dword [ebp - 8]
mov eax, ebx
shl ebx, 3
sub ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
mov al, byte [eax + ebx*8 + 0xe]
test al, al
je 0x4d11cd
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 1
jne 0x4d1266
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
cmp dword [eax + ebx*8 + 0x24], 0
jle 0x4d1266
cmp dword [ebp - 0xc], 0
jne 0x4d11f6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
sub esi, dword [eax + ebx*8 + 0x24]
jmp 0x4d1266
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.004066c8
call fcn.00402874
mov esi, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
mov edx, dword [eax + ebx*8 + 0x10]
add edx, esi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
sub edx, dword [eax + ebx*8 + 0x24]
sub edx, 4
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406a08
call fcn.00402874
lea eax, [ebp - 0x10]
push eax
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 4]
add eax, 0x14ab0
mov ecx, 4
call fcn.0040653c
call fcn.00402874
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
mov esi, dword [eax + ebx*8 + 0x24]
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.004066c8
call fcn.00402874
mov dword [ebp - 0x30], eax
push esi
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x1c]
push eax
push 1
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 4]
call fcn.004c72d8
xor eax, eax
push ebp
push 0x4d12d8
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 0x10], 0
jle 0x4d12ce
mov eax, dword [ebp - 4]
add eax, 0x14ab0
call fcn.00406604
call fcn.00402874
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d12e2
inc dword [ebp - 0x38]
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
movzx eax, byte [edx + eax*8 + 0xe]
cmp eax, 0x10
ja case.0x4d130c.0
mov al, byte [eax + 0x4d1313]
jmp dword [eax*4 + 0x4d1324]
mov ebx, 1
mov eax, dword [ebp - 4]
cmp dword [eax + ebx*4 + 0x155ac], 0
je 0x4d137c
lea edx, [ebp - 0x604]
mov eax, dword [ebp - 0x1c]
call fcn.004097fc
lea eax, [ebp - 0x604]
mov edx, dword [ebp - 4]
mov edx, dword [edx + ebx*4 + 0x155ac]
call fcn.00403f54
mov eax, dword [ebp - 0x604]
call fcn.00409718
test al, al
jne 0x4d142e
mov eax, dword [ebp - 4]
mov dword [eax + 0x15f10], ebx
lea edx, [ebp - 0x608]
mov eax, dword [ebp - 0x1c]
call fcn.00409830
mov edx, dword [ebp - 0x608]
mov eax, dword [ebp - 4]
lea eax, [eax + ebx*4 + 0x155ac]
call fcn.00403d20
push 5
lea edx, [ebp - 0x60c]
mov eax, dword [ebp - 0x1c]
call fcn.004097fc
mov eax, dword [ebp - 0x60c]
call fcn.00404110
push eax
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + ebx*4 + 0x155ac]
call fcn.00404110
push eax
push 0x4d260c
mov eax, dword [0x50b418]
mov eax, dword [eax]
mov eax, dword [eax + 0x24]
push eax
call sub.shell32.dll_ShellExecuteA
cmp eax, 0x20
jbe 0x4d13fa
mov eax, dword [ebp - 4]
call fcn.004cec6c
jmp 0x4d1421
mov eax, dword [ebp - 4]
lea eax, [eax + ebx*4 + 0x155ac]
call fcn.00403ccc
push 0
mov ecx, 0x4d2614
mov edx, 0x4d2620
mov eax, dword [0x50b418]
mov eax, dword [eax]
call fcn.00453df0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
inc ebx
cmp ebx, 0x12d
jne 0x4d1339
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
cmp dword [ebp - 0xc], 0
jne 0x4d1769
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov eax, dword [eax + 0x23c]
call fcn.00412d14
cmp dword [ebp - 0x1c], 0
je 0x4d1478
mov eax, dword [ebp - 0x1c]
call fcn.00409718
test al, al
jne 0x4d1497
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x14510]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov eax, dword [eax + 0x23c]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
jmp 0x4d14ae
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x58]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5f0]
mov edx, 0x4d2698
call fcn.00435458
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8dc]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x21], 0xa
jae 0x4d1529
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x450]
xor edx, edx
call fcn.00445d74
jmp 0x4d1539
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x450]
mov dl, 1
call fcn.00445d74
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
call fcn.004e1318
mov eax, dword [ebp - 4]
call fcn.004ce0d8
xor eax, eax
push ebp
push 0x4d1575
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov edx, dword [eax]
call dword [edx + 0xb0]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d157f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
mov ecx, dword [eax]
call dword [ecx + 0xc8]
xor eax, eax
push ebp
push 0x4d15cd
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x79c]
call fcn.0046269c
test eax, eax
jne 0x4d15c3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa0c]
mov edx, dword [eax]
call dword [edx + 0xb0]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d15d7
mov eax, dword [ebp - 4]
mov byte [eax + 0x15598], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x14400], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
cmp byte [eax + 0x1f6], 1
jne 0x4d160a
mov edx, 0x50
mov eax, dword [ebp - 4]
call fcn.004cecc4
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 4], 0xffffffff
jne 0x4d162c
mov eax, dword [ebp - 4]
call fcn.004d41b0
mov eax, dword [ebp - 4]
cmp byte [eax + 0xb14], 1
jne 0x4d16a8
mov eax, dword [ebp - 4]
mov byte [eax + 0xb14], 0
xor eax, eax
push ebp
push 0x4d169e
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa6c]
call fcn.0042f404
mov edx, eax
lea ecx, [ebp - 0x610]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xb00]
mov ebx, dword [eax]
call dword [ebx + 0xc]
mov eax, dword [ebp - 0x610]
call fcn.004094c8
mov esi, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov edx, esi
mov ecx, dword [eax]
call dword [ecx + 0xc8]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d16a8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov eax, dword [eax + 0x23c]
call fcn.00412dd0
mov eax, dword [ebp - 4]
cmp dword [eax + 0xafc], 0
je 0x4d1769
lea edx, [ebp - 0x614]
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0xa5c]
mov eax, dword [ebx + 0x23c]
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x614]
call fcn.00403f4c
push eax
mov al, byte [0x4d269c]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xafc]
mov eax, ebx
xor ecx, ecx
call fcn.00475924
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xffffffff
jle 0x4d175c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov edx, dword [ebp - 0x30]
mov ecx, dword [eax]
call dword [ecx + 0xc8]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xafc]
mov eax, dword [ebp - 4]
call fcn.004deeb8
mov edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov ecx, dword [eax]
call dword [ecx + 0xc4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
mov edx, dword [eax]
call dword [edx + 0xb0]
mov eax, dword [ebp - 4]
add eax, 0xafc
call fcn.00403ccc
cmp dword [ebp - 0xc], 1
jne 0x4d17b7
cmp dword [ebp - 0x1c], 0
je 0x4d1781
mov eax, dword [ebp - 0x1c]
call fcn.00409718
test al, al
jne 0x4d17a0
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x14510]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x608]
mov eax, dword [eax + 0x23c]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
jmp 0x4d17b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x608]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x58]
cmp dword [ebp - 0xc], 5
jne 0x4d1805
cmp dword [ebp - 0x1c], 0
je 0x4d17cf
mov eax, dword [ebp - 0x1c]
call fcn.00409718
test al, al
jne 0x4d17ee
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x14510]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa60]
mov eax, dword [eax + 0x23c]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
jmp 0x4d1805
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa60]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x58]
cmp dword [ebp - 0x1c], 0
je 0x4d1817
mov eax, dword [ebp - 0x1c]
call fcn.00409718
test al, al
jne 0x4d184f
xor eax, eax
push ebp
push 0x4d1840
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14510]
call fcn.00402f80
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d2263
mov eax, dword [ebp - 0x1c]
call fcn.00409764
jmp 0x4d2263
mov ebx, dword [ebp - 8]
mov eax, ebx
shl ebx, 3
sub ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
mov al, byte [eax + ebx*8 + 0xe]
cmp al, 0x10
je 0x4d18d7
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 0xf
je 0x4d18d7
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 0xe
je 0x4d18d7
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 0xb
je 0x4d18d7
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 0xc
jne 0x4d1a9e
xor eax, eax
mov dword [ebp - 0x3c], eax
push 0x4d26a8
lea edx, [ebp - 0x618]
mov eax, dword [ebp - 8]
call fcn.00409428
push dword [ebp - 0x618]
push 0x4d27bc
lea eax, [ebp - 0x20]
mov edx, 3
call fcn.0040400c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x15194]
movzx eax, byte [eax + ebx*8 + 0xe]
add eax, 0xfffffff5
cmp eax, 5
ja case.0x4d191d.13
jmp dword [eax*4 + 0x4d1924]
lea eax, [ebp - 0x20]
mov edx, 0x4d27c8
call fcn.00403f54
jmp case.0x4d191d.13
lea eax, [ebp - 0x20]
mov edx, 0x4d27d4
call fcn.00403f54
jmp case.0x4d191d.13
lea eax, [ebp - 0x20]
mov edx, 0x4d27e0
call fcn.00403f54
jmp case.0x4d191d.13
lea eax, [ebp - 0x20]
mov edx, 0x4d27ec
call fcn.00403f54
jmp case.0x4d191d.13
lea eax, [ebp - 0x20]
mov edx, 0x4d27f8
call fcn.00403f54
push dword [ebp - 0x20]
push 0x4d2804
push 0x4d2814
push 0x4d2820
push 0x4d2814
push 0x4d2830
lea eax, [ebp - 0x20]
mov edx, 6
call fcn.0040400c
mov eax, dword [ebp - 4]
inc dword [eax + 0x16640]
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2460
lea edx, [ebp - 0x61c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16640]
call fcn.00409428
push dword [ebp - 0x61c]
push 0x4d2840
lea eax, [ebp - 0x1c]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
test eax, eax
jle 0x4d1a1f
mov ebx, 1
lea esi, [ebp - 0x43c]
mov edx, dword [ebp - 0x20]
mov dl, byte [edx + ebx - 1]
mov byte [esi], dl
inc ebx
inc esi
dec eax
jne 0x4d1a11
mov edx, dword [ebp - 0x1c]
lea eax, [ebp - 0x588]
call fcn.0040649a
mov eax, dword [0x50b4bc]
mov byte [eax], 2
mov edx, 1
lea eax, [ebp - 0x588]
call fcn.004069e8
call fcn.00402874
lea eax, [ebp - 0x588]
call fcn.0040670c
call fcn.00402874
mov edx, eax
lea eax, [ebp - 0x588]
call fcn.00406a08
call fcn.00402874
push 0
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov ecx, eax
lea edx, [ebp - 0x43c]
lea eax, [ebp - 0x588]
call fcn.004065a0
call fcn.00402874
lea eax, [ebp - 0x588]
call fcn.00406604
call fcn.00402874
lea eax, [ebp - 0x20]
call fcn.00403ccc
mov eax, dword [ebp - 4]
xor ebx, ebx
mov bl, byte [eax + 0x15412]
cmp ebx, 1
jl 0x4d1abe
cmp ebx, 0xc8
jle 0x4d1ac3
mov ebx, 0x19
mov eax, dword [ebp - 4]
cmp byte [eax + 0x15411], 0
jne 0x4d1d62
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
cmp byte [eax + 0x1f6], 1
jne 0x4d1d62
mov edx, dword [ebp - 0x1c]
mov eax, 0x4d2840
call fcn.00404238
test eax, eax
jle 0x4d1d62
push 0x4d2850
lea edx, [ebp - 0x620]
mov eax, ebx
call fcn.00409428
push dword [ebp - 0x620]
push 0x4d28cc
push 0x4d2814
push 0x4d28d8
push 0x4d2814
push 0x4d28e4
push 0x4d2814
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.0040400c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
cmp byte [eax + 0x1f6], 1
jne 0x4d1bbc
mov edx, dword [ebp - 0x1c]
mov eax, 0x4d2840
call fcn.00404238
test eax, eax
jle 0x4d1bbc
mov eax, dword [ebp - 4]
cmp byte [eax + 0x15566], 2
je 0x4d1b8a
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x29], 1
jne 0x4d1bbc
push dword [ebp - 0x20]
push 0x4d28fc
push 0x4d2814
push 0x4d2920
mov eax, dword [ebp - 4]
push dword [eax + 0xb40]
push 0x4d292c
push 0x4d2814
lea eax, [ebp - 0x20]
mov edx, 7
call fcn.0040400c
push dword [ebp - 0x20]
push 0x4d293c
push 0x4d2814
push 0x4d295c
push 0x4d2814
push 0x4d2980
push 0x4d2814
push 0x4d298c
push 0x4d2814
push 0x4d29ac
push 0x4d2814
push 0x4d29b8
push 0x4d2814
push 0x4d29e8
push 0x4d2814
push 0x4d2a14
push 0x4d2814
push 0x4d2a4c
push 0x4d2814
push 0x4d2a70
push 0x4d2814
push 0x4d2a7c
push 0x4d2814
push 0x4d2aa0
push 0x4d2814
lea eax, [ebp - 0x20]
mov edx, 0x19
call fcn.0040400c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
cmp byte [eax + 0x1f6], 1
jne 0x4d1cb1
mov edx, dword [ebp - 0x1c]
mov eax, 0x4d2840
call fcn.00404238
test eax, eax
jle 0x4d1cb1
mov eax, dword [ebp - 4]
cmp byte [eax + 0x15566], 2
je 0x4d1c8d
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x29], 1
jne 0x4d1cb1
push dword [ebp - 0x20]
push 0x4d2ac8
push 0x4d2814
push 0x4d2b14
push 0x4d2814
lea eax, [ebp - 0x20]
mov edx, 5
call fcn.0040400c
lea eax, [ebp - 0x20]
mov edx, 0x4d2b5c
call fcn.00403f54
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
test eax, eax
jle 0x4d1ce3
mov ebx, 1
lea esi, [ebp - 0x43c]
mov edx, dword [ebp - 0x20]
mov dl, byte [edx + ebx - 1]
mov byte [esi], dl
inc ebx
inc esi
dec eax
jne 0x4d1cd5
mov edx, dword [ebp - 0x1c]
lea eax, [ebp - 0x588]
call fcn.0040649a
mov eax, dword [0x50b4bc]
mov byte [eax], 2
mov edx, 1
lea eax, [ebp - 0x588]
call fcn.004069d1
call fcn.00402874
lea eax, [ebp - 0x588]
call fcn.0040670c
call fcn.00402874
mov edx, eax
lea eax, [ebp - 0x588]
call fcn.00406a08
call fcn.00402874
push 0
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov ecx, eax
lea edx, [ebp - 0x43c]
lea eax, [ebp - 0x588]
call fcn.004065a0
call fcn.00402874
lea eax, [ebp - 0x588]
call fcn.00406604
call fcn.00402874
cmp dword [ebp - 0x20], 0
jne 0x4d1ead
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
cmp byte [eax + 0x1f6], 1
jne 0x4d1ead
mov edx, dword [ebp - 0x1c]
mov eax, 0x4d2840
call fcn.00404238
test eax, eax
jle 0x4d1ead
mov eax, dword [ebp - 4]
cmp byte [eax + 0x15566], 2
je 0x4d1dc1
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0x29], 1
jne 0x4d1ead
push 0x4d2b70
mov eax, dword [ebp - 4]
push dword [eax + 0xb40]
push 0x4d2bc8
push 0x4d2814
push 0x4d2bd8
push 0x4d2814
push 0x4d2bfc
push 0x4d2814
push 0x4d2c48
push 0x4d2814
push 0x4d2c90
lea eax, [ebp - 0x20]
mov edx, 0xb
call fcn.0040400c
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
test eax, eax
jle 0x4d1e2e
mov ebx, 1
lea esi, [ebp - 0x43c]
mov edx, dword [ebp - 0x20]
mov dl, byte [edx + ebx - 1]
mov byte [esi], dl
inc ebx
inc esi
dec eax
jne 0x4d1e20
mov edx, dword [ebp - 0x1c]
lea eax, [ebp - 0x588]
call fcn.0040649a
mov eax, dword [0x50b4bc]
mov byte [eax], 2
mov edx, 1
lea eax, [ebp - 0x588]
call fcn.004069d1
call fcn.00402874
lea eax, [ebp - 0x588]
call fcn.0040670c
call fcn.00402874
mov edx, eax
lea eax, [ebp - 0x588]
call fcn.00406a08
call fcn.00402874
push 0
mov eax, dword [ebp - 0x20]
call fcn.00403f4c
mov ecx, eax
lea edx, [ebp - 0x43c]
lea eax, [ebp - 0x588]
call fcn.004065a0
call fcn.00402874
lea eax, [ebp - 0x588]
call fcn.00406604
call fcn.00402874
cmp dword [ebp - 0xc], 5
jne 0x4d1fac
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
mov al, byte [edx + eax*8 + 0xe]
cmp al, 2
je 0x4d1f04
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 1
je 0x4d1f04
mov edx, dword [ebp - 8]
mov ecx, edx
shl edx, 3
sub edx, ecx
mov ecx, dword [ebp - 4]
mov ecx, dword [ecx + 0x15194]
cmp al, 0xa
jne 0x4d1fac
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 0x24], 0
jne 0x4d1f4d
mov eax, dword [ebp - 4]
add eax, 0x14aa8
mov edx, dword [ebp - 0x1c]
call fcn.00403d20
mov eax, dword [ebp - 4]
mov byte [eax + 0x144e9], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa88]
mov edx, 0x4d2ca0
call fcn.0047d9f0
jmp 0x4d1f9f
cmp dword [ebp - 0x1c], 0
jne 0x4d1f80
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x14510]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa60]
mov eax, dword [eax + 0x23c]
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14510]
call fcn.00402f80
jmp 0x4d1f9f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa60]
mov eax, dword [eax + 0x23c]
mov edx, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x58]
mov eax, dword [ebp - 0x1c]
call fcn.00409764
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x14a84]
cmp ebx, dword [ebp - 8]
je 0x4d20aa
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2370
lea edx, [ebp - 0x628]
mov eax, ebx
call fcn.00409428
push dword [ebp - 0x628]
push 0x4d23d0
lea eax, [ebp - 0x624]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 0x624]
call fcn.00409764
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d2370
lea edx, [ebp - 0x630]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14a84]
call fcn.00409428
push dword [ebp - 0x630]
push 0x4d23e0
lea eax, [ebp - 0x62c]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 0x62c]
call fcn.00409764
mov eax, dword [ebp - 4]
push dword [eax + 0x1555c]
mov eax, dword [ebp - 4]
push dword [eax + 0x155ac]
push 0x4d23b0
lea edx, [ebp - 0x638]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x14a84]
call fcn.00409428
push dword [ebp - 0x638]
push 0x4d23c0
lea eax, [ebp - 0x634]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 0x634]
call fcn.00409764
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
mov dword [eax + 0x14a84], edx
mov eax, dword [ebp - 8]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp dword [edx + eax*8 + 4], 0xffffffff
jne 0x4d2195
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 0xa
jbe 0x4d2195
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 0x11
jae 0x4d2195
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x15194]
cmp byte [edx + eax*8 + 0xe], 0xd
je 0x4d2195
mov eax, dword [ebp - 4]
mov byte [eax + 0x1451d], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x90c]
mov dl, 1
mov ecx, dword [eax]
call dword [ecx + 0x5c]
mov eax, dword [ebp - 4]
add eax, 0x14a88
mov edx, dword [ebp - 0x1c]
call fcn.00403d20
mov eax, dword [0x50b464]
cmp dword [eax], 0
jne 0x4d215c
mov ecx, dword [0x50b464]
mov eax, dword [0x50b418]
mov eax, dword [eax]
mov edx, dword [0x4b8548]
call fcn.00453c18
lea eax, [ebp - 0x63c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x14a88]
call fcn.004044d4
mov edx, dword [ebp - 0x63c]
mov eax, dword [0x50b464]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.0047d9f0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22e9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5f0]
mov edx, 0x4d24b4
call fcn.00435458
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
mov dl, 1
call fcn.00435340
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x8a4]
call fcn.0043566c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xa5c]
xor edx, edx
call fcn.00435340
mov eax, dword [ebp - 4]
add eax, 0x14aac
mov edx, dword [ebp - 0x1c]
call fcn.00403d20
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.004d2cb8
mov eax, dword [ebp - 4]
mov byte [eax + 0x14400], 0
jmp 0x4d2263
lea eax, [ebp - 0x20]
mov edx, dword [ebp - 4]
add edx, 0x151c1
call fcn.00403ef0
mov eax, dword [ebp - 4]
call fcn.004ce0d8
push 0
push 0x4d2648
push dword [ebp - 0x20]
push 0x4d2678
mov eax, dword [ebp - 4]
push dword [eax + 0x148e4]
push 0x4d2688
lea eax, [ebp - 0x640]
mov edx, 5
call fcn.0040400c
mov eax, dword [ebp - 0x640]
call fcn.00404110
mov edx, eax
mov ecx, 0x4d2614
mov eax, dword [0x50b418]
mov eax, dword [eax]
call fcn.00453df0
inc dword [ebp - 0x38]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4d22d8
cmp dword [ebp - 0xc], 0
jne 0x4d22e9
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.004ce578
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4d235f
lea eax, [ebp - 0x640]
call fcn.00403ccc
lea eax, [ebp - 0x63c]
call fcn.00404390
lea eax, [ebp - 0x638]
mov edx, 0x19
call fcn.00403cf0
lea eax, [ebp - 0x5d4]
mov edx, dword [0x4011b0]
mov ecx, 2
call fcn.00404748
lea eax, [ebp - 0x5cc]
mov edx, 0x11
call fcn.00403cf0
lea eax, [ebp - 0x2c]
call fcn.00403ccc
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00403cf0
ret