Function at 0x154e920
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
push ebx
push esi
push edi
mov dword [ebp - 0x10], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov word [ebp - 0x18], 0
jmp 0x154e96a
mov eax, dword [ebp + 8]
shl eax, 4
mov ecx, dword [eax + 0x15f1b70]
shr ecx, 0x10
and ecx, 0xff
test ecx, ecx
je 0x154e9d4
mov edx, dword [ebp + 8]
shl edx, 4
mov eax, dword [edx + 0x15f1b70]
shr eax, 0x10
and eax, 0xff
cmp eax, 1
je 0x154e9d4
mov ecx, dword [ebp + 8]
shl ecx, 4
mov edx, dword [ecx + 0x15f1b70]
shr edx, 0x10
and edx, 0xff
cmp edx, 2
je 0x154e9d4
mov eax, dword [ebp + 8]
shl eax, 4
mov ecx, dword [eax + 0x15f1b70]
shr ecx, 0x10
and ecx, 0xff
cmp ecx, 3
jne 0x154ecb4
cmp dword [0x16455a4], 0
je 0x154ea5c
cmp dword [0x164f7cc], 0
je 0x154ea07
push 0
push 0
push 3
push 0
push 3
push 0xc0000000
push 0x16460a0
call dword [0x164e60c]
mov dword [0x1645588], eax
jmp 0x154ea26
push 0
push 0
push 3
push 0
push 3
push 0x80000000
push 0x16460a0
call dword [0x164e60c]
mov dword [0x1645588], eax
jmp 0x154ea49
cmp dword [0x1645588], 0xffffffff
jne 0x154ea5c
mov dword [0x1645588], 0
cmp dword [0x16455a4], 0
jne 0x154ecb4
cmp dword [0x1645710], 0
jne 0x154ecb4
push 0x1649c40
call dword [0x16524bc]
mov dword [0x16455b0], eax
cmp dword [0x16455b0], 0
je 0x154ec7d
mov dword [0x16455ac], 1
push 2
mov edx, dword [0x16455b0]
push edx
call dword [0x16524d4]
mov dword [0x164886c], eax
push 3
mov eax, dword [0x16455b0]
push eax
call dword [0x16524d4]
mov dword [0x1649024], eax
push 4
mov ecx, dword [0x16455b0]
push ecx
call dword [0x16524d4]
mov dword [0x1648b34], eax
push 5
mov edx, dword [0x16455b0]
push edx
call dword [0x16524d4]
mov dword [0x164f7f8], eax
push 6
mov eax, dword [0x16455b0]
push eax
call dword [0x16524d4]
mov dword [0x1648874], eax
push 7
mov ecx, dword [0x16455b0]
push ecx
call dword [0x16524d4]
mov dword [0x164a2a8], eax
push 8
mov edx, dword [0x16455b0]
push edx
call dword [0x16524d4]
mov dword [0x1646084], eax
push 9
mov eax, dword [0x16455b0]
push eax
call dword [0x16524d4]
mov dword [0x164bb14], eax
push 0xa
mov ecx, dword [0x16455b0]
push ecx
call dword [0x16524d4]
mov dword [0x1648800], eax
push 0xb
mov edx, dword [0x16455b0]
push edx
call dword [0x16524d4]
mov dword [0x164f644], eax
push 0xc
mov eax, dword [0x16455b0]
push eax
call dword [0x16524d4]
mov dword [0x1646088], eax
push 0xd
mov ecx, dword [0x16455b0]
push ecx
call dword [0x16524d4]
mov dword [0x164f830], eax
push 0xe
mov edx, dword [0x16455b0]
push edx
call dword [0x16524d4]
mov dword [0x164d1a8], eax
push 0xf
mov eax, dword [0x16455b0]
push eax
call dword [0x16524d4]
mov dword [0x16464ec], eax
cmp dword [0x164d1a8], 0
je 0x154ec2e
cmp dword [0x164f830], 0
je 0x154ec2e
cmp dword [0x1649024], 0
je 0x154ec2e
cmp dword [0x1648b34], 0
je 0x154ec2e
cmp dword [0x164f7f8], 0
je 0x154ec2e
cmp dword [0x1648874], 0
je 0x154ec2e
cmp dword [0x164a2a8], 0
je 0x154ec2e
cmp dword [0x1646084], 0
je 0x154ec2e
cmp dword [0x164bb14], 0
je 0x154ec2e
cmp dword [0x1648800], 0
je 0x154ec2e
cmp dword [0x164f644], 0
je 0x154ec2e
cmp dword [0x1646088], 0
je 0x154ec2e
cmp dword [0x16464ec], 0
je 0x154ec2e
cmp dword [0x164886c], 0
jne 0x154ec7d
cmp dword [0x15f1b54], 0
je 0x154ec5a
push 0x1649c40
push 0x1624788
push 0x1647800
call fcn.015c24f5
add esp, 0xc
push 0x1647800
push 0x20
call fcn.01549920
cmp dword [0x15f1b54], 0
je 0x154ec6f
push 0x16247f4
push 4
call fcn.01549920
push 0xa
call fcn.01548790
push 0xa
call fcn.015c20de
cmp dword [0x16455ac], 0
je 0x154ecb4
push 1
call dword [0x164886c]
test eax, eax
jne 0x154ec94
jmp 0x154ec9e
mov dword [0x16455a8], 1
call dword [0x1649024]
test eax, eax
jne 0x154ecaa
jmp 0x154ecb4
mov dword [0x1645774], 1
mov dword [ebp - 0x10], 0
mov ecx, dword [ebp + 8]
shl ecx, 4
mov edx, dword [ecx + 0x15f1b70]
shr edx, 0x10
and edx, 0xff
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x1c]
sub eax, 1
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x8f
ja case.0x154ecf4.8
mov edx, dword [ebp - 0x1c]
xor ecx, ecx
mov cl, byte [edx + 0x154f953]
jmp dword [ecx*4 + 0x154f92f]
call dword [0x164b9f0]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
xor eax, dword [ebp + 0xc]
shr eax, 3
xor edx, edx
mov ecx, 1
div ecx
mov dword [ebp - 0xc], edx
mov edx, dword [0x1645784]
and edx, 0x80000000
jns 0x154ed2c
dec edx
or edx, 0xffffffff
inc edx
mov dword [ebp - 0xc], edx
mov eax, dword [0x1645784]
add eax, 1
mov dword [0x1645784], eax
cmp dword [ebp + 0x18], 0xffffffff
je 0x154ed48
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x20], edx
cmp dword [ebp - 0x20], 0
je 0x154ed5c
cmp dword [ebp - 0x20], 1
je 0x154eda0
jmp 0x154edc5
push 0x164e640
call fcn.01552a60
test eax, eax
je 0x154ed9e
mov eax, dword [0x1645778]
xor ecx, ecx
mov cl, byte [eax]
test ecx, ecx
je 0x154ed97
call fcn.015b0230
cmp dword [0x164556c], 0
je 0x154ed8e
mov dword [ebp - 0x10], 1
jmp 0x154ed95
mov dword [ebp - 0x10], 0
jmp 0x154ed9e
mov dword [ebp - 0x10], 1
jmp 0x154edc5
cmp dword [0x16455a4], 0
jne 0x154edb2
cmp dword [0x1645710], 0
je 0x154edbe
push 0x164e640
call fcn.01552a60
jmp 0x154edc5
mov dword [ebp - 0x10], 1
jmp case.0x154ecf4.8
xor edx, edx
mov dx, word [0x164c888]
and edx, 0x80000000
jns 0x154ede0
dec edx
or edx, 0xffffffff
inc edx
mov dword [ebp - 0xc], edx
mov eax, dword [0x1645788]
and eax, 0x80000000
jns 0x154edf4
dec eax
or eax, 0xffffffff
inc eax
mov dword [ebp - 0xc], eax
mov ecx, dword [0x1645788]
add ecx, 1
mov dword [0x1645788], ecx
cmp dword [ebp + 0x18], 0xffffffff
je 0x154ee12
mov edx, dword [ebp + 0x18]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
je 0x154ee2d
cmp dword [ebp - 0x24], 1
je 0x154ef31
jmp 0x154f3f2
cmp dword [0x16455a4], 0
jne 0x154ee43
cmp dword [0x1645710], 0
je 0x154ef25
push 0x164e640
call fcn.01552a60
test eax, eax
je 0x154ef23
push 1
call fcn.015b0d40
add eax, 0x10
push eax
push 0x164e640
call fcn.015526f0
test eax, eax
je 0x154ef23
mov dword [0x164ba0c], 0
mov dword [0x1645ffc], 0x15
jmp 0x154ee97
mov ecx, dword [0x1645ffc]
add ecx, 1
mov dword [0x1645ffc], ecx
cmp dword [0x1645ffc], 0x200
jge 0x154eebc
mov edx, dword [0x1645ffc]
mov eax, dword [0x164ba0c]
add eax, dword [edx*4 + 0x164e640]
mov dword [0x164ba0c], eax
jmp 0x154ee88
push 0x28
push 0
push 0x164b780
call fcn.015c2570
add esp, 0xc
push 0x20
push 0x164e668
push 0x164b780
call fcn.015c21c0
add esp, 0xc
mov ecx, dword [0x15d05a8]
cmp ecx, dword [0x164ba0c]
jne 0x154eef8
mov dword [ebp - 0x10], 1
jmp 0x154ef23
push 0x15d0560
call fcn.015c2e70
add esp, 4
push eax
push 0x15d0560
push 0x164b780
call fcn.015c2a70
add esp, 0xc
test eax, eax
jne 0x154ef23
mov dword [ebp - 0x10], 1
jmp 0x154ef2c
mov dword [ebp - 0x10], 1
jmp 0x154f3f2
cmp dword [0x16457b8], 0
jne 0x154f3eb
cmp dword [0x16455a4], 0
jne 0x154ef54
cmp dword [0x1645710], 0
je 0x154f3eb
push 0x164e640
call fcn.01552a60
test eax, eax
je 0x154f3e9
push 0x1000
push 0
push 0x164e640
call fcn.015c2570
add esp, 0xc
mov edx, dword [0x1648fb4]
sub edx, 3
mov dword [0x1646004], edx
mov eax, dword [0x1646004]
add eax, 5
mov dword [0x164aee0], eax
mov eax, dword [0x1648fb4]
xor edx, edx
mov ecx, 0x1194
div ecx
mov ecx, eax
shl ecx, 0x10
mov eax, dword [0x1648fb4]
xor edx, edx
mov esi, 0x1194
div esi
mov eax, edx
xor edx, edx
mov esi, 0x4b
div esi
shl eax, 8
add ecx, eax
mov eax, dword [0x1648fb4]
xor edx, edx
mov esi, 0x4b
div esi
add ecx, edx
mov dword [0x1645d04], ecx
mov eax, dword [0x1648fb4]
xor edx, edx
mov ecx, 0x1194
div ecx
mov ecx, eax
mov eax, dword [0x1648fb4]
xor edx, edx
mov esi, 0x1194
div esi
xor edx, edx
mov esi, 0xa
div esi
imul eax, eax, 6
add ecx, eax
shl ecx, 0x10
mov eax, dword [0x1648fb4]
xor edx, edx
mov esi, 0x1194
div esi
mov eax, edx
xor edx, edx
mov esi, 0x4b
div esi
mov esi, eax
mov eax, dword [0x1648fb4]
xor edx, edx
mov edi, 0x1194
div edi
mov eax, edx
xor edx, edx
mov edi, 0x4b
div edi
xor edx, edx
mov edi, 0xa
div edi
imul eax, eax, 6
add esi, eax
shl esi, 8
add ecx, esi
mov eax, dword [0x1648fb4]
xor edx, edx
mov esi, 0x4b
div esi
mov esi, edx
mov eax, dword [0x1648fb4]
xor edx, edx
mov edi, 0x4b
div edi
mov eax, edx
xor edx, edx
mov edi, 0xa
div edi
imul eax, eax, 6
add esi, eax
add ecx, esi
mov dword [0x164b340], ecx
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov ecx, 0x1194
div ecx
mov ecx, eax
shl ecx, 0x10
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov esi, 0x1194
div esi
mov eax, edx
xor edx, edx
mov esi, 0x4b
div esi
shl eax, 8
add ecx, eax
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov esi, 0x4b
div esi
add ecx, edx
mov dword [0x164a2b0], ecx
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov ecx, 0x1194
div ecx
mov ecx, eax
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov esi, 0x1194
div esi
xor edx, edx
mov esi, 0xa
div esi
imul eax, eax, 6
add ecx, eax
shl ecx, 0x10
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov esi, 0x1194
div esi
mov eax, edx
xor edx, edx
mov esi, 0x4b
div esi
mov esi, eax
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov edi, 0x1194
div edi
mov eax, edx
xor edx, edx
mov edi, 0x4b
div edi
xor edx, edx
mov edi, 0xa
div edi
imul eax, eax, 6
add esi, eax
shl esi, 8
add ecx, esi
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov esi, 0x4b
div esi
mov esi, edx
mov eax, dword [0x1648fb4]
add eax, 0x96
xor edx, edx
mov edi, 0x4b
div edi
mov eax, edx
xor edx, edx
mov edi, 0xa
div edi
imul eax, eax, 6
add esi, eax
add ecx, esi
mov dword [0x16464c8], ecx
mov dword [0x164bb18], 0
mov dword [0x164b9e4], 1
mov edx, dword [0x1646004]
cmp edx, dword [0x164aee0]
jge 0x154f3cb
cmp dword [0x164bb18], 3
jge 0x154f3cb
cmp dword [0x164b9e4], 0
je 0x154f1fe
push 1
mov eax, dword [0x1646004]
push eax
push 0x164e640
call fcn.015b0c20
mov dword [0x1647780], eax
jmp 0x154f216
push 1
mov ecx, dword [0x1646004]
push ecx
push 0x164e640
call fcn.01551eb0
mov dword [0x1647780], eax
cmp dword [0x1647780], 0
je 0x154f35a
xor edx, edx
mov dl, byte [0x164ef70]
cmp edx, 0x41
jne 0x154f32b
xor eax, eax
mov al, byte [0x164ef71]
cmp eax, 1
jne 0x154f32b
xor ecx, ecx
mov cl, byte [0x164ef72]
cmp ecx, 1
jne 0x154f32b
mov edx, dword [0x164ef72]
and dl, 0
mov dword [0x164b304], edx
mov eax, dword [0x164b304]
shr eax, 0x18
and eax, 0xff
mov ecx, dword [0x164b304]
shr ecx, 0x10
and ecx, 0xff
shl ecx, 8
add eax, ecx
mov edx, dword [0x164b304]
shr edx, 8
and edx, 0xff
shl edx, 0x10
add eax, edx
mov ecx, dword [0x164b304]
and ecx, 0xff
shl ecx, 0x18
add eax, ecx
mov dword [0x164b304], eax
mov edx, dword [0x164ef76]
and dl, 0
mov dword [0x1645e70], edx
mov eax, dword [0x1645e70]
shr eax, 0x18
and eax, 0xff
mov ecx, dword [0x1645e70]
shr ecx, 0x10
and ecx, 0xff
shl ecx, 8
add eax, ecx
mov edx, dword [0x1645e70]
shr edx, 8
and edx, 0xff
shl edx, 0x10
add eax, edx
mov ecx, dword [0x1645e70]
and ecx, 0xff
shl ecx, 0x18
add eax, ecx
mov dword [0x1645e70], eax
mov edx, dword [0x1645e70]
cmp edx, dword [0x164a2b0]
je 0x154f324
mov eax, dword [0x1645e70]
cmp eax, dword [0x16464c8]
jne 0x154f329
jmp 0x154f3cb
jmp 0x154f33f
mov ecx, dword [0x164bb18]
add ecx, 1
mov dword [0x164bb18], ecx
jmp 0x154f1bd
mov dword [0x164bb18], 0
mov edx, dword [0x1646004]
add edx, 1
mov dword [0x1646004], edx
jmp 0x154f3c6
cmp dword [0x164b9e4], 0
je 0x154f396
xor eax, eax
mov al, byte [0x164d3e2]
cmp eax, 5
jne 0x154f396
mov ecx, dword [0x164575c]
xor edx, edx
mov dl, byte [ecx]
cmp edx, 2
jge 0x154f38a
mov dword [0x164bb18], 3
jmp 0x154f3cb
mov dword [0x164b9e4], 0
jmp 0x154f3c6
cmp dword [0x164b9e4], 0
jne 0x154f3b7
xor eax, eax
mov al, byte [0x164d3e2]
cmp eax, 5
jne 0x154f3b7
mov dword [0x164bb18], 3
jmp 0x154f3cb
mov ecx, dword [0x164bb18]
add ecx, 1
mov dword [0x164bb18], ecx
jmp 0x154f1bd
cmp dword [0x164bb18], 3
je 0x154f3e2
mov edx, dword [0x1646004]
cmp edx, dword [0x164aee0]
jne 0x154f3e9
mov dword [ebp - 0x10], 1
jmp 0x154f3f2
mov dword [ebp - 0x10], 1
jmp case.0x154ecf4.8
cmp dword [0x16455a4], 0
jne 0x154f409
cmp dword [0x1645710], 0
je 0x154f41e
push 0x164e640
call fcn.01552a60
test eax, eax
je 0x154f41e
mov dword [ebp - 0x10], 1
jmp case.0x154ecf4.8
xor eax, eax
mov ax, word [0x164c886]
and eax, 0x80000000
jns 0x154f437
dec eax
or eax, 0xffffffff
inc eax
mov dword [ebp - 0xc], eax
mov ecx, dword [0x164578c]
and ecx, 0x80000000
jns 0x154f44d
dec ecx
or ecx, 0xffffffff
inc ecx
mov dword [ebp - 0xc], ecx
mov edx, dword [0x164578c]
add edx, 1
mov dword [0x164578c], edx
cmp dword [ebp + 0x18], 0xffffffff
je 0x154f46b
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x28], ecx
jmp case.0x154ecf4.8
call dword [0x164b9f0]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
xor eax, dword [ebp + 0xc]
shr eax, 2
xor edx, edx
mov ecx, 2
div ecx
mov dword [ebp - 0xc], edx
mov edx, dword [0x1645790]
and edx, 0x80000001
jns 0x154f4a7
dec edx
or edx, 0xfffffffe
inc edx
mov dword [ebp - 0xc], edx
mov eax, dword [0x1645790]
add eax, 1
mov dword [0x1645790], eax
cmp dword [ebp + 0x18], 0xffffffff
je 0x154f4c3
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x2c], edx
cmp dword [ebp - 0x2c], 0
je 0x154f4d7
cmp dword [ebp - 0x2c], 1
je 0x154f52e
jmp 0x154f553
cmp dword [0x16455b4], 0
je 0x154f52c
mov eax, dword [0x1649060]
mov ecx, dword [0x16455b4]
cmp dword [ecx + eax*4], 0
jne 0x154f52c
mov edx, dword [0x1649064]
mov eax, dword [0x16455b4]
cmp dword [eax + edx*4], 0
jne 0x154f52c
mov ecx, dword [0x1649068]
mov edx, dword [0x16455b4]
cmp dword [edx + ecx*4], 0
jne 0x154f52c
mov eax, dword [0x164906c]
mov ecx, dword [0x16455b4]
cmp dword [ecx + eax*4], 0
jne 0x154f52c
mov dword [ebp - 0x10], 1
jmp 0x154f553
cmp dword [0x164d1ac], 0
je 0x154f553
mov edx, dword [0x164d1ac]
mov eax, dword [edx]
sub eax, 0x96
cmp dword [0x164608c], eax
jne 0x154f553
mov dword [ebp - 0x10], 1
jmp case.0x154ecf4.8
call dword [0x164b9f0]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
xor eax, dword [ebp + 0xc]
shr eax, 2
xor edx, edx
mov ecx, 1
div ecx
mov dword [ebp - 0xc], edx
mov edx, dword [0x1645794]
and edx, 0x80000000
jns 0x154f589
dec edx
or edx, 0xffffffff
inc edx
mov dword [ebp - 0xc], edx
mov eax, dword [0x1645794]
add eax, 1
mov dword [0x1645794], eax
cmp dword [ebp + 0x18], 0xffffffff
je 0x154f5a5
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x30], edx
cmp dword [ebp - 0x30], 0
je 0x154f5b3
jmp 0x154f607
cmp dword [0x164c860], 1
je 0x154f5c5
cmp dword [0x1645da4], 1
jne 0x154f5ce
mov dword [ebp - 0x10], 1
jmp 0x154f5ea
mov eax, dword [0x164a1b2]
push eax
call fcn.015ba280
push eax
push 0x164bb80
call fcn.015ad7f0
mov word [0x1646690], ax
xor ecx, ecx
mov cx, word [0x164a1aa]
xor edx, edx
mov dx, word [0x1646690]
cmp ecx, edx
jne 0x154f607
mov dword [ebp - 0x10], 1
jmp case.0x154ecf4.8
xor eax, eax
mov ax, word [0x164c886]
cdq
mov ecx, 3
idiv ecx
add edx, dword [0x16457bc]
and edx, 0x80000003
jns 0x154f62f
dec edx
or edx, 0xfffffffc
inc edx
mov dword [ebp - 0xc], edx
mov edx, dword [0x1645798]
and edx, 0x80000003
jns 0x154f645
dec edx
or edx, 0xfffffffc
inc edx
mov dword [ebp - 0xc], edx
mov eax, dword [0x1645798]
add eax, 1
mov dword [0x1645798], eax
cmp dword [ebp + 0x18], 0xffffffff
je 0x154f661
mov ecx, dword [ebp + 0x18]
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x34], edx
cmp dword [ebp - 0x34], 3
ja case.default.0x154f674
mov eax, dword [ebp - 0x34]
jmp dword [eax*4 + 0x154f9e3]
mov ecx, dword [0x16455a4]
push ecx
call fcn.015c0170
test eax, eax
jne 0x154f694
mov dword [ebp - 0x10], 1
jmp 0x154f6a9
cmp dword [0x15f1b54], 0
je 0x154f6a9
push 0x16247fc
push 0x20
call fcn.01549920
jmp case.default.0x154f674
cmp dword [0x164c860], 1
je 0x154f6c0
cmp dword [0x1645da4], 1
jne 0x154f6c9
mov dword [ebp - 0x10], 1
jmp 0x154f701
mov edx, dword [0x164f7f0]
mov eax, dword [edx]
and eax, 0xffff
xor ecx, ecx
mov cx, word [0x164a1ac]
cmp eax, ecx
jne 0x154f6ec
mov dword [ebp - 0x10], 1
jmp 0x154f701
cmp dword [0x15f1b54], 0
je 0x154f701
push 0x1624874
push 0x20
call fcn.01549920
jmp case.default.0x154f674
mov edx, dword [0x16455a4]
push edx
call fcn.015c0240
test eax, eax
jne 0x154f71c
mov dword [ebp - 0x10], 1
jmp 0x154f731
cmp dword [0x15f1b54], 0
je 0x154f731
push 0x162492c
push 0x20
call fcn.01549920
jmp case.default.0x154f674
mov dword [ebp - 0x10], 1
jmp case.0x154ecf4.8
mov eax, dword [0x15f1df8]
xor edx, edx
mov ecx, 2
div ecx
test edx, edx
jne 0x154f77a
call dword [0x164b9f0]
mov dword [0x15f1dfc], eax
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
mov dword [0x15f1e00], eax
mov ecx, dword [ebp + 0x14]
mov edx, dword [0x15f1dfc]
mov dword [ecx], edx
mov dword [ebp - 0x10], 1
jmp 0x154f7dd
mov eax, dword [0x15f1df8]
xor edx, edx
mov ecx, 2
div ecx
cmp edx, 1
jne 0x154f7dd
mov edx, dword [ebp + 0x14]
cmp dword [edx], 0
je 0x154f7b6
mov eax, dword [0x15f1dfc]
xor eax, dword [0x15f1e00]
mov ecx, dword [0x164a188]
xor ecx, eax
mov edx, dword [ebp + 0x14]
mov dword [edx], ecx
mov dword [ebp - 0x10], 1
jmp 0x154f7dd
mov eax, dword [0x15f1df8]
xor ecx, ecx
mov cl, byte [eax + 0x164a1be]
mov edx, dword [0x15f1dfc]
xor edx, dword [0x15f1e00]
xor ecx, edx
mov eax, dword [ebp + 0x14]
mov dword [eax], ecx
mov dword [ebp - 0x10], 0
mov ecx, dword [0x15f1df8]
add ecx, 1
mov dword [0x15f1df8], ecx
mov edx, dword [ebp + 8]
shl edx, 4
mov eax, dword [edx + 0x15f1b70]
shr eax, 0x10
and eax, 0xff
test eax, eax
je 0x154f855
mov ecx, dword [ebp + 8]
shl ecx, 4
mov edx, dword [ecx + 0x15f1b70]
shr edx, 0x10
and edx, 0xff
cmp edx, 1
je 0x154f855
mov eax, dword [ebp + 8]
shl eax, 4
mov ecx, dword [eax + 0x15f1b70]
shr ecx, 0x10
and ecx, 0xff
cmp ecx, 2
je 0x154f855
mov edx, dword [ebp + 8]
shl edx, 4
mov eax, dword [edx + 0x15f1b70]
shr eax, 0x10
and eax, 0xff
cmp eax, 3
jne 0x154f8f4
cmp dword [0x16455a4], 0
jne 0x154f8cb
cmp dword [0x1645710], 0
jne 0x154f8cb
cmp dword [0x1645774], 0
je 0x154f880
call dword [0x1648b34]
mov dword [0x1645774], 0
push 0
call dword [0x164886c]
test eax, eax
jne 0x154f88e
jmp 0x154f898
mov dword [0x16455a8], 0
cmp dword [0x16455ac], 0
je 0x154f8cb
cmp dword [0x16455b0], 0
je 0x154f8c1
mov ecx, dword [0x16455b0]
push ecx
call dword [0x1645da0]
mov dword [0x16455b0], 0
mov dword [0x16455ac], 0
cmp dword [0x16455a4], 0
je 0x154f8f4
cmp dword [0x1645588], 0
je 0x154f8f4
mov edx, dword [0x1645588]
push edx
call dword [0x1645d14]
mov dword [0x1645588], 0
jmp 0x154f918
call dword [0x164b9f0]
mov dword [0x16457b0], eax
mov eax, dword [ebp - 0x10]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14