Function at 0x406af0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4419c7
mov eax, dword fs:[0]
push eax
sub esp, 0x174
push ebx
push esi
push edi
mov eax, dword [0x455240]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov edi, dword [ebp + 8]
test edi, edi
je 0x40801b
cmp dword [edi + 0x10], 3
jne 0x40801b
push str.LSOLYQS
lea ecx, [ebp - 0xf0]
call fcn.00401363
push str.ATIsDT01ISkgPCkq
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0
call fcn.00401363
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 2
jb 0x406b8e
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp + 8]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x406c60
push str.LSOLYQS
lea ecx, [ebp - 0xc0]
call fcn.00401363
push str.ATIsDT01ISkgPCkq
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 3
mov dword [ebp - 0x10], 1
call fcn.00401363
lea eax, [ebp - 0xc0]
mov dword [ebp - 4], 4
push eax
lea eax, [ebp - 0xa8]
mov dword [ebp - 0x10], 3
push eax
lea eax, [ebp - 0x78]
push eax
call fcn.00419f95
add esp, 0xc
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 4], 5
mov dword [ebp - 0x10], 7
jb 0x406c16
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
test dword [eax + 0x10], 0x400000
jne 0x406c29
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xd8]
call fcn.00401363
lea eax, [ebp - 0xd8]
mov dword [ebp - 4], 6
push eax
lea eax, [ebp - 0x60]
mov dword [ebp - 0x10], 0xf
push eax
call fcn.00418a92
add esp, 8
mov dword [ebp + 8], eax
mov ebx, 0x1f
jmp 0x406c78
push 0x44543c
lea ecx, [ebp - 0x90]
call fcn.0040258f
mov dword [ebp + 8], eax
mov ebx, 0x20
mov esi, dword [ebp - 0x18]
add esi, 4
mov dword [ebp - 0x10], ebx
cmp esi, eax
je 0x406cb3
cmp dword [esi + 0x14], 8
jb 0x406c98
push dword [esi]
call fcn.0041fa80
mov eax, dword [ebp + 8]
add esp, 4
xor ecx, ecx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], cx
mov ecx, esi
push eax
call fcn.00403435
test bl, 0x20
je 0x406ce9
and ebx, 0xffffffdf
cmp dword [ebp - 0x7c], 8
mov dword [ebp - 0x10], ebx
jb 0x406cd2
push dword [ebp - 0x90]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x7c], 7
mov dword [ebp - 0x80], 0
mov word [ebp - 0x90], ax
test bl, 0x10
je 0x406d19
and ebx, 0xffffffef
cmp dword [ebp - 0x4c], 8
mov dword [ebp - 0x10], ebx
jb 0x406d05
push dword [ebp - 0x60]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x4c], 7
mov dword [ebp - 0x50], 0
mov word [ebp - 0x60], ax
test bl, 8
je 0x406d56
and ebx, 0xfffffff7
cmp dword [ebp - 0xc4], 0x10
mov dword [ebp - 0x10], ebx
jb 0x406d3b
push dword [ebp - 0xd8]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0xc4], 0xf
mov dword [ebp - 0xc8], 0
mov byte [ebp - 0xd8], 0
test bl, 4
je 0x406d84
and ebx, 0xfffffffb
cmp dword [ebp - 0x64], 0x10
mov dword [ebp - 0x10], ebx
jb 0x406d72
push dword [ebp - 0x78]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x64], 0xf
mov dword [ebp - 0x68], 0
mov byte [ebp - 0x78], 0
test bl, 2
je 0x406dc1
and ebx, 0xfffffffd
cmp dword [ebp - 0x94], 0x10
mov dword [ebp - 0x10], ebx
jb 0x406da6
push dword [ebp - 0xa8]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x94], 0xf
mov dword [ebp - 0x98], 0
mov byte [ebp - 0xa8], 0
test bl, 1
je 0x406dfe
and ebx, 0xfffffffe
cmp dword [ebp - 0xac], 0x10
mov dword [ebp - 0x10], ebx
jb 0x406de3
push dword [ebp - 0xc0]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0xac], 0xf
mov dword [ebp - 0xb0], 0
mov byte [ebp - 0xc0], 0
cmp dword [ebp - 0x34], 0x10
jb 0x406e0f
push dword [ebp - 0x48]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0x1c], 0x10
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
jb 0x406e32
push dword [ebp - 0x30]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xdc], 0x10
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x30], 0
mov dword [ebp - 4], 0xffffffff
jb 0x406e62
push dword [ebp - 0xf0]
call fcn.0041fa80
add esp, 4
push str.USIWPYA
lea ecx, [ebp - 0xf0]
call fcn.00401363
push str.FjsoOT48LQ
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 8
call fcn.00401363
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0xd8]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 0xa
jb 0x406eb8
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp + 8]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x406f8a
push str.USIWPYA
lea ecx, [ebp - 0xa8]
call fcn.00401363
or ebx, 0x40
mov byte [ebp - 4], 0xb
push str.FjsoOT48LQ
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x10], ebx
call fcn.00401363
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0xc
push eax
lea eax, [ebp - 0xc0]
or ebx, 0x80
push eax
lea eax, [ebp - 0x60]
mov dword [ebp - 0x10], ebx
push eax
call fcn.00419f95
add esp, 0xc
or ebx, 0x100
mov dword [ebp - 4], 0xd
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 0x10], ebx
jb 0x406f43
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
test dword [eax + 0x10], 0x400000
jne 0x406f56
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x30]
call fcn.00401363
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x78]
or ebx, 0x200
push eax
mov dword [ebp - 0x10], ebx
call fcn.00418a92
add esp, 8
mov dword [ebp + 8], eax
or ebx, 0x400
jmp 0x406fa0
push 0x44543c
lea ecx, [ebp - 0x48]
call fcn.0040258f
mov dword [ebp + 8], eax
or ebx, 0x800
mov esi, dword [ebp - 0x18]
add esi, 0x34
mov dword [ebp - 0x10], ebx
cmp esi, eax
je 0x406fdb
cmp dword [esi + 0x14], 8
jb 0x406fc0
push dword [esi]
call fcn.0041fa80
mov eax, dword [ebp + 8]
add esp, 4
xor ecx, ecx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], cx
mov ecx, esi
push eax
call fcn.00403435
test ebx, 0x800
je 0x407011
and ebx, 0xfffff7ff
cmp dword [ebp - 0x34], 8
mov dword [ebp - 0x10], ebx
jb 0x406ffd
push dword [ebp - 0x48]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x34], 7
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
test ebx, 0x400
je 0x407047
and ebx, 0xfffffbff
cmp dword [ebp - 0x64], 8
mov dword [ebp - 0x10], ebx
jb 0x407033
push dword [ebp - 0x78]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x64], 7
mov dword [ebp - 0x68], 0
mov word [ebp - 0x78], ax
test ebx, 0x200
je 0x40707b
and ebx, 0xfffffdff
cmp dword [ebp - 0x1c], 0x10
mov dword [ebp - 0x10], ebx
jb 0x407069
push dword [ebp - 0x30]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x30], 0
test ebx, 0x100
je 0x4070af
and ebx, 0xfffffeff
cmp dword [ebp - 0x4c], 0x10
mov dword [ebp - 0x10], ebx
jb 0x40709d
push dword [ebp - 0x60]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x4c], 0xf
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x60], 0
test bl, bl
jns 0x4070ee
and ebx, 0xffffff7f
cmp dword [ebp - 0xac], 0x10
mov dword [ebp - 0x10], ebx
jb 0x4070d3
push dword [ebp - 0xc0]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0xac], 0xf
mov dword [ebp - 0xb0], 0
mov byte [ebp - 0xc0], 0
test bl, 0x40
je 0x40712b
and ebx, 0xffffffbf
cmp dword [ebp - 0x94], 0x10
mov dword [ebp - 0x10], ebx
jb 0x407110
push dword [ebp - 0xa8]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x94], 0xf
mov dword [ebp - 0x98], 0
mov byte [ebp - 0xa8], 0
cmp dword [ebp - 0x7c], 0x10
jb 0x40713f
push dword [ebp - 0x90]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xc4], 0x10
mov dword [ebp - 0x7c], 0xf
mov dword [ebp - 0x80], 0
mov byte [ebp - 0x90], 0
jb 0x40716b
push dword [ebp - 0xd8]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xdc], 0x10
mov dword [ebp - 0xc4], 0xf
mov dword [ebp - 0xc8], 0
mov byte [ebp - 0xd8], 0
mov dword [ebp - 4], 0xffffffff
jb 0x4071a4
push dword [ebp - 0xf0]
call fcn.0041fa80
add esp, 4
push str.YOLHHTGHQ
lea ecx, [ebp - 0xf0]
call fcn.00401363
push str.CTouJCEnLy0j
lea ecx, [ebp - 0xd8]
mov dword [ebp - 4], 0x10
call fcn.00401363
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0xd8]
push eax
lea eax, [ebp - 0x90]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 0x12
jb 0x4071fa
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp + 8]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x4072cf
push str.YOLHHTGHQ
lea ecx, [ebp - 0xa8]
call fcn.00401363
or ebx, 0x1000
mov byte [ebp - 4], 0x13
push str.CTouJCEnLy0j
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x10], ebx
call fcn.00401363
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x14
push eax
lea eax, [ebp - 0xc0]
or ebx, 0x2000
push eax
lea eax, [ebp - 0x60]
mov dword [ebp - 0x10], ebx
push eax
call fcn.00419f95
add esp, 0xc
or ebx, 0x4000
mov dword [ebp - 4], 0x15
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 0x10], ebx
jb 0x407288
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
test dword [eax + 0x10], 0x400000
jne 0x40729b
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x30]
call fcn.00401363
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 0x16
push eax
lea eax, [ebp - 0x78]
or ebx, 0x8000
push eax
mov dword [ebp - 0x10], ebx
call fcn.00418a92
add esp, 8
mov dword [ebp + 8], eax
or ebx, 0x10000
jmp 0x4072e5
push 0x44543c
lea ecx, [ebp - 0x48]
call fcn.0040258f
mov dword [ebp + 8], eax
or ebx, 0x20000
mov esi, dword [ebp - 0x18]
add esi, 0x1c
mov dword [ebp - 0x10], ebx
cmp esi, eax
je 0x407320
cmp dword [esi + 0x14], 8
jb 0x407305
push dword [esi]
call fcn.0041fa80
mov eax, dword [ebp + 8]
add esp, 4
xor ecx, ecx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], cx
mov ecx, esi
push eax
call fcn.00403435
test ebx, 0x20000
je 0x407356
and ebx, 0xfffdffff
cmp dword [ebp - 0x34], 8
mov dword [ebp - 0x10], ebx
jb 0x407342
push dword [ebp - 0x48]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x34], 7
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
test ebx, 0x10000
je 0x40738c
and ebx, 0xfffeffff
cmp dword [ebp - 0x64], 8
mov dword [ebp - 0x10], ebx
jb 0x407378
push dword [ebp - 0x78]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x64], 7
mov dword [ebp - 0x68], 0
mov word [ebp - 0x78], ax
test ebx, 0x8000
je 0x4073c0
and ebx, 0xffff7fff
cmp dword [ebp - 0x1c], 0x10
mov dword [ebp - 0x10], ebx
jb 0x4073ae
push dword [ebp - 0x30]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x30], 0
test ebx, 0x4000
je 0x4073f4
and ebx, 0xffffbfff
cmp dword [ebp - 0x4c], 0x10
mov dword [ebp - 0x10], ebx
jb 0x4073e2
push dword [ebp - 0x60]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x4c], 0xf
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x60], 0
test ebx, 0x2000
je 0x407437
and ebx, 0xffffdfff
cmp dword [ebp - 0xac], 0x10
mov dword [ebp - 0x10], ebx
jb 0x40741c
push dword [ebp - 0xc0]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0xac], 0xf
mov dword [ebp - 0xb0], 0
mov byte [ebp - 0xc0], 0
test ebx, 0x1000
je 0x40747a
and ebx, 0xffffefff
cmp dword [ebp - 0x94], 0x10
mov dword [ebp - 0x10], ebx
jb 0x40745f
push dword [ebp - 0xa8]
call fcn.0041fa80
add esp, 4
mov dword [ebp - 0x94], 0xf
mov dword [ebp - 0x98], 0
mov byte [ebp - 0xa8], 0
cmp dword [ebp - 0x7c], 0x10
jb 0x40748e
push dword [ebp - 0x90]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xc4], 0x10
mov dword [ebp - 0x7c], 0xf
mov dword [ebp - 0x80], 0
mov byte [ebp - 0x90], 0
jb 0x4074ba
push dword [ebp - 0xd8]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xdc], 0x10
mov dword [ebp - 0xc4], 0xf
mov dword [ebp - 0xc8], 0
mov byte [ebp - 0xd8], 0
mov dword [ebp - 4], 0xffffffff
jb 0x4074f3
push dword [ebp - 0xf0]
call fcn.0041fa80
add esp, 4
push str.VPTSEFPEC
lea ecx, [ebp - 0xf0]
call fcn.00401363
push str.BSU2GiE
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0x18
call fcn.00401363
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 0x1a
jb 0x407540
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp + 8]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x40761e
push str.VPTSEFPEC
lea ecx, [ebp - 0xa8]
call fcn.00401363
or ebx, 0x40000
mov byte [ebp - 4], 0x1b
push str.BSU2GiE
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x10], ebx
call fcn.00401363
lea eax, [ebp - 0xa8]
mov dword [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0xc0]
or ebx, 0x80000
push eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 0x10], ebx
push eax
call fcn.00419f95
add esp, 0xc
or ebx, 0x100000
mov dword [ebp - 4], 0x1d
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 0x10], ebx
jb 0x4075d1
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
test dword [eax + 0x10], 0x400000
jne 0x4075e4
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x90]
call fcn.00401363
lea eax, [ebp - 0x90]
mov dword [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x78]
or ebx, 0x200000
push eax
mov dword [ebp - 0x10], ebx
call fcn.00418a92
add esp, 8
mov dword [ebp + 8], eax
or ebx, 0x400000
jmp 0x407634
push 0x44543c
lea ecx, [ebp - 0x48]
call fcn.0040258f
mov dword [ebp + 8], eax
or ebx, 0x800000
mov esi, dword [ebp - 0x18]
add esi, 0x4c
mov dword [ebp - 0x10], ebx
cmp esi, eax
je 0x40766f
cmp dword [esi + 0x14], 8
jb 0x407654
push dword [esi]
call fcn.0041fa80
mov eax, dword [ebp + 8]
add esp, 4
xor ecx, ecx
mov dword [esi + 0x14], 7
mov dword [esi + 0x10], 0
mov word [esi], cx
mov ecx, esi
push eax
call fcn.00403435
test ebx, 0x800000
je 0x4076a5
and ebx, 0xff7fffff
cmp dword [ebp - 0x34], 8
mov dword [ebp - 0x10], ebx
jb 0x407691
push dword [ebp - 0x48]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x34], 7
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
test ebx, 0x400000
je 0x4076db
and ebx, 0xffbfffff
cmp dword [ebp - 0x64], 8
mov dword [ebp - 0x10], ebx
jb 0x4076c7
push dword [ebp - 0x78]
call fcn.0041fa80
add esp, 4
xor eax, eax
mov dword [ebp - 0x64], 7
mov dword [ebp - 0x68], 0
mov word [ebp - 0x78], ax
test ebx, 0x200000
je 0x4076f7
and ebx, 0xffdfffff
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
test ebx, 0x100000
je 0x407713
and ebx, 0xffefffff
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
test ebx, 0x80000
je 0x40772f
and ebx, 0xfff7ffff
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
test ebx, 0x40000
je 0x40774b
and ebx, 0xfffbffff
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
cmp dword [ebp - 0x4c], 0x10
jb 0x40775c
push dword [ebp - 0x60]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0x1c], 0x10
mov dword [ebp - 0x4c], 0xf
mov dword [ebp - 0x50], 0
mov byte [ebp - 0x60], 0
jb 0x40777f
push dword [ebp - 0x30]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xdc], 0x10
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x30], 0
mov dword [ebp - 4], 0xffffffff
jb 0x4077af
push dword [ebp - 0xf0]
call fcn.0041fa80
add esp, 4
push str.NIVBDWYYG
lea ecx, [ebp - 0xf0]
call fcn.00401363
push str.GCwkMS04Nw
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0x20
call fcn.00401363
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x21
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 0x22
jb 0x4077fc
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp + 8]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x4078ce
push str.NIVBDWYYG
lea ecx, [ebp - 0x90]
call fcn.00401363
or ebx, 0x1000000
mov byte [ebp - 4], 0x23
push str.GCwkMS04Nw
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x10], ebx
call fcn.00401363
lea eax, [ebp - 0x90]
mov dword [ebp - 4], 0x24
push eax
lea eax, [ebp - 0x60]
or ebx, 0x2000000
push eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 0x10], ebx
push eax
call fcn.00419f95
add esp, 0xc
or ebx, 0x4000000
mov dword [ebp - 4], 0x25
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 0x10], ebx
jb 0x407887
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
test dword [eax + 0x10], 0x400000
jne 0x40789a
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x78]
call fcn.00401363
lea eax, [ebp - 0x78]
mov dword [ebp - 4], 0x26
push eax
lea eax, [ebp - 0xa8]
or ebx, 0x8000000
push eax
mov dword [ebp - 0x10], ebx
call fcn.00418a92
add esp, 8
or ebx, 0x10000000
jmp 0x4078e4
push 0x44543c
lea ecx, [ebp - 0xc0]
call fcn.0040258f
or ebx, 0x20000000
mov ecx, dword [ebp - 0x18]
push eax
mov dword [ebp - 0x10], ebx
lea ecx, [ecx + 0x64]
call fcn.004029b5
test ebx, 0x20000000
je 0x40790f
and ebx, 0xdfffffff
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x10], ebx
call fcn.004014a6
test ebx, 0x10000000
je 0x40792b
and ebx, 0xefffffff
lea ecx, [ebp - 0xa8]
mov dword [ebp - 0x10], ebx
call fcn.004014a6
test ebx, 0x8000000
je 0x407944
and ebx, 0xf7ffffff
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
test ebx, 0x4000000
je 0x407960
and ebx, 0xfbffffff
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
test ebx, 0x2000000
je 0x407979
and ebx, 0xfdffffff
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
test ebx, 0x1000000
je 0x407995
and ebx, 0xfeffffff
lea ecx, [ebp - 0x90]
mov dword [ebp - 0x10], ebx
call fcn.0040149c
cmp dword [ebp - 0x34], 0x10
jb 0x4079a6
push dword [ebp - 0x48]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0x1c], 0x10
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
jb 0x4079c9
push dword [ebp - 0x30]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xdc], 0x10
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x30], 0
mov dword [ebp - 4], 0xffffffff
jb 0x4079f9
push dword [ebp - 0xf0]
call fcn.0041fa80
add esp, 4
push str.CIPEZABJBY
lea ecx, [ebp - 0xf0]
call fcn.00401363
push str.ACY9NRQgLy8
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0x28
call fcn.00401363
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x29
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 0x2a
jb 0x407a46
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp + 8]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x407b13
push str.CIPEZABJBY
lea ecx, [ebp - 0x90]
call fcn.00401363
or ebx, 0x40000000
mov byte [ebp - 4], 0x2b
push str.ACY9NRQgLy8
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x10], ebx
call fcn.00401363
lea eax, [ebp - 0x90]
mov dword [ebp - 4], 0x2c
push eax
lea eax, [ebp - 0x60]
or ebx, 0x80000000
push eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 0x10], ebx
push eax
call fcn.00419f95
add esp, 0xc
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 4], 0x2d
mov dword [ebp - 0x14], 1
jb 0x407acf
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
test dword [eax + 0x10], 0x400000
jne 0x407ae2
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x78]
call fcn.00401363
lea eax, [ebp - 0x78]
mov dword [ebp - 4], 0x2e
push eax
lea eax, [ebp - 0xa8]
mov dword [ebp - 0x14], 3
push eax
call fcn.00418a92
add esp, 8
mov ecx, 7
jmp 0x407b28
push 0x44543c
lea ecx, [ebp - 0xc0]
call fcn.0040258f
mov ecx, 8
mov dword [ebp - 0x14], ecx
mov dword [ebp + 8], ecx
mov ecx, dword [ebp - 0x18]
push eax
lea ecx, [ecx + 0x7c]
call fcn.004029b5
mov eax, dword [ebp + 8]
test al, 8
je 0x407b58
and eax, 0xfffffff7
lea ecx, [ebp - 0xc0]
mov dword [ebp + 8], eax
mov dword [ebp - 0x14], eax
call fcn.004014a6
mov eax, dword [ebp + 8]
test al, 4
je 0x407b73
and eax, 0xfffffffb
lea ecx, [ebp - 0xa8]
mov dword [ebp + 8], eax
mov dword [ebp - 0x14], eax
call fcn.004014a6
mov eax, dword [ebp + 8]
test al, 2
je 0x407b8b
and eax, 0xfffffffd
lea ecx, [ebp - 0x78]
mov dword [ebp + 8], eax
mov dword [ebp - 0x14], eax
call fcn.0040149c
mov eax, dword [ebp + 8]
test al, 1
je 0x407ba3
and eax, 0xfffffffe
lea ecx, [ebp - 0xd8]
mov dword [ebp + 8], eax
mov dword [ebp - 0x14], eax
call fcn.0040149c
test ebx, ebx
jns 0x407bb5
lea ecx, [ebp - 0x60]
and ebx, 0x7fffffff
call fcn.0040149c
test ebx, 0x40000000
je 0x407bc8
lea ecx, [ebp - 0x90]
call fcn.0040149c
cmp dword [ebp - 0x34], 0x10
jb 0x407bd9
push dword [ebp - 0x48]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0x1c], 0x10
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
jb 0x407bfc
push dword [ebp - 0x30]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xdc], 0x10
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x30], 0
mov dword [ebp - 4], 0xffffffff
jb 0x407c2c
push dword [ebp - 0xf0]
call fcn.0041fa80
add esp, 4
push str.KGSDQOT
lea ecx, [ebp - 0xf0]
call fcn.00401363
push str.DCI8
lea ecx, [ebp - 0x30]
mov dword [ebp - 4], 0x30
call fcn.00401363
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x31
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 0x32
jb 0x407c79
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp - 0x10]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x407d45
push str.KGSDQOT
lea ecx, [ebp - 0x90]
call fcn.00401363
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0x60]
or ebx, 0x10
mov byte [ebp - 4], 0x33
push str.DCI8
mov dword [ebp - 0x14], ebx
call fcn.00401363
lea eax, [ebp - 0x90]
mov dword [ebp - 4], 0x34
push eax
lea eax, [ebp - 0x60]
or ebx, 0x20
push eax
lea eax, [ebp - 0xd8]
mov dword [ebp - 0x14], ebx
push eax
call fcn.00419f95
add esp, 0xc
or ebx, 0x40
mov dword [ebp - 4], 0x35
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 0x14], ebx
jb 0x407cfe
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
test dword [eax + 0x10], 0x400000
jne 0x407d11
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x78]
call fcn.00401363
lea eax, [ebp - 0x78]
mov dword [ebp - 4], 0x36
push eax
lea eax, [ebp - 0xa8]
or ebx, 0x80
push eax
mov dword [ebp - 0x14], ebx
call fcn.00418a92
add esp, 8
or ebx, 0x100
jmp 0x407d5e
push 0x44543c
lea ecx, [ebp - 0xc0]
call fcn.0040258f
mov ebx, dword [ebp + 8]
or ebx, 0x200
mov ecx, dword [ebp - 0x18]
push eax
lea ecx, [ecx + 0x94]
call fcn.004029b5
test ebx, 0x200
je 0x407d86
lea ecx, [ebp - 0xc0]
and ebx, 0xfffffdff
call fcn.004014a6
test ebx, 0x100
je 0x407d9f
lea ecx, [ebp - 0xa8]
and ebx, 0xfffffeff
call fcn.004014a6
test bl, bl
jns 0x407db1
lea ecx, [ebp - 0x78]
and ebx, 0xffffff7f
call fcn.0040149c
test bl, 0x40
je 0x407dc4
lea ecx, [ebp - 0xd8]
and ebx, 0xffffffbf
call fcn.0040149c
test bl, 0x20
je 0x407dd4
lea ecx, [ebp - 0x60]
and ebx, 0xffffffdf
call fcn.0040149c
test bl, 0x10
je 0x407de7
lea ecx, [ebp - 0x90]
and ebx, 0xffffffef
call fcn.0040149c
cmp dword [ebp - 0x34], 0x10
jb 0x407df8
push dword [ebp - 0x48]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0x1c], 0x10
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x38], 0
mov byte [ebp - 0x48], 0
jb 0x407e1b
push dword [ebp - 0x30]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xdc], 0x10
mov dword [ebp - 0x1c], 0xf
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x30], 0
mov dword [ebp - 4], 0xffffffff
jb 0x407e4b
push dword [ebp - 0xf0]
call fcn.0041fa80
add esp, 4
push str.IWGDED
lea ecx, [ebp - 0x138]
call fcn.00401363
push str.ADk0MAwg
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0x38
call fcn.00401363
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0x39
push eax
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.00419f95
add esp, 0xc
mov ecx, eax
cmp dword [ecx + 0x14], 0x10
mov byte [ebp - 4], 0x3a
jb 0x407ea1
mov ecx, dword [ecx]
mov eax, dword [edi + 4]
push ecx
mov ecx, edi
lea esi, [eax + eax*2]
lea eax, [ebp + 8]
shl esi, 4
add esi, dword [edi]
push eax
call fcn.00406a60
cmp dword [eax], esi
je 0x407f3a
push str.IWGDED
lea ecx, [ebp - 0x168]
call fcn.00401363
or ebx, 0x400
mov byte [ebp - 4], 0x3b
push str.ADk0MAwg
lea ecx, [ebp - 0x150]
mov dword [ebp - 0x14], ebx
call fcn.00401363
lea eax, [ebp - 0x168]
mov dword [ebp - 4], 0x3c
push eax
lea eax, [ebp - 0x150]
or ebx, 0x800
push eax
lea eax, [ebp - 0x180]
mov dword [ebp - 0x14], ebx
push eax
call fcn.00419f95
add esp, 0xc
or ebx, 0x1000
mov dword [ebp - 4], 0x3d
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 0x14], ebx
jb 0x407f2e
mov eax, dword [eax]
push eax
mov ecx, edi
call fcn.004063d0
mov eax, dword [eax]
jmp 0x407f3c
xor eax, eax
mov ecx, dword [ebp - 0x18]
mov dword [ecx + 0xac], eax
test ebx, 0x1000
je 0x407f5e
lea ecx, [ebp - 0x180]
and ebx, 0xffffefff
call fcn.0040149c
test ebx, 0x800
je 0x407f77
lea ecx, [ebp - 0x150]
and ebx, 0xfffff7ff
call fcn.0040149c
test ebx, 0x400
je 0x407f8a
lea ecx, [ebp - 0x168]
call fcn.0040149c
cmp dword [ebp - 0x10c], 0x10
jb 0x407fa1
push dword [ebp - 0x120]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0xf4], 0x10
mov dword [ebp - 0x10c], 0xf
mov dword [ebp - 0x110], 0
mov byte [ebp - 0x120], 0
jb 0x407fd3
push dword [ebp - 0x108]
call fcn.0041fa80
add esp, 4
cmp dword [ebp - 0x124], 0x10
mov dword [ebp - 0xf4], 0xf
mov dword [ebp - 0xf8], 0
mov byte [ebp - 0x108], 0
jb 0x408005
push dword [ebp - 0x138]
call fcn.0041fa80
add esp, 4
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4