Function at 0x4f1280
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
push edi
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax*4 + 0x6743cc]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 8], eax
cmp dword [0x16845d0], 0
je 0x4f12be
mov dword [ebp - 0x10], 0xf
mov dword [ebp - 0xc], 7
jmp 0x4f12cc
mov dword [ebp - 0x10], 0x1e
mov dword [ebp - 0xc], 0x1e
cmp dword [0xd16a78], 1
jne 0x4f1319
cmp dword [ebp + 0x18], 0x40000000
je 0x4f1319
cmp dword [ebp + 0x1c], 2
je 0x4f1305
cmp dword [ebp + 0x1c], 0x10
je 0x4f1305
cmp dword [ebp + 0x1c], 0x20
je 0x4f1305
cmp dword [ebp + 0x1c], 0x40
je 0x4f1305
cmp dword [ebp + 0x1c], 1
je 0x4f1305
cmp dword [ebp + 0x1c], 0x80
jne 0x4f1319
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.004f0f60
cmp dword [ebp + 0x18], 0x40000000
jne 0x4f1329
mov dword [ebp - 0x14], 9
mov dword [ebp - 4], 0
jmp 0x4f133b
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 0x14]
jge 0x4f2dff
cmp dword [ebp + 0x18], 0x40000000
jne 0x4f1370
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0x1c]
push ecx
lea edx, [ebp + 0x10]
push edx
lea eax, [ebp + 0xc]
push eax
mov ecx, dword [ebp - 4]
push ecx
push 0
mov ecx, dword [ebp - 0x20]
call fcn.005004e0
jmp 0x4f138e
mov edx, dword [ebp - 8]
push edx
mov eax, dword [ebp - 0x1c]
push eax
lea ecx, [ebp + 0x10]
push ecx
lea edx, [ebp + 0xc]
push edx
mov eax, dword [ebp - 4]
push eax
push 1
mov ecx, dword [ebp - 0x20]
call fcn.005004e0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x10
test eax, eax
je 0x4f13a4
jmp 0x4f1332
cmp dword [ebp + 0x18], 1
jne 0x4f15bb
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x10000400
test eax, eax
je 0x4f13c9
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
movsx eax, word [edx + ecx*2 + 0x2029b0]
test eax, eax
je 0x4f13e0
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x100
test eax, eax
je 0x4f13fb
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
movsx eax, word [edx + ecx*2 + 0x1db590]
test eax, eax
je 0x4f1412
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xbf
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffefffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffdfffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0x7f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffdffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfffbffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xfff7ffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xdfffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x7fffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xbfffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffffff7
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x1b3fe0], 0
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
or edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x29fa30], 0
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x2b3440], 0
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 0x55486c], 1
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x100000
je 0x4f15d1
cmp dword [ebp + 0x18], 0x200000
jne 0x4f18cd
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x10000400
test ecx, ecx
je 0x4f15ed
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x2029b0]
test ecx, ecx
je 0x4f1604
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100
test ecx, ecx
je 0x4f1620
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x1db590]
test ecx, ecx
je 0x4f1637
jmp 0x4f1332
cmp dword [ebp + 0x1c], 0
je 0x4f1659
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100000
test ecx, ecx
jne 0x4f1659
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffffffbf
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
cmp dword [ebp + 0x18], 0x100000
jne 0x4f16a0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xffdfffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
jmp 0x4f16c0
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffefffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and cl, 0x7f
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xfffdffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffbffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfff7ffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xdfffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x7fffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xbfffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xfe
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffffff7
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x1b3fe0], 0
cmp dword [ebp + 0x1c], 0x20
je 0x4f1806
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x13dd40]
and edx, 7
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov word [ecx + eax*2 + 0xef500], dx
cmp dword [ebp + 0x1c], 0x10
jne 0x4f1819
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x1b3fe0], 0x10
cmp dword [ebp + 0x1c], 0x20
jne 0x4f186e
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x1b3fe0], 0x20
mov ecx, dword [0xd16aa8]
and ecx, 8
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
xor esi, esi
mov si, word [eax + edx*2 + 0xef500]
shl esi, 5
add ecx, esi
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx edx, word [eax + edx*2 + 0x13dd40]
and edx, 7
shl edx, 0xa
add ecx, edx
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov word [edx + eax*2 + 0xef500], cx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
or edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
xor eax, eax
mov al, byte [edx + 0x29fa30]
cmp eax, 8
jl 0x4f18c8
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
xor edx, edx
mov dl, byte [ecx + 0x2b3440]
sub edx, 8
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x29fa30], dl
mov ecx, dword [ebp - 0x20]
mov dword [ecx + 0x55486c], 1
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x80
jne 0x4f1b3b
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x10000400
test ecx, ecx
je 0x4f18f6
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x2029b0]
test ecx, ecx
je 0x4f190d
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100
test ecx, ecx
je 0x4f1929
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100000
test ecx, ecx
je 0x4f1945
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x1db590]
test ecx, ecx
je 0x4f195c
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 1
test ecx, ecx
je 0x4f198c
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x29fa30], 0
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x2b3440], 0
jmp 0x4f19b9
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
xor edx, edx
mov dl, byte [ecx + 0x29fa30]
cmp edx, 8
jge 0x4f19b9
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x29fa30], 8
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x2b3440], 8
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfffffffe
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xffefffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffdfffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffffffbf
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xfffdffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffbffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfff7ffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xdfffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x7fffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xbfffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xf7
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x1b3fe0], 0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
or eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x80000
jne 0x4f1d29
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x10000400
test edx, edx
je 0x4f1b64
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x2029b0]
test edx, edx
je 0x4f1b7b
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x100
test edx, edx
je 0x4f1b97
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 1
test edx, edx
je 0x4f1bb0
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x100000
test edx, edx
je 0x4f1bcc
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x1db590]
test edx, edx
je 0x4f1be3
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffefffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffdfffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0x7f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffbffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfffdffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xdfffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x7fffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xbfffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xf7
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x1b3fe0], 0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
or eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x40000
jne 0x4f1f95
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x10000400
test edx, edx
je 0x4f1d52
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x2029b0]
test edx, edx
je 0x4f1d69
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x100
test edx, edx
je 0x4f1d85
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x100000
test edx, edx
je 0x4f1da1
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x1db590]
test edx, edx
je 0x4f1db8
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 1
test edx, edx
je 0x4f1de8
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x29fa30], 0
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x2b3440], 0
jmp 0x4f1e15
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
xor eax, eax
mov al, byte [edx + 0x29fa30]
cmp eax, 8
jge 0x4f1e15
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x29fa30], 8
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x2b3440], 8
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffffffe
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffffffbf
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xffefffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffdfffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and cl, 0x7f
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xfffdffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfff7ffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xdfffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x7fffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xbfffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfffffff7
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x1b3fe0], 0
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
or ecx, dword [ebp + 0x18]
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x20000000
jne 0x4f219b
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x10000400
test eax, eax
je 0x4f1fbd
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
movsx eax, word [edx + ecx*2 + 0x2029b0]
test eax, eax
je 0x4f1fd4
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x100
test eax, eax
je 0x4f1fef
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x100000
test eax, eax
je 0x4f200a
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
movsx eax, word [edx + ecx*2 + 0x1db590]
test eax, eax
je 0x4f2021
jmp 0x4f1332
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x29fa30], 8
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x2b3440], 8
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffffffe
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffffffbf
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xffefffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffdfffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and cl, 0x7f
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xfffdffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfff7ffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x7fffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xbfffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffffff7
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x1b3fe0], 0
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
or edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x80000000
jne 0x4f2366
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x10000400
test ecx, ecx
je 0x4f21c4
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x2029b0]
test ecx, ecx
je 0x4f21db
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100
test ecx, ecx
je 0x4f21f7
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100000
test ecx, ecx
je 0x4f2213
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x1db590]
test ecx, ecx
je 0x4f222a
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x20000000
test ecx, ecx
jne 0x4f2246
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfffffffe
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xbf
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffefffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffdfffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0x7f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffdffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfff7ffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xf7
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x1b3fe0], 0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
or eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x40000000
jne 0x4f271e
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x1db590]
test edx, edx
je 0x4f238a
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x10000400
test edx, edx
je 0x4f23a6
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x2029b0]
test edx, edx
je 0x4f23bd
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x100
test edx, edx
je 0x4f23d9
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 1
test edx, edx
je 0x4f23f2
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x100000
test edx, edx
je 0x4f240e
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x200000
test edx, edx
je 0x4f242a
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x80
test edx, edx
je 0x4f2446
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x20000
test edx, edx
je 0x4f2462
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x80000
test edx, edx
je 0x4f247e
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x20000000
test edx, edx
je 0x4f249a
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 4
test edx, edx
je 0x4f24b3
jmp 0x4f1332
mov eax, dword [ebp + 0x10]
imul eax, eax, 0xc
mov ecx, dword [ebp + 0xc]
sub ecx, dword [eax + 0xb2ef10]
mov dword [ebp - 0x18], ecx
cmp dword [0xd16a78], 1
je 0x4f24fa
cmp dword [0xd16a78], 6
je 0x4f24fa
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, 0x1cd0f70
call fcn.0049ae90
test eax, eax
je 0x4f24fa
jmp 0x4f1332
cmp dword [0x16845d0], 0
je 0x4f2536
mov ecx, dword [ebp - 0x20]
call fcn.004ffe20
add eax, 5
push eax
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [ebp - 0xc]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, 0x1cd0f70
call fcn.0049afe0
test eax, eax
je 0x4f2536
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x40000000
test eax, eax
je 0x4f2557
cmp dword [ebp + 0x1c], 3
je 0x4f2557
jmp 0x4f1332
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
xor edx, edx
mov dl, byte [ecx + 0x29fa30]
cmp edx, 0xc
jle 0x4f256f
jmp 0x4f1332
cmp dword [ebp + 0x1c], 0
jne 0x4f25c8
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x4000
test edx, edx
jne 0x4f25c3
push 0
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x20]
call fcn.0050cb90
test eax, eax
je 0x4f25c3
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
or dh, 0x40
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
jmp 0x4f2719
cmp dword [ebp + 0x1c], 1
jne 0x4f2617
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x4000
test ecx, ecx
je 0x4f2612
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ch, 0xbf
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp - 0x18]
push edx
mov ecx, dword [ebp - 0x20]
call fcn.0050cd40
jmp 0x4f2719
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x29fa30], 8
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xf7
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x1b3fe0], 0
cmp dword [ebp + 0x1c], 2
jne 0x4f26b9
push 1
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp - 0x18]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0x20]
call fcn.0050cb90
test eax, eax
je 0x4f26b7
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and ah, 0xbf
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
or edx, 0x40000000
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x29fa30], 0
jmp 0x4f2719
cmp dword [ebp + 0x1c], 3
jne 0x4f2719
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp - 0x18]
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.0050cd40
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x29fa30], 8
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and dh, 0xbf
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xbfffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
jmp 0x4f2de2
cmp dword [ebp + 0x1c], 2
je 0x4f2749
cmp dword [ebp + 0x1c], 0x10
je 0x4f2749
cmp dword [ebp + 0x1c], 0x20
je 0x4f2749
cmp dword [ebp + 0x1c], 0x40
je 0x4f2749
cmp dword [ebp + 0x1c], 1
je 0x4f2749
cmp dword [ebp + 0x1c], 0x80
jne 0x4f2ad1
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x10000400
test eax, eax
je 0x4f2764
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
movsx eax, word [edx + ecx*2 + 0x2029b0]
test eax, eax
je 0x4f277b
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x100
test eax, eax
je 0x4f2796
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x60300001
test eax, eax
je 0x4f27b1
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
movsx eax, word [edx + ecx*2 + 0x1db590]
test eax, eax
je 0x4f27c8
jmp 0x4f1332
cmp dword [ebp + 0x1c], 2
jne 0x4f28e1
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x80000
test eax, eax
je 0x4f27ed
jmp 0x4f1332
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0x20000
test eax, eax
je 0x4f2808
jmp 0x4f1332
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
movsx edx, byte [ecx + 0x1b3fe0]
and edx, 0x20
test edx, edx
je 0x4f2821
jmp 0x4f1332
mov edi, dword [0x150ca24]
mov esi, dword [0x150ca18]
mov eax, dword [0x150c9f8]
add esi, eax
push esi
mov eax, dword [0x150c9f4]
shl eax, 5
add edi, eax
mov edx, 0
mov eax, dword [esi + 1]
mov ebx, dword [esi - 1]
and eax, 0x20
je 0x4f2856
or edx, 0x20
and ebx, 0x20
je 0x4f2862
or edx, 2
mov ecx, dword [edi]
add esi, ecx
mov eax, dword [esi - 1]
mov ebx, dword [esi + 1]
mov ecx, dword [esi]
and eax, 0x20
je 0x4f287a
or edx, 1
and ebx, 0x20
je 0x4f2886
or edx, 0x40
and ecx, 0x20
je 0x4f2895
or edx, 0x80
mov ecx, dword [edi + 0x10]
pop esi
add esi, ecx
mov eax, dword [esi - 1]
mov ebx, dword [esi + 1]
mov ecx, dword [esi]
and eax, 0x20
je 0x4f28af
or edx, 4
and ebx, 0x20
je 0x4f28bb
or edx, 0x10
and ecx, 0x20
je 0x4f28c7
or edx, 8
mov byte [0x150c9fc], dl
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov cl, byte [eax + 0x554a3c]
test ecx, ecx
je 0x4f28e1
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov cx, word [eax + edx*2 + 0x301c80]
and cl, 0xdf
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov word [eax + edx*2 + 0x301c80], cx
cmp dword [ebp + 0x1c], 0x40
jne 0x4f2908
jmp 0x4f2967
cmp dword [ebp + 0x1c], 1
jne 0x4f2910
jmp 0x4f2967
cmp dword [ebp + 0x1c], 0x80
jne 0x4f291b
jmp 0x4f2967
cmp dword [ebp + 0x1c], 2
jne 0x4f2923
jmp 0x4f2967
cmp dword [ebp + 0x1c], 0x10
jne 0x4f292b
jmp 0x4f2967
cmp dword [ebp + 0x1c], 0x20
jne 0x4f294d
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x29fa30], 0
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x2b3440], 0
jmp 0x4f2967
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x29fa30], 8
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x2b3440], 8
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfffffffe
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xbf
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffefffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffdfffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0x7f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffdffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfff7ffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xdfffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x7fffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xbfffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
cmp dword [ebp + 0x1c], 2
je 0x4f2abd
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xf7
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov cl, byte [ebp + 0x1c]
mov byte [eax + 0x1b3fe0], cl
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x20000
jne 0x4f2d3c
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x10000400
test ecx, ecx
je 0x4f2afa
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x2029b0]
test ecx, ecx
je 0x4f2b11
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100
test ecx, ecx
je 0x4f2b2d
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0x100000
test ecx, ecx
je 0x4f2b49
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
movsx ecx, word [eax + edx*2 + 0x1db590]
test ecx, ecx
je 0x4f2b60
jmp 0x4f1332
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 1
test ecx, ecx
je 0x4f2b90
mov edx, dword [ebp - 0x20]
add edx, dword [ebp + 0xc]
mov byte [edx + 0x29fa30], 0
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x2b3440], 0
jmp 0x4f2bbd
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
xor edx, edx
mov dl, byte [ecx + 0x29fa30]
cmp edx, 8
jge 0x4f2bbd
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x29fa30], 8
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp + 0xc]
mov byte [ecx + 0x2b3440], 8
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfffffffe
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xbf
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xffefffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xffdfffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0x7f
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0xfffbffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xfff7ffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and eax, 0xdfffffff
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x7fffffff
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov ecx, dword [eax + edx*4 + 0x165160]
and ecx, 0xbfffffff
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0x20]
mov dword [eax + edx*4 + 0x165160], ecx
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
and al, 0xf7
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp + 0xc]
mov byte [eax + 0x1b3fe0], 0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + ecx*4 + 0x165160]
or eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x20]
mov dword [edx + ecx*4 + 0x165160], eax
jmp 0x4f2de2
cmp dword [ebp + 0x18], 0x40
jne 0x4f2de2
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 1
test edx, edx
jne 0x4f2d5f
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x10000400
test edx, edx
je 0x4f2d7b
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x2029b0]
test edx, edx
je 0x4f2d92
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
and edx, 0x100
test edx, edx
je 0x4f2dae
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
movsx edx, word [ecx + eax*2 + 0x1db590]
test edx, edx
je 0x4f2dc5
jmp 0x4f1332
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov edx, dword [ecx + eax*4 + 0x165160]
or edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ecx + eax*4 + 0x165160], edx
cmp dword [ebp + 0x18], 0
je 0x4f2dfa
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, 0x1cd0f70
call fcn.00491030
jmp 0x4f1332
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18