Function at 0x4ea344
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 0x4ea37c
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x80]
xor edx, edx
push ebp
push 0x4eb8ed
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 0x4ea3d0
mov eax, dword [ebp - 4]
and dword [eax + 0x203], 0xffffff7f
mov eax, dword [ebp - 4]
and dword [eax + 0x203], 0xfffdffff
push ebp
call fcn.004ea2c4
pop ecx
mov byte [ebp - 0x1d], 0
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x169]
test ebx, ebx
je 0x4eb853
mov eax, dword [ebp - 4]
cmp dword [eax + 0x16d], 0
je 0x4eb853
mov eax, dword [ebp - 4]
mov dl, byte [0x4eb940]
cmp dl, byte [eax + 0xd2]
je 0x4ea436
mov eax, dword [ebx + 0x2d]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x4ea436
mov eax, dword [ebp - 0x2c]
test byte [eax + 0x2c], 2
je 0x4ea428
mov byte [ebp - 0x1d], 1
jmp 0x4ea436
mov eax, dword [ebp - 0x2c]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x4ea419
mov byte [ebp - 0x11], 0
mov bl, byte [esi]
inc esi
mov eax, dword [ebp - 4]
cmp byte [eax + 0xdd3], 0
je 0x4ea452
cmp bl, 0xa
je 0x4eb84b
xor eax, eax
mov al, bl
cmp eax, 0xc
jg 0x4ea474
je 0x4eae75
sub eax, 1
jb 0x4eb84b
sub eax, 7
je 0x4ea48b
jmp 0x4eb665
sub eax, 0xd
je 0x4eaf92
sub eax, 0x72
je 0x4ea8d7
jmp 0x4eb665
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x75], edx
push ebp
call fcn.004ea258
pop ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x44]
test al, al
je 0x4ea4af
mov byte [ebp - 0x19], 1
jmp 0x4ea8cb
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jg 0x4ea8c0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4ea4e1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xd], 0
jne 0x4ea4e1
xor eax, eax
jmp 0x4ea4e3
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 0x4ea5b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
jne 0x4ea5b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4ea5b7
mov eax, dword [ebp - 4]
cmp dword [eax + 0xc4], 0
je 0x4ea5b7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xc4]
cmp word [eax + 0x222], 0
je 0x4ea5b7
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 0x4ea5b7
mov eax, dword [ebp - 0x38]
mov edx, dword [0x4c08d8]
call fcn.00404278
test al, al
je 0x4ea5b7
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 0x4eb933
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4ea637
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4ea5e3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xd], 0
je 0x4ea637
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jne 0x4ea637
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
je 0x4ea618
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 0x4ea637
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 0x4ea8cb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
je 0x4ea65a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2a], 8
je 0x4ea66d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
je 0x4ea86a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
je 0x4ea79c
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 0x4ea764
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.004c6844
test al, al
jne 0x4ea76f
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 0x4ea733
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jle 0x4ea733
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 0x4ea733
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 0x4ea76f
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.004daa94
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov byte [ebp - 9], 3
jmp 0x4ea8cb
xor edi, edi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
je 0x4ea8cb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
test byte [eax + 0x2b], 4
je 0x4ea7ff
jmp 0x4ea7e9
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 0x4ea7f8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
jne 0x4ea7c5
mov edi, 1
jmp 0x4ea814
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 0x4ea83f
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 0x4ea82b
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 0x4ea94a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4ea8cb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x35], 0
jne 0x4ea8cb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x29], 1
je 0x4ea8cb
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.004ddd04
jmp 0x4ea8cb
mov eax, dword [ebp - 4]
dec dword [eax + 0x171]
jmp 0x4ea94a
push ebp
call fcn.004ea2c4
pop ecx
jmp 0x4eb84b
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 0x4ea94a
mov eax, dword [ebp - 4]
test byte [eax + 0xe8], 1
je 0x4ea94a
mov edx, edi
mov eax, dword [ebp - 4]
call fcn.004c87e0
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0
je 0x4ea94a
mov eax, dword [ebp - 4]
mov dx, word [eax + 0x882]
mov eax, dword [ebp - 4]
call fcn.004c833c
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 0x4eb933
push ebp
call fcn.004ea258
pop ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x44]
test al, al
je 0x4ea966
mov byte [ebp - 0x19], 1
jmp 0x4eb84b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4ea9e9
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x171]
movzx eax, word [eax + 0x14]
cmp edx, eax
jl 0x4ea9e9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4ea9e9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
test byte [eax + 0x2b], 4
je 0x4ea9e9
jmp 0x4ea9b9
mov edi, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x169], edi
test byte [edi + 0x2b], 4
je 0x4ea9c9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x31]
test eax, eax
jne 0x4ea9a8
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 0x4eac4a
test ax, ax
jne 0x4eac4a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4eaa31
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xd], 0
je 0x4eaa3b
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 0x4eaaa0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
jne 0x4eaaa0
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004c4e34
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov dx, word [0x4eb940]
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 [0x4eb940]
mov dword [eax + 0x29], edx
mov byte [eax + 0xc], 0
mov byte [eax + 0xd], 0
jmp 0x4eabdd
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 0x4eab10
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
je 0x4eab10
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4eab10
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4eab10
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.004c6844
test al, al
jne 0x4eabdd
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.004c907c
push 3
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004c907c
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.004eb948
test al, al
je 0x4eabdd
cmp byte [ebp - 0x1a], 0
je 0x4eab90
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.004c88bc
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.004d90a8
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.004daa94
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov eax, dword [ebp - 4]
call fcn.004d9a90
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.004e9fb0
mov edx, 2
mov eax, dword [ebp - 4]
call fcn.004e80dc
mov eax, dword [ebp - 4]
cmp word [eax + 0xd94], 0
je 0x4eac22
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 0x4eae2d
mov edi, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [edi + 0x998]
call dword [edi + 0x994]
jmp 0x4eae2d
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 0x4eacae
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4eacae
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4eacae
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.004c6844
test al, al
jne 0x4eae2d
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.004c907c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax], 0
jne 0x4ead1c
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 0x4ead1c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp dword [eax + 0x31], 0
je 0x4ead1c
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.004c907c
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 0x4ead6b
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jle 0x4ead6b
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 0x4ead6b
mov eax, dword [ebp - 4]
dec dword [eax + 0x171]
mov edx, 1
mov eax, dword [ebp - 4]
call fcn.004eb948
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jne 0x4eadb4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eadb4
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.004d90a8
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.004daa94
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.004e9fb0
mov eax, dword [ebp - 4]
cmp word [eax + 0x996], 0
je 0x4eae2d
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 0x4eae37
mov byte [ebp - 9], 3
cmp byte [ebp - 9], 0
jne 0x4eae4f
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.004d82d8
push ebp
call fcn.004ea2c4
pop ecx
mov eax, dword [ebp - 4]
call fcn.004e9fb0
jmp 0x4eb84b
mov byte [ebp - 0x1c], 1
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
cmp dword [edx + 4], 0
jne 0x4eaf2c
mov edx, dword [ebp - 4]
cmp dword [edx + 0x171], 0
jne 0x4eaf2c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x29], 1
jne 0x4eaeb6
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
jne 0x4eaf2c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x203]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 4]
mov edx, dword [0x4eb940]
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, 0x4eb944
mov eax, dword [ebp - 4]
call fcn.004ea344
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 0x4eaf5f
jmp 0x4eaf4c
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0x35]
test eax, eax
je 0x4eaf5f
mov edx, dword [ebp - 0x28]
test byte [edx + 0x2a], 2
jne 0x4eaf49
mov eax, dword [ebp - 0x28]
test byte [eax + 0x2a], 8
je 0x4eaf8e
mov eax, dword [ebp - 0x28]
test byte [eax + 0x29], 1
je 0x4eaf7a
mov eax, dword [ebp - 0x28]
and dword [eax + 0x29], 0xfffffffe
jmp 0x4eaf81
mov eax, dword [ebp - 0x28]
or dword [eax + 0x29], 1
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x30]
jmp 0x4eb84b
mov byte [ebp - 0x11], 1
mov eax, dword [ebp - 4]
cmp word [eax + 0x243], 0
je 0x4eafb7
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 0x4eafcb
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 0x4eafea
cmp byte [eax + 0xd], 0
je 0x4eaff4
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 0x4eb035
mov edx, dword [ebp - 4]
cmp dword [edx + 0x171], 1
jge 0x4eb035
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
cmp dword [edx + 4], 0
jne 0x4eb035
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 0x4eb057
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2b], 1
jne 0x4eb057
xor eax, eax
jmp 0x4eb059
mov al, 1
mov byte [ebp - 0x13], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
test byte [eax + 0x2a], 8
je 0x4eb0a1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
jne 0x4eb09a
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 1
jge 0x4eb09a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
je 0x4eb0a1
mov bl, 0xa
jmp 0x4eb665
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x138]
jne 0x4eb35c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 1
jge 0x4eb35c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eb35c
mov eax, dword [ebp - 4]
test byte [eax + 0x253], 4
je 0x4eb0f2
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.004c907c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jg 0x4eb143
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eb143
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 0x4eb147
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.004c4f9c
mov eax, dword [ebp - 0x28]
xor edx, edx
mov dword [eax + 0x35], edx
mov eax, dword [ebp - 0x28]
mov edx, dword [0x4eb940]
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 0x4eb2d2
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 0x4eb21a
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x169]
mov dx, word [edx + 8]
mov word [eax + 8], dx
jmp 0x4eb220
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 0x4eb2a2
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 0x4eb2d2
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.004daa94
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 0x4eb33d
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 0x4eb600
mov eax, dword [ebp - 4]
mov byte [eax + 0x25e], 1
jmp 0x4eb600
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.004c907c
mov eax, dword [ebp - 4]
cmp dword [eax + 0x171], 0
jg 0x4eb3a7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp dword [eax + 4], 0
jne 0x4eb3a7
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 0x4eb442
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 0x4eb442
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov eax, dword [eax + 0x35]
test byte [eax + 0x2a], 8
je 0x4eb442
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 0x4eb41d
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 0x4eb414
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.004c71c4
test al, al
je 0x4eb5bc
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.004c88bc
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 8
mov eax, dword [ebp - 4]
call fcn.004c907c
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.004daa94
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 0x4eb505
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 0x4eb51a
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
or dword [eax + 0x29], 1
jmp 0x4eb527
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.004daa94
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
mov edx, dword [eax + 0x35]
mov eax, dword [ebp - 4]
call fcn.004d9a90
test al, al
jne 0x4eb593
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.004daa94
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 0x4eb5b8
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 0x4eb5f4
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 [0x4eb940]
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 0x4eb639
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x16d]
cmp word [eax + 0x14], 0
jne 0x4eb639
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.004d82d8
test al, al
je 0x4eb652
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4eb933
cmp byte [ebp - 0x19], 0
je 0x4eb84b
mov byte [ebp - 9], 3
jmp 0x4eb84b
push ebp
call fcn.004ea258
pop ecx
push 2
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x169]
mov cl, 2
mov eax, dword [ebp - 4]
call fcn.004c907c
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x44]
test al, al
je 0x4eb691
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 0x4eb6b2
mov edx, dword [ebp - 4]
mov dword [edx + 0x171], eax
push ebp
call fcn.004ea220
pop ecx
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 4]
cmp dword [edx + 0x171], 0
jne 0x4eb6ed
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x16d]
cmp word [edx + 0x14], 0
jne 0x4eb6ed
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x169]
cmp byte [eax + 0xc], 0
jne 0x4eb6f1
cmp byte [eax + 0xd], 0
jne 0x4eb6f1
xor eax, eax
jmp 0x4eb6f3
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 0x4eb731
mov eax, dword [ebp - 4]
cmp byte [eax + 0x824], 0
jne 0x4eb731
mov eax, dword [ebp - 4]
test byte [eax + 0x204], 8
jne 0x4eb84b
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.004c62a8
test al, al
je 0x4eb842
cmp byte [esi], 0
je 0x4eb76c
cmp byte [esi], 0xd
jne 0x4eb842
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.004d90a8
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.004daa94
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.004d15f4
mov eax, dword [ebp - 4]
mov byte [eax + 0x249], 0
push ebp
call fcn.004ea220
pop ecx
cmp eax, dword [ebp - 0x24]
jne 0x4eb7f3
cmp bl, 0xa
jne 0x4eb804
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 0x4eb80e
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.004d82d8
cmp byte [ebp - 9], 0
jne 0x4eb82e
mov byte [ebp - 9], 1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0xbc]
cmp eax, dword [ebp - 0x18]
je 0x4eb84b
mov byte [ebp - 9], 3
jmp 0x4eb84b
mov eax, dword [ebp - 4]
inc dword [eax + 0x171]
test bl, bl
jne 0x4ea436
mov eax, dword [ebp - 4]
cmp byte [eax + 0xda2], 0
je 0x4eb867
mov eax, dword [ebp - 4]
call fcn.004d70cc
cmp byte [ebp - 0x1c], 0
je 0x4eb8a4
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
mov eax, dword [ebp - 4]
call fcn.004e7c90
mov eax, dword [ebp - 4]
cmp word [eax + 0x9a6], 0
je 0x4eb89e
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x9a8]
call dword [ebx + 0x9a4]
mov byte [ebp - 9], 3
jmp 0x4eb8c1
cmp byte [ebp - 0x1d], 0
je 0x4eb8b7
xor edx, edx
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0xac]
cmp byte [ebp - 9], 0
jne 0x4eb8c1
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 0x4eb933
mov al, byte [ebp - 9]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret