Function at 0x4ad980
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x860
mov eax, 0
mov ecx, 0x20a
lea edx, [ebp - 0x666]
lea esi, [ebp - 0x45c]
lea edi, [ebp - 0x252]
mov ebx, 0x28
mov dword [ebp - 0x684], eax
lea eax, [ebp - 0x48]
mov dword [ebp - 0x20], 0
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x28
mov dword [ebp - 0x688], ebx
mov dword [ebp - 0x68c], ecx
mov dword [ebp - 0x690], edx
mov dword [ebp - 0x694], esi
mov dword [ebp - 0x698], edi
call fcn.004dd2d0
mov eax, dword [ebp - 0x698]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20a
call fcn.004dd2d0
mov eax, dword [ebp - 0x694]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20a
call fcn.004dd2d0
mov eax, dword [ebp - 0x690]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 0x20a
call fcn.004dd2d0
mov dword [ebp - 0x674], 0
call fcn.004ab550
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x680], 0xf0b93c3e
mov eax, dword [ebp - 0x680]
mov ecx, eax
sub ecx, 0x7f29c3fd
mov dword [ebp - 0x69c], eax
mov dword [ebp - 0x6a0], ecx
jg 0x4ae2fa
jmp 0x4ada8e
mov eax, dword [ebp - 0x69c]
sub eax, 0x9451c8ad
mov dword [ebp - 0x6a4], eax
jg 0x4adac6
jmp 0x4adaaa
mov eax, dword [ebp - 0x69c]
sub eax, 0x84e6f61a
mov dword [ebp - 0x6a8], eax
je 0x4ae433
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x6e5f87eb
mov dword [ebp - 0x6ac], eax
jg 0x4ae2de
jmp 0x4adae2
mov eax, dword [ebp - 0x69c]
sub eax, 0x6b40e33f
mov dword [ebp - 0x6b0], eax
jg 0x4ae2c2
jmp 0x4adafe
mov eax, dword [ebp - 0x69c]
sub eax, 0x95e523e8
mov dword [ebp - 0x6b4], eax
jg 0x4adb36
jmp 0x4adb1a
mov eax, dword [ebp - 0x69c]
sub eax, 0x9451c8ae
mov dword [ebp - 0x6b8], eax
je 0x4ae442
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xa24f517a
mov dword [ebp - 0x6bc], eax
jg 0x4adb6e
jmp 0x4adb52
mov eax, dword [ebp - 0x69c]
sub eax, 0x95e523e9
mov dword [ebp - 0x6c0], eax
je 0x4aed92
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xa61396f1
mov dword [ebp - 0x6c4], eax
jg 0x4adba6
jmp 0x4adb8a
mov eax, dword [ebp - 0x69c]
sub eax, 0xa24f517b
mov dword [ebp - 0x6c8], eax
je 0x4ae7a0
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xbc5516ba
mov dword [ebp - 0x6cc], eax
jg 0x4adbde
jmp 0x4adbc2
mov eax, dword [ebp - 0x69c]
sub eax, 0xa61396f2
mov dword [ebp - 0x6d0], eax
je 0x4aebf6
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xbf38a8b7
mov dword [ebp - 0x6d4], eax
jg 0x4adc16
jmp 0x4adbfa
mov eax, dword [ebp - 0x69c]
sub eax, 0xbc5516bb
mov dword [ebp - 0x6d8], eax
je 0x4aeeb1
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xc62df511
mov dword [ebp - 0x6dc], eax
jg 0x4adc4e
jmp 0x4adc32
mov eax, dword [ebp - 0x69c]
sub eax, 0xbf38a8b8
mov dword [ebp - 0x6e0], eax
je 0x4aea03
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xc87dbb07
mov dword [ebp - 0x6e4], eax
jg 0x4adc86
jmp 0x4adc6a
mov eax, dword [ebp - 0x69c]
sub eax, 0xc62df512
mov dword [ebp - 0x6e8], eax
je 0x4aed25
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xd607f4b9
mov dword [ebp - 0x6ec], eax
jg 0x4adcbe
jmp 0x4adca2
mov eax, dword [ebp - 0x69c]
sub eax, 0xc87dbb08
mov dword [ebp - 0x6f0], eax
je 0x4ae700
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xdcc47451
mov dword [ebp - 0x6f4], eax
jg 0x4adcf6
jmp 0x4adcda
mov eax, dword [ebp - 0x69c]
sub eax, 0xd607f4ba
mov dword [ebp - 0x6f8], eax
je 0x4ae8be
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x6975ac6b
mov dword [ebp - 0x6fc], eax
jg 0x4ae2a6
jmp 0x4add12
mov eax, dword [ebp - 0x69c]
sub eax, 0x68319297
mov dword [ebp - 0x700], eax
jg 0x4ae28a
jmp 0x4add2e
mov eax, dword [ebp - 0x69c]
sub eax, 0x679539e2
mov dword [ebp - 0x704], eax
jg 0x4ae26e
jmp 0x4add4a
mov eax, dword [ebp - 0x69c]
sub eax, 0x5f12fcfe
mov dword [ebp - 0x708], eax
jg 0x4ae252
jmp 0x4add66
mov eax, dword [ebp - 0x69c]
sub eax, 0x5aa52b44
mov dword [ebp - 0x70c], eax
jg 0x4ae236
jmp 0x4add82
mov eax, dword [ebp - 0x69c]
sub eax, 0xdd2260d9
mov dword [ebp - 0x710], eax
jg 0x4addba
jmp 0x4add9e
mov eax, dword [ebp - 0x69c]
sub eax, 0xdcc47452
mov dword [ebp - 0x714], eax
je 0x4ae33c
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xe7190b9b
mov dword [ebp - 0x718], eax
jg 0x4addf2
jmp 0x4addd6
mov eax, dword [ebp - 0x69c]
sub eax, 0xdd2260da
mov dword [ebp - 0x71c], eax
je 0x4af07e
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xe8972646
mov dword [ebp - 0x720], eax
jg 0x4ade2a
jmp 0x4ade0e
mov eax, dword [ebp - 0x69c]
sub eax, 0xe7190b9c
mov dword [ebp - 0x724], eax
je 0x4aef6d
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xf0072518
mov dword [ebp - 0x728], eax
jg 0x4ade62
jmp 0x4ade46
mov eax, dword [ebp - 0x69c]
sub eax, 0xe8972647
mov dword [ebp - 0x72c], eax
je 0x4ae7af
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xf0b93c3d
mov dword [ebp - 0x730], eax
jg 0x4ade9a
jmp 0x4ade7e
mov eax, dword [ebp - 0x69c]
sub eax, 0xf0072519
mov dword [ebp - 0x734], eax
je 0x4aedf7
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xf3f853a9
mov dword [ebp - 0x738], eax
jg 0x4aded2
jmp 0x4adeb6
mov eax, dword [ebp - 0x69c]
sub eax, 0xf0b93c3e
mov dword [ebp - 0x73c], eax
je 0x4ae31b
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x18b6af6
mov dword [ebp - 0x740], eax
jg 0x4adf0a
jmp 0x4adeee
mov eax, dword [ebp - 0x69c]
sub eax, 0xf3f853aa
mov dword [ebp - 0x744], eax
je 0x4ae848
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xf0f94fd
mov dword [ebp - 0x748], eax
jg 0x4adf42
jmp 0x4adf26
mov eax, dword [ebp - 0x69c]
sub eax, 0x18b6af7
mov dword [ebp - 0x74c], eax
je 0x4aec2e
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0xf1deff1
mov dword [ebp - 0x750], eax
jg 0x4adf7a
jmp 0x4adf5e
mov eax, dword [ebp - 0x69c]
sub eax, 0xf0f94fe
mov dword [ebp - 0x754], eax
je 0x4ae4e5
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x106c75ed
mov dword [ebp - 0x758], eax
jg 0x4adfb2
jmp 0x4adf96
mov eax, dword [ebp - 0x69c]
sub eax, 0xf1deff2
mov dword [ebp - 0x75c], eax
je 0x4aee06
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x114b413e
mov dword [ebp - 0x760], eax
jg 0x4adfea
jmp 0x4adfce
mov eax, dword [ebp - 0x69c]
sub eax, 0x106c75ee
mov dword [ebp - 0x764], eax
je 0x4ae981
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x2c9f7777
mov dword [ebp - 0x768], eax
jg 0x4ae022
jmp 0x4ae006
mov eax, dword [ebp - 0x69c]
sub eax, 0x114b413f
mov dword [ebp - 0x76c], eax
je 0x4aef50
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x3308a7a8
mov dword [ebp - 0x770], eax
jg 0x4ae05a
jmp 0x4ae03e
mov eax, dword [ebp - 0x69c]
sub eax, 0x2c9f7778
mov dword [ebp - 0x774], eax
je 0x4aed34
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x3618bf54
mov dword [ebp - 0x778], eax
jg 0x4ae092
jmp 0x4ae076
mov eax, dword [ebp - 0x69c]
sub eax, 0x3308a7a9
mov dword [ebp - 0x77c], eax
je 0x4aee18
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x3a8f9a8e
mov dword [ebp - 0x780], eax
jg 0x4ae0ca
jmp 0x4ae0ae
mov eax, dword [ebp - 0x69c]
sub eax, 0x3618bf55
mov dword [ebp - 0x784], eax
je 0x4af05b
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x40a95834
mov dword [ebp - 0x788], eax
jg 0x4ae102
jmp 0x4ae0e6
mov eax, dword [ebp - 0x69c]
sub eax, 0x3a8f9a8f
mov dword [ebp - 0x78c], eax
je 0x4ae8dc
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x4714b922
mov dword [ebp - 0x790], eax
jg 0x4ae13a
jmp 0x4ae11e
mov eax, dword [ebp - 0x69c]
sub eax, 0x40a95835
mov dword [ebp - 0x794], eax
je 0x4af0fe
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x47ccc287
mov dword [ebp - 0x798], eax
jg 0x4ae172
jmp 0x4ae156
mov eax, dword [ebp - 0x69c]
sub eax, 0x4714b923
mov dword [ebp - 0x79c], eax
je 0x4af0ef
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x4be29c03
mov dword [ebp - 0x7a0], eax
jg 0x4ae1aa
jmp 0x4ae18e
mov eax, dword [ebp - 0x69c]
sub eax, 0x47ccc288
mov dword [ebp - 0x7a4], eax
je 0x4ae3d5
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x569b2c00
mov dword [ebp - 0x7a8], eax
jg 0x4ae1e2
jmp 0x4ae1c6
mov eax, dword [ebp - 0x69c]
sub eax, 0x4be29c04
mov dword [ebp - 0x7ac], eax
je 0x4ae6a2
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x569b2c01
mov dword [ebp - 0x7b0], eax
je 0x4aef5e
jmp 0x4ae1fe
mov eax, dword [ebp - 0x69c]
sub eax, 0x5950ccad
mov dword [ebp - 0x7b4], eax
je 0x4af114
jmp 0x4ae21a
mov eax, dword [ebp - 0x69c]
sub eax, 0x595199f9
mov dword [ebp - 0x7b8], eax
je 0x4aebac
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x5aa52b45
mov dword [ebp - 0x7bc], eax
je 0x4aeb3c
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x5f12fcff
mov dword [ebp - 0x7c0], eax
je 0x4af045
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x679539e3
mov dword [ebp - 0x7c4], eax
je 0x4aeb2d
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x68319298
mov dword [ebp - 0x7c8], eax
je 0x4aec0c
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x6975ac6c
mov dword [ebp - 0x7cc], eax
je 0x4aec8c
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x6b40e340
mov dword [ebp - 0x7d0], eax
je 0x4aeb86
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x6e5f87ec
mov dword [ebp - 0x7d4], eax
je 0x4ae9a5
jmp 0x4ae316
mov eax, dword [ebp - 0x69c]
sub eax, 0x7f29c3fe
mov dword [ebp - 0x7d8], eax
je 0x4ae684
jmp 0x4ae316
jmp 0x4af11e
mov eax, 0x9451c8ae
mov ecx, 0xdcc47452
mov edx, dword [ebp - 0x18]
cmp edx, 0
cmovl eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov eax, 0x569b2c01
mov ecx, 0x47ccc288
mov dl, 1
mov esi, dword [0x5003c0]
mov edi, dword [0x5003bc]
mov ebx, esi
sub ebx, 0xa828950d
sub ebx, 1
add ebx, 0xa828950d
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x7dc], eax
mov al, bl
xor al, 1
xor dl, 1
mov ah, bh
and ah, 1
and dh, dl
mov byte [ebp - 0x7dd], al
and al, 1
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x7dd]
or bh, al
xor bh, 1
or dl, 1
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x7dc]
cmovne esi, ecx
mov dword [ebp - 0x680], esi
jmp 0x4af11e
mov eax, 0x569b2c01
mov ecx, 0x84e6f61a
mov edx, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, edx
add edi, 0xda2ceb41
sub edi, 1
sub edi, 0xda2ceb41
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov dword [ebp - 0x680], 0xf1deff2
jmp 0x4af11e
mov eax, 0xe7190b9c
mov ecx, 0xf0f94fe
mov dl, 1
mov esi, 0
mov edi, dword [0x5003c0]
mov ebx, dword [0x5003bc]
sub esi, 1
mov dword [ebp - 0x7e4], eax
mov eax, edi
add eax, esi
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 1
mov bh, ah
and bh, 1
and dh, dl
mov byte [ebp - 0x7e5], al
mov al, bl
and al, 1
mov byte [ebp - 0x7e6], al
mov al, byte [ebp - 0x7e5]
and al, dl
or bh, dh
mov dh, byte [ebp - 0x7e6]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 1
and ah, dl
or bh, ah
test bh, 1
mov esi, dword [ebp - 0x7e4]
cmovne esi, ecx
mov dword [ebp - 0x680], esi
jmp 0x4af11e
mov eax, 0x104
lea ecx, [ebp - 0x252]
mov dword [esp], ecx
mov dword [esp + 4], 0x104
mov dword [ebp - 0x7ec], eax
call fcn.0040e380
mov dword [ebp - 0x66c], eax
mov eax, dword [0x500360]
call eax
lea ecx, [ebp - 0x48]
mov edx, 0
mov dword [0x4fedac], eax
mov eax, dword [0x4f2740]
movzx eax, word [eax]
mov dword [ebp - 0x678], eax
mov eax, dword [ebp - 0x678]
mov esi, edx
sub esi, eax
mov eax, edx
sub eax, 1
add esi, eax
sub edx, esi
mov eax, dword [0x4f2740]
movzx eax, word [eax + edx*2]
mov dword [ebp - 0x67c], eax
mov eax, dword [ebp - 0x67c]
mov edx, dword [0x4f2740]
mov esi, dword [ebp - 0x678]
shl esi, 1
add edx, esi
add edx, 4
mov esi, dword [0x4f2740]
add esi, 2
mov edi, dword [ebp - 0x678]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.0040c030
lea eax, [ebp - 0x48]
mov ecx, dword [0x4fedac]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004136b0
mov ecx, 0xe7190b9c
mov edx, 0x7f29c3fe
mov bl, 1
cmp eax, 0
setne bh
and bh, 1
mov byte [ebp - 0x12], bh
mov eax, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, eax
add edi, 0x89617a44
sub edi, 1
sub edi, 0x89617a44
imul eax, edi
and eax, 1
cmp eax, 0
sete bh
cmp esi, 0xa
setl al
mov ah, bh
xor ah, 1
mov byte [ebp - 0x7ed], al
xor al, 1
xor bl, 1
mov byte [ebp - 0x7ee], al
mov al, ah
and al, 1
and bh, bl
mov byte [ebp - 0x7ef], al
mov al, byte [ebp - 0x7ee]
and al, 1
mov byte [ebp - 0x7f0], al
mov al, byte [ebp - 0x7ed]
and al, bl
mov byte [ebp - 0x7f1], al
mov al, byte [ebp - 0x7ef]
or al, bh
mov bh, byte [ebp - 0x7f0]
mov byte [ebp - 0x7f2], al
mov al, byte [ebp - 0x7f1]
or bh, al
mov al, byte [ebp - 0x7f2]
xor al, bh
mov bh, byte [ebp - 0x7ee]
or ah, bh
xor ah, 1
or bl, 1
and ah, bl
or al, ah
test al, 1
cmovne ecx, edx
mov dword [ebp - 0x680], ecx
jmp 0x4af11e
mov eax, 0xe8972647
mov ecx, 0x4be29c04
mov dl, byte [ebp - 0x12]
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov eax, 0x5f12fcff
mov ecx, 0xc87dbb08
mov edx, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, edx
add edi, 0xcfb313d0
sub edi, 1
sub edi, 0xcfb313d0
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov eax, 0x5f12fcff
mov ecx, 0xa24f517b
mov dl, 1
mov dword [ebp - 0x1c], 0xffffffff
mov esi, dword [0x5003c0]
mov edi, dword [0x5003bc]
mov ebx, esi
add ebx, 0x75c3e44f
sub ebx, 1
sub ebx, 0x75c3e44f
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x7f8], eax
mov al, bl
xor al, 1
xor dl, 0
mov ah, bh
and ah, 0
and dh, dl
mov byte [ebp - 0x7f9], al
and al, 0
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x7f9]
or bh, al
xor bh, 1
or dl, 0
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x7f8]
cmovne esi, ecx
mov dword [ebp - 0x680], esi
jmp 0x4af11e
mov dword [ebp - 0x680], 0x3308a7a9
jmp 0x4af11e
mov eax, 0x3618bf55
mov ecx, 0xf3f853aa
mov dl, 1
mov esi, dword [0x5003c0]
mov edi, dword [0x5003bc]
mov ebx, esi
add ebx, 0x431c485f
sub ebx, 1
sub ebx, 0x431c485f
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x800], eax
mov al, bl
xor al, 1
xor dl, 1
mov ah, bh
and ah, 1
and dh, dl
mov byte [ebp - 0x801], al
and al, 1
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x801]
or bh, al
xor bh, 1
or dl, 1
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x800]
cmovne esi, ecx
mov dword [ebp - 0x680], esi
jmp 0x4af11e
lea eax, [ebp - 0x674]
mov dword [esp], eax
call fcn.004a8c70
mov ecx, 0x3618bf55
mov edx, 0xd607f4ba
cmp eax, 0
setne bl
and bl, 1
mov byte [ebp - 0x11], bl
mov eax, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, eax
add edi, 0x62766996
sub edi, 1
sub edi, 0x62766996
imul eax, edi
and eax, 1
cmp eax, 0
sete bl
cmp esi, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
cmovne ecx, edx
mov dword [ebp - 0x680], ecx
jmp 0x4af11e
mov eax, 0x68319298
mov ecx, 0x3a8f9a8f
mov dl, byte [ebp - 0x11]
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov eax, 0x104
lea ecx, [ebp - 0x45c]
lea edx, [ebp - 0x252]
mov esi, dword [ebp - 0x66c]
mov dword [esp], ecx
mov dword [esp + 4], 0x104
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [ebp - 0x808], eax
call fcn.0040eb60
lea ecx, [ebp - 0x45c]
mov dword [ebp - 0x670], eax
mov eax, dword [ebp - 0x670]
add eax, 0x919f759b
sub eax, 4
sub eax, 0x919f759b
mov word [ebp + eax*2 - 0x45c], 0
mov eax, dword [0x50035c]
mov edx, esp
mov dword [edx + 8], 0
mov dword [edx + 0xc], ecx
mov dword [edx + 4], 0
mov dword [edx], 0
call eax
sub esp, 0x10
mov ecx, 0x595199f9
mov edx, 0x106c75ee
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
cmovne ecx, edx
mov dword [ebp - 0x680], ecx
jmp 0x4af11e
mov eax, dword [sym.imp.KERNEL32.dll_GetLastError]
call eax
mov ecx, 0x5aa52b45
mov edx, 0x6e5f87ec
cmp eax, 0xb7
cmove ecx, edx
mov dword [ebp - 0x680], ecx
jmp 0x4af11e
mov eax, 0xdd2260da
mov ecx, 0xbf38a8b8
mov edx, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, edx
sub edi, 0x6d9bc765
sub edi, 1
add edi, 0x6d9bc765
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
lea eax, [ebp - 0x45c]
mov dword [esp], eax
call fcn.0040f980
mov ecx, 0x104
lea edx, [ebp - 0x666]
lea esi, [ebp - 0x45c]
mov dword [esp], edx
mov dword [esp + 4], 0x104
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [ebp - 0x80c], ecx
call fcn.00412930
lea eax, [ebp - 0x666]
mov dword [esp], eax
call fcn.004ac5a0
mov eax, dword [0x50036c]
mov ecx, dword [ebp - 0x20]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov ecx, 0xdd2260da
mov edx, 0x679539e3
mov bl, 1
mov esi, dword [0x5003c0]
mov edi, dword [0x5003bc]
mov dword [ebp - 0x810], eax
mov eax, esi
sub eax, 0x7a131863
sub eax, 1
add eax, 0x7a131863
imul esi, eax
and esi, 1
cmp esi, 0
sete bh
cmp edi, 0xa
setl al
mov ah, bh
xor ah, 1
mov byte [ebp - 0x811], al
xor al, 1
xor bl, 0
mov byte [ebp - 0x812], al
mov al, ah
and al, 0
and bh, bl
mov byte [ebp - 0x813], al
mov al, byte [ebp - 0x812]
and al, 0
mov byte [ebp - 0x814], al
mov al, byte [ebp - 0x811]
and al, bl
mov byte [ebp - 0x815], al
mov al, byte [ebp - 0x813]
or al, bh
mov bh, byte [ebp - 0x814]
mov byte [ebp - 0x816], al
mov al, byte [ebp - 0x815]
or bh, al
mov al, byte [ebp - 0x816]
xor al, bh
mov bh, byte [ebp - 0x812]
or ah, bh
xor ah, 1
or bl, 0
and ah, bl
or al, ah
test al, 1
cmovne ecx, edx
mov dword [ebp - 0x680], ecx
jmp 0x4af11e
mov dword [ebp - 0x680], 0x6b40e340
jmp 0x4af11e
lea eax, [0x4fedb0]
mov ecx, 0x104
lea edx, [ebp - 0x252]
mov esi, dword [ebp - 0x66c]
mov dword [esp], eax
mov dword [esp + 4], 0x104
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [ebp - 0x81c], ecx
call fcn.0040e770
mov dword [ebp - 0x680], 0x6b40e340
mov dword [ebp - 0x820], eax
jmp 0x4af11e
mov eax, dword [ebp - 0x20]
mov ecx, esp
mov dword [ecx], eax
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
call eax
sub esp, 4
mov dword [ebp - 0x680], 0xa61396f2
mov dword [ebp - 0x824], eax
jmp 0x4af11e
lea eax, [0x4fedb0]
mov ecx, 0x104
lea edx, [ebp - 0x252]
mov esi, dword [ebp - 0x66c]
mov dword [esp], eax
mov dword [esp + 4], 0x104
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [ebp - 0x828], ecx
call fcn.0040e770
mov dword [ebp - 0x680], 0xa61396f2
mov dword [ebp - 0x82c], eax
jmp 0x4af11e
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x680], 0x3308a7a9
jmp 0x4af11e
mov eax, 0x2c9f7778
mov ecx, 0x18b6af7
cmp dword [ebp - 0x674], 6
cmovb eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov eax, 0x4714b923
mov ecx, 0x6975ac6c
mov edx, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, edx
sub edi, 0xb9585cb7
sub edi, 1
add edi, 0xb9585cb7
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov eax, 0x4714b923
mov ecx, 0xc62df512
mov dl, 1
mov esi, dword [0x5003c0]
mov edi, dword [0x5003bc]
mov ebx, esi
sub ebx, 0x94e20868
sub ebx, 1
add ebx, 0x94e20868
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x830], eax
mov al, bl
xor al, 1
xor dl, 0
mov ah, bh
and ah, 0
and dh, dl
mov byte [ebp - 0x831], al
and al, 0
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x831]
or bh, al
xor bh, 1
or dl, 0
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x830]
cmovne esi, ecx
mov dword [ebp - 0x680], esi
jmp 0x4af11e
mov dword [ebp - 0x680], 0xf1deff2
jmp 0x4af11e
mov eax, 0x40a95835
mov ecx, 0x95e523e9
mov edx, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, edx
add edi, 0x60e4b62d
sub edi, 1
sub edi, 0x60e4b62d
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov eax, 0x40a95835
mov ecx, 0xf0072519
mov dword [ebp - 0x1c], 0
mov edx, dword [0x5003c0]
mov esi, dword [0x5003bc]
mov edi, edx
sub edi, 0xab7e58c2
sub edi, 1
add edi, 0xab7e58c2
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x680], eax
jmp 0x4af11e
mov dword [ebp - 0x680], 0x3308a7a9
jmp 0x4af11e
mov eax, esp
mov dword [eax], 0
mov eax, dword [sym.imp.KERNEL32.dll_ExitProcess]
call eax
sub esp, 4
mov eax, 0x5950ccad
mov ecx, 0xbc5516bb
mov dl, 1
mov esi, dword [0x5003c0]
mov edi, dword [0x5003bc]
mov ebx, esi
add ebx, 0xe86ceecb
sub ebx, 1
sub ebx, 0xe86ceecb
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x838], eax
mov al, bl
xor al, 1
xor dl, 1
mov ah, bh
and ah, 1
and dh, dl
mov byte [ebp - 0x839], al
and al, 1
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x839]
or bh, al
xor bh, 1
or dl, 1
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x838]
cmovne esi, ecx
mov dword [ebp - 0x680], esi
jmp 0x4af11e
mov eax, 0x5950ccad
mov ecx, 0x114b413f
mov dl, 1
mov esi, dword [ebp - 0x1c]
mov dword [ebp - 0x10], esi
mov esi, dword [0x5003c0]
mov edi, dword [0x5003bc]
mov ebx, esi
sub ebx, 0x8cd62493
sub ebx, 1
add ebx, 0x8cd62493
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x840], eax
mov al, bl
xor al, 1
xor dl, 1
mov ah, bh
and ah, 1
and dh, dl
mov byte [ebp - 0x841], al
and al, 1
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x841]
or bh, al
xor bh, 1
or dl, 1
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x840]
cmovne esi, ecx
mov dword [ebp - 0x680], esi
jmp 0x4af11e
mov eax, dword [ebp - 0x10]
add esp, 0x860
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [ebp - 0x680], 0x47ccc288
jmp 0x4af11e
mov eax, 0x104
lea ecx, [ebp - 0x252]
mov dword [esp], ecx
mov dword [esp + 4], 0x104
mov dword [ebp - 0x848], eax
call fcn.0040e380
mov dword [ebp - 0x66c], eax
mov eax, dword [0x500360]
call eax
lea ecx, [ebp - 0x48]
mov edx, 0
mov dword [0x4fedac], eax
mov eax, dword [0x4f2740]
movzx eax, word [eax]
mov dword [ebp - 0x678], eax
mov eax, dword [ebp - 0x678]
sub edx, 1
sub eax, edx
mov edx, dword [0x4f2740]
movzx eax, word [edx + eax*2]
mov dword [ebp - 0x67c], eax
mov eax, dword [ebp - 0x67c]
mov edx, dword [0x4f2740]
mov esi, dword [ebp - 0x678]
shl esi, 1
add edx, esi
add edx, 4
mov esi, dword [0x4f2740]
add esi, 2
mov edi, dword [ebp - 0x678]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.0040c030
lea eax, [ebp - 0x48]
mov ecx, dword [0x4fedac]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004136b0
mov dword [ebp - 0x680], 0xf0f94fe
mov dword [ebp - 0x84c], eax
jmp 0x4af11e
mov dword [ebp - 0x1c], 0xffffffff
mov dword [ebp - 0x680], 0xc87dbb08
jmp 0x4af11e
lea eax, [ebp - 0x674]
mov dword [esp], eax
call fcn.004a8c70
mov dword [ebp - 0x680], 0xf3f853aa
mov dword [ebp - 0x850], eax
jmp 0x4af11e
lea eax, [ebp - 0x45c]
mov dword [esp], eax
call fcn.0040f980
mov ecx, 0x104
lea edx, [ebp - 0x666]
lea esi, [ebp - 0x45c]
mov dword [esp], edx
mov dword [esp + 4], 0x104
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [ebp - 0x854], ecx
call fcn.00412930
lea eax, [ebp - 0x666]
mov dword [esp], eax
call fcn.004ac5a0
mov eax, dword [0x50036c]
mov ecx, dword [ebp - 0x20]
mov edx, esp
mov dword [edx], ecx
call eax
sub esp, 4
mov dword [ebp - 0x680], 0xbf38a8b8
mov dword [ebp - 0x858], eax
jmp 0x4af11e
mov dword [ebp - 0x680], 0x6975ac6c
jmp 0x4af11e
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x680], 0x95e523e9
jmp 0x4af11e
mov dword [ebp - 0x680], 0xbc5516bb
jmp 0x4ada69