Function at 0x4ea578
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffc8
push ebx
push esi
push edi
mov esi, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x8ab], 1
mov byte [ebp - 0x1c], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x8ac], 1
cmp byte [esi], 1
je 0x4ea5b0
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x80]
xor edx, edx
push ebp
push 0x4ebb21
push dword fs:[edx]
mov dword fs:[edx], esp
mov byte [ebp - 9], 0
mov byte [ebp - 9], 0
mov byte [ebp - 0x19], 0
mov eax, dword [ebp - 4]
mov byte [eax + 0x9d5], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x7dd], 0
mov eax, dword [ebp - 4]
cmp byte [eax + 0x824], 0
jne 0x4ea604
mov eax, dword [ebp - 4]
and dword [eax + 0x203], 0xffffff7f
mov eax, dword [ebp - 4]
and dword [eax + 0x203], 0xfffdffff
push ebp
call fcn.004ea4f8
pop ecx
mov byte [ebp - 0x1d], 0
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x169]
test ebx, ebx
je 0x4eba87
mov eax, dword [ebp - 4]
cmp dword [eax + 0x16d], 0
je 0x4eba87
mov eax, dword [ebp - 4]
mov dl, byte [0x4ebb74]
cmp dl, byte [eax + 0xd2]
je 0x4ea66a
mov eax, dword [ebx + 0x2d]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x4ea66a
mov eax, dword [ebp - 0x2c]
test byte [eax + 0x2c], 2
je 0x4ea65c
mov byte [ebp - 0x1d], 1
jmp 0x4ea66a
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x4ea64d
mov byte [ebp - 0x11], 0
mov bl, byte [esi]
inc esi
mov eax, dword [ebp - 4]
cmp byte [eax + 0xdd3], 0
je 0x4ea686
cmp bl, 0xa
je 0x4eba7f
xor eax, eax
mov al, bl
cmp eax, 0xc
jg 0x4ea6a8
je 0x4eb0a9
sub eax, 1
jb 0x4eba7f
sub eax, 7
je 0x4ea6bf
jmp 0x4eb899
sub eax, 0xd
je 0x4eb1c6
sub eax, 0x72
je 0x4eab0b
jmp 0x4eb899
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x75], edx
push ebp
call fcn.004ea48c
pop ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x44]
test al, al
je 0x4ea6e3
mov byte [ebp - 0x19], 1
jmp 0x4eaaff
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jg 0x4eaaf4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4ea715
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xd], 0
jne 0x4ea715
xor eax, eax
jmp 0x4ea717
mov al, 1
mov edx, dword [ebp - 4]
mov byte [edx + 0x7dd], al
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x171], edx
mov eax, dword [ebp - 4]
test byte [eax + 0xd1], 0x10
je 0x4ea7eb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
jne 0x4ea7eb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4ea7eb
mov eax, dword [ebp - 4]
cmp dword [eax + 0xc4], 0
je 0x4ea7eb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc4]
cmp word [eax + 0x222], 0
je 0x4ea7eb
xor eax, eax
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x38]
push eax
push 8
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0xc4]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc4]
mov cl, 1
mov eax, dword [edi + 0x224]
call dword [edi + 0x220]
cmp dword [ebp - 0x38], 0
je 0x4ea7eb
mov eax, dword [ebp - 0x38]
mov edx, dword [0x4c0b0c]
call fcn.00404278
test al, al
je 0x4ea7eb
push 8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc4]
push eax
xor ecx, ecx
mov dl, 1
mov eax, dword [ebp - 0x38]
mov ebx, dword [eax]
call dword [ebx + 0xcc]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ebb67
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4ea86b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4ea817
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xd], 0
je 0x4ea86b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jne 0x4ea86b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
je 0x4ea84c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
mov eax, dword [eax + 0x2d]
cmp word [eax + 0x14], 0
jbe 0x4ea86b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov byte [eax + 0xc], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov byte [eax + 0xd], 0
jmp 0x4eaaff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
je 0x4ea88e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2a], 8
je 0x4ea8a1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
je 0x4eaa9e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
je 0x4ea9d0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 4]
mov dword [edx + 0x16d], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jbe 0x4ea998
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
movzx eax, word [eax + 0x14]
dec eax
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x16d]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004c6a78
test al, al
jne 0x4ea9a3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
movzx eax, word [eax + 0x14]
dec eax
mov edx, dword [ebp - 4]
mov dword [edx + 0x171], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov eax, dword [eax + 0xc]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4ea967
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jle 0x4ea967
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x171]
shl eax, 4
add dword [ebp - 8], eax
mov eax, dword [ebp - 8]
test byte [eax + 7], 0x10
je 0x4ea967
mov eax, dword [ebp - 4]
dec dword [eax + 0x171]
mov eax, dword [ebp - 4]
mov ax, word [eax + 0x171]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
mov word [edx + 0x14], ax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
add eax, dword [edx + 0x171]
mov byte [eax], 0
jmp 0x4ea9a3
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x171], edx
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004dacc8
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov byte [ebp - 9], 3
jmp 0x4eaaff
xor edi, edi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
je 0x4eaaff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
test byte [eax + 0x2b], 4
je 0x4eaa33
jmp 0x4eaa1d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
mov edx, dword [ebp - 4]
mov dword [edx + 0x169], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2b], 4
je 0x4eaa2c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
jne 0x4ea9f9
mov edi, 1
jmp 0x4eaa48
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
mov edx, dword [ebp - 4]
mov dword [edx + 0x169], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x2d]
mov edx, dword [ebp - 4]
mov dword [edx + 0x16d], eax
jmp 0x4eaa73
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov eax, dword [eax]
mov edx, dword [ebp - 4]
mov dword [edx + 0x16d], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4eaa5f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
movzx eax, word [eax + 0x14]
sub eax, edi
mov edx, dword [ebp - 4]
mov dword [edx + 0x171], eax
jmp 0x4eab7e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eaaff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
jne 0x4eaaff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x29], 1
je 0x4eaaff
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
and dword [eax + 0x29], 0xfffffffe
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x16d]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004ddf38
jmp 0x4eaaff
mov eax, dword [ebp - 4]
dec dword [eax + 0x171]
jmp 0x4eab7e
push ebp
call fcn.004ea4f8
pop ecx
jmp 0x4eba7f
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x75], edx
mov eax, dword [ebp - 4]
mov byte [eax + 0x8df], 1
mov eax, dword [ebp - 4]
mov di, word [eax + 0x882]
test di, di
je 0x4eab7e
mov eax, dword [ebp - 4]
test byte [eax + 0xe8], 1
je 0x4eab7e
mov edx, edi
mov eax, dword [ebp - 4]
call fcn.004c8a14
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x4eab7e
mov eax, dword [ebp - 4]
mov dx, word [eax + 0x882]
mov eax, dword [ebp - 4]
call fcn.004c8570
mov eax, dword [ebp - 4]
mov word [eax + 0x882], 0
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x30]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ebb67
push ebp
call fcn.004ea48c
pop ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x44]
test al, al
je 0x4eab9a
mov byte [ebp - 0x19], 1
jmp 0x4eba7f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4eac1d
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x171]
movzx eax, word [eax + 0x14]
cmp edx, eax
jl 0x4eac1d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4eac1d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
test byte [eax + 0x2b], 4
je 0x4eac1d
jmp 0x4eabed
mov edi, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x169], edi
test byte [edi + 0x2b], 4
je 0x4eabfd
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
test eax, eax
jne 0x4eabdc
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x171], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x2d]
mov edx, dword [ebp - 4]
mov dword [edx + 0x16d], eax
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x171]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov ax, word [eax + 0x14]
movzx ecx, ax
cmp edx, ecx
jl 0x4eae7e
test ax, ax
jne 0x4eae7e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4eac65
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xd], 0
je 0x4eac6f
mov eax, dword [ebp - 4]
mov byte [eax + 0xda2], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4eacd4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
jne 0x4eacd4
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004c5068
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov dx, word [0x4ebb74]
mov word [eax + 0x21], dx
mov byte [eax + 0xf], 0
mov byte [eax + 0xe], 0
xor edx, edx
mov dword [eax + 0x11], edx
mov edx, dword [0x4ebb74]
mov dword [eax + 0x29], edx
mov byte [eax + 0xc], 0
mov byte [eax + 0xd], 0
jmp 0x4eae11
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x171]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
movzx edx, word [edx + 0x14]
cmp eax, edx
jl 0x4ead44
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
je 0x4ead44
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4ead44
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4ead44
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
mov ecx, dword [eax + 0x2d]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x31]
mov eax, dword [ebp - 4]
call fcn.004c6a78
test al, al
jne 0x4eae11
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
sete byte [ebp - 0x1a]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
test byte [eax + 0x29], 1
setne al
mov byte [ebp - 0x1c], al
push 3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x31]
mov cl, 9
mov eax, dword [ebp - 4]
call fcn.004c92b0
push 3
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004c92b0
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.004ebb7c
test al, al
je 0x4eae11
cmp byte [ebp - 0x1a], 0
je 0x4eadc4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x50]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004c8af0
mov eax, dword [ebp - 4]
mov byte [eax + 0x249], 1
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004d92dc
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004dacc8
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004d9cc4
mov eax, dword [ebp - 4]
mov byte [eax + 0x249], 0
mov byte [ebp - 9], 3
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov eax, dword [ebp - 4]
call fcn.004ea1e4
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.004e8310
mov eax, dword [ebp - 4]
cmp word [eax + 0xd94], 0
je 0x4eae56
mov edi, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [edi + 0xd96]
call dword [edi + 0xd92]
mov eax, dword [ebp - 4]
cmp word [eax + 0x996], 0
je 0x4eb061
mov edi, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [edi + 0x998]
call dword [edi + 0x994]
jmp 0x4eb061
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x171]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
movzx edx, word [edx + 0x14]
cmp eax, edx
jl 0x4eaee2
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4eaee2
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4eaee2
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
mov ecx, dword [eax + 0x2d]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x31]
mov eax, dword [ebp - 4]
call fcn.004c6a78
test al, al
jne 0x4eb061
mov eax, dword [ebp - 4]
mov byte [eax + 0x249], 1
push 3
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 2
mov eax, dword [ebp - 4]
call fcn.004c92b0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4eaf50
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x171]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
movzx edx, word [edx + 0x14]
cmp eax, edx
jl 0x4eaf50
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4eaf50
push 3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x31]
mov cl, 9
mov eax, dword [ebp - 4]
call fcn.004c92b0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
movzx edi, word [eax + 0x16]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov eax, dword [eax + 0xc]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4eaf9f
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jle 0x4eaf9f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x171]
shl eax, 4
add dword [ebp - 8], eax
mov eax, dword [ebp - 8]
test byte [eax + 7], 0x10
je 0x4eaf9f
mov eax, dword [ebp - 4]
dec dword [eax + 0x171]
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.004ebb7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jne 0x4eafe8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eafe8
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
push esi
push edi
lea esi, [eax + 0x1ff]
lea edi, [edx + 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop edi
pop esi
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004d92dc
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004dacc8
mov eax, dword [ebp - 4]
mov byte [eax + 0x249], 0
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
movzx eax, word [eax + 0x16]
cmp edi, eax
setne byte [ebp - 0x19]
mov eax, dword [ebp - 4]
call fcn.004ea1e4
mov eax, dword [ebp - 4]
cmp word [eax + 0x996], 0
je 0x4eb061
mov edi, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [edi + 0x998]
call dword [edi + 0x994]
cmp byte [ebp - 0x19], 0
je 0x4eb06b
mov byte [ebp - 9], 3
cmp byte [ebp - 9], 0
jne 0x4eb083
mov byte [ebp - 9], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
or word [eax + 0x2c], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x8df], 0
mov eax, dword [ebp - 4]
call fcn.004d850c
push ebp
call fcn.004ea4f8
pop ecx
mov eax, dword [ebp - 4]
call fcn.004ea1e4
jmp 0x4eba7f
mov byte [ebp - 0x1c], 1
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
cmp dword [edx + 4], 0
jne 0x4eb160
mov edx, dword [ebp - 4]
cmp dword [edx + 0x171], 0
jne 0x4eb160
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x29], 1
jne 0x4eb0ea
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
jne 0x4eb160
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x203]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 4]
mov edx, dword [0x4ebb74]
mov dword [eax + 0x203], edx
mov eax, dword [ebp - 4]
movzx edi, byte [eax + 0x201]
mov eax, dword [ebp - 4]
mov byte [eax + 0x201], 0
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x202]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x202], 0
mov edx, 0x4ebb78
mov eax, dword [ebp - 4]
call fcn.004ea578
mov eax, edi
mov edx, dword [ebp - 4]
mov byte [edx + 0x201], al
mov al, byte [ebp - 0x10]
mov edx, dword [ebp - 4]
mov byte [edx + 0x202], al
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x30]
mov dword [eax + 0x203], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2a], 8
je 0x4eb193
jmp 0x4eb180
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x35]
test eax, eax
je 0x4eb193
mov edx, dword [ebp - 0x28]
test byte [edx + 0x2a], 2
jne 0x4eb17d
mov eax, dword [ebp - 0x28]
test byte [eax + 0x2a], 8
je 0x4eb1c2
mov eax, dword [ebp - 0x28]
test byte [eax + 0x29], 1
je 0x4eb1ae
mov eax, dword [ebp - 0x28]
and dword [eax + 0x29], 0xfffffffe
jmp 0x4eb1b5
mov eax, dword [ebp - 0x28]
or dword [eax + 0x29], 1
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x30]
jmp 0x4eba7f
mov byte [ebp - 0x11], 1
mov eax, dword [ebp - 4]
cmp word [eax + 0x243], 0
je 0x4eb1eb
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc0]
mov edi, dword [ebp - 4]
mov eax, dword [edi + 0x245]
call dword [edi + 0x241]
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x44]
test al, al
je 0x4eb1ff
mov byte [ebp - 9], 3
mov byte [ebp - 0x19], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x7dd], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4eb21e
cmp byte [eax + 0xd], 0
je 0x4eb228
mov eax, dword [ebp - 4]
mov byte [eax + 0xda2], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
jne 0x4eb269
mov edx, dword [ebp - 4]
cmp dword [edx + 0x171], 1
jge 0x4eb269
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
cmp dword [edx + 4], 0
jne 0x4eb269
mov edx, dword [ebp - 4]
push esi
lea esi, [edx + 0x1ff]
lea edi, [eax + 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2b], 2
jne 0x4eb28b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2b], 1
jne 0x4eb28b
xor eax, eax
jmp 0x4eb28d
mov al, 1
mov byte [ebp - 0x13], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2a], 8
je 0x4eb2d5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
jne 0x4eb2ce
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 1
jge 0x4eb2ce
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
je 0x4eb2d5
mov bl, 0xa
jmp 0x4eb899
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
jne 0x4eb590
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 1
jge 0x4eb590
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eb590
mov eax, dword [ebp - 4]
test byte [eax + 0x253], 4
je 0x4eb326
mov eax, dword [ebp - 4]
mov byte [eax + 0x25e], 1
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x138]
mov cl, 8
mov eax, dword [ebp - 4]
call fcn.004c92b0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jg 0x4eb377
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eb377
mov byte [ebp - 0x1b], 1
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
push esi
lea esi, [eax + 0x1ff]
lea edi, [edx + 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
jmp 0x4eb37b
mov byte [ebp - 0x1b], 0
xor eax, eax
mov dword [ebp - 0x28], eax
lea edx, [ebp - 0x28]
mov ecx, 4
mov eax, dword [ebp - 4]
call fcn.004c51d0
mov eax, dword [ebp - 0x28]
xor edx, edx
mov dword [eax + 0x35], edx
mov eax, dword [ebp - 0x28]
mov edx, dword [0x4ebb74]
mov dword [eax + 0x29], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x31], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 0x28]
mov dword [eax + 0x35], edx
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0x28]
mov dword [edx + 0x138], eax
cmp byte [ebp - 0x1b], 0
je 0x4eb506
mov edx, dword [ebp - 4]
push esi
lea esi, [edx + 0x1ff]
lea edi, [eax + 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
mov dx, word [edx + 2]
mov word [eax + 2], dx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
mov dx, word [edx + 4]
mov word [eax + 4], dx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
mov dx, word [edx]
mov word [eax], dx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
mov dx, word [edx + 6]
mov word [eax + 6], dx
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
test byte [edx + 0x2a], 8
jne 0x4eb44e
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
mov dx, word [edx + 8]
mov word [eax + 8], dx
jmp 0x4eb454
mov word [eax + 8], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov ax, word [eax + 0xa]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x138]
mov word [edx + 0xa], ax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x138]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
mov ecx, dword [edx + 0x19]
mov dword [eax + 0x19], ecx
mov ecx, dword [edx + 0x1d]
mov dword [eax + 0x1d], ecx
cmp byte [ebp - 0x13], 0
je 0x4eb4d6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x138]
and dword [eax + 0x29], 0xfffffffd
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x138]
mov byte [eax + 0x10], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x138]
mov byte [eax + 0xe], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x138]
mov byte [eax + 0xf], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x138]
xor edx, edx
mov dword [eax + 0x15], edx
jmp 0x4eb506
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov al, byte [eax + 0x10]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x138]
mov byte [edx + 0x10], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x15]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x138]
mov dword [edx + 0x15], eax
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
push esi
lea esi, [eax + 0x1ff]
lea edi, [edx + 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x35]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004dacc8
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov byte [ebp - 9], 3
mov eax, dword [ebp - 4]
cmp word [eax + 0x84f], 0
je 0x4eb571
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc0]
mov edi, dword [ebp - 4]
mov eax, dword [edi + 0x851]
call dword [edi + 0x84d]
mov eax, dword [ebp - 4]
test byte [eax + 0x253], 4
je 0x4eb834
mov eax, dword [ebp - 4]
mov byte [eax + 0x25e], 1
jmp 0x4eb834
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004c92b0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jg 0x4eb5db
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eb5db
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
push esi
lea esi, [eax + 0x1ff]
lea edi, [edx + 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [ebp - 4]
mov al, byte [eax + 0x25e]
mov byte [ebp - 0x12], al
cmp byte [ebp - 0x13], 0
je 0x4eb676
mov eax, dword [ebp - 4]
mov byte [eax + 0x25e], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
je 0x4eb676
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
test byte [eax + 0x2a], 8
je 0x4eb676
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
mov edx, dword [ebp - 4]
mov dword [edx + 0x169], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x2d]
mov edx, dword [ebp - 4]
mov dword [edx + 0x16d], eax
jmp 0x4eb651
mov edx, dword [ebp - 4]
mov dword [edx + 0x16d], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov eax, dword [eax]
test eax, eax
jne 0x4eb648
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
movzx eax, word [eax + 0x14]
mov edx, dword [ebp - 4]
mov dword [edx + 0x171], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x171]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x16d]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004c73f8
test al, al
je 0x4eb7f0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x50]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004c8af0
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 8
mov eax, dword [ebp - 4]
call fcn.004c92b0
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004dacc8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
mov edx, dword [ebp - 4]
mov dword [edx + 0x169], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x2d]
mov edx, dword [ebp - 4]
mov dword [edx + 0x16d], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jne 0x4eb739
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
push esi
lea esi, [eax + 0x1ff]
lea edi, [edx + 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
cmp byte [ebp - 0x11], 0
je 0x4eb74e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
or dword [eax + 0x29], 1
jmp 0x4eb75b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
and dword [eax + 0x29], 0xfffffffe
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x171], edx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0xac], edx
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x35]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004dacc8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x35]
mov eax, dword [ebp - 4]
call fcn.004d9cc4
test al, al
jne 0x4eb7c7
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004dacc8
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov eax, dword [ebp - 4]
cmp word [eax + 0x84f], 0
je 0x4eb7ec
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0xc0]
mov edi, dword [ebp - 4]
mov eax, dword [edi + 0x851]
call dword [edi + 0x84d]
mov byte [ebp - 9], 3
cmp byte [ebp - 0x13], 0
je 0x4eb828
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
and dword [eax + 0x29], 0xfffffffd
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov byte [eax + 0x10], 0
mov byte [eax + 0xe], 0
mov byte [eax + 0xf], 0
xor edx, edx
mov dword [eax + 0x15], edx
mov dx, word [0x4ebb74]
mov word [eax + 0x21], dx
mov eax, dword [ebp - 4]
mov dl, byte [ebp - 0x12]
mov byte [eax + 0x25e], dl
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
mov eax, dword [eax + 0xc]
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4eb86d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jne 0x4eb86d
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 8]
push esi
lea esi, [eax + 0x1ff]
mov edi, edx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
pop esi
mov eax, dword [ebp - 4]
call fcn.004d850c
test al, al
je 0x4eb886
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ebb67
cmp byte [ebp - 0x19], 0
je 0x4eba7f
mov byte [ebp - 9], 3
jmp 0x4eba7f
push ebp
call fcn.004ea48c
pop ecx
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 2
mov eax, dword [ebp - 4]
call fcn.004c92b0
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x44]
test al, al
je 0x4eb8c5
mov byte [ebp - 0x19], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
movzx eax, word [eax + 0x14]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x171]
jge 0x4eb8e6
mov edx, dword [ebp - 4]
mov dword [edx + 0x171], eax
push ebp
call fcn.004ea454
pop ecx
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 4]
cmp dword [edx + 0x171], 0
jne 0x4eb921
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
cmp word [edx + 0x14], 0
jne 0x4eb921
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4eb925
cmp byte [eax + 0xd], 0
jne 0x4eb925
xor eax, eax
jmp 0x4eb927
mov al, 1
mov edx, dword [ebp - 4]
mov byte [edx + 0xda2], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
or dword [eax + 0x29], 4
mov eax, dword [ebp - 4]
cmp byte [eax + 0x238], 0
jne 0x4eb965
mov eax, dword [ebp - 4]
cmp byte [eax + 0x824], 0
jne 0x4eb965
mov eax, dword [ebp - 4]
test byte [eax + 0x204], 8
jne 0x4eba7f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x171]
push eax
push ebx
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x16d]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004c64dc
test al, al
je 0x4eba76
cmp byte [esi], 0
je 0x4eb9a0
cmp byte [esi], 0xd
jne 0x4eba76
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xbc]
mov dword [ebp - 0x18], eax
push 1
xor ecx, ecx
mov edx, 1
mov eax, dword [ebp - 4]
mov edi, dword [eax]
call dword [edi + 0xd4]
mov eax, dword [ebp - 4]
mov byte [eax + 0x249], 1
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004d92dc
lea eax, [ebp - 9]
push eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004dacc8
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x16d]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004d1828
mov eax, dword [ebp - 4]
mov byte [eax + 0x249], 0
push ebp
call fcn.004ea454
pop ecx
cmp eax, dword [ebp - 0x24]
jne 0x4eba27
cmp bl, 0xa
jne 0x4eba38
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov byte [ebp - 0x19], 1
cmp byte [ebp - 0x19], 0
je 0x4eba42
mov byte [ebp - 9], 3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
or word [eax + 0x2c], 1
mov eax, dword [ebp - 4]
call fcn.004d850c
cmp byte [ebp - 9], 0
jne 0x4eba62
mov byte [ebp - 9], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xbc]
cmp eax, dword [ebp - 0x18]
je 0x4eba7f
mov byte [ebp - 9], 3
jmp 0x4eba7f
mov eax, dword [ebp - 4]
inc dword [eax + 0x171]
test bl, bl
jne 0x4ea66a
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0
je 0x4eba9b
mov eax, dword [ebp - 4]
call fcn.004d7300
cmp byte [ebp - 0x1c], 0
je 0x4ebad8
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov eax, dword [ebp - 4]
call fcn.004e7ec4
mov eax, dword [ebp - 4]
cmp word [eax + 0x9a6], 0
je 0x4ebad2
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x9a8]
call dword [ebx + 0x9a4]
mov byte [ebp - 9], 3
jmp 0x4ebaf5
cmp byte [ebp - 0x1d], 0
je 0x4ebaeb
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
cmp byte [ebp - 9], 0
jne 0x4ebaf5
mov byte [ebp - 9], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
or word [eax + 0x2c], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x915], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x8ac], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4ebb67
mov al, byte [ebp - 9]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret