Function at 0x1003dbe0
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push 0xffffffffffffffff
push 0x1015a1af
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa8
mov eax, 0x28c
mov dword [esp + 0x9c], ecx
cdq
idiv dword [0x1018c540]
mov eax, dword [0x1018c53c]
push ebx
push ebp
push esi
push edi
mov cl, byte [edx + eax]
mov eax, 0xff53
mov word [esp + 0xb0], ax
mov word [esp + 0xb2], ax
mov word [esp + 0xb4], ax
mov al, byte [0x10198034]
test al, 1
mov byte [esp + 0xa8], cl
jne 0x1003dc71
mov bl, al
lea edx, [esp + 0xb0]
or bl, 1
push edx
mov ecx, 0x10198038
mov byte [0x10198034], bl
call fcn.10044320
push 0x10043a40
call fcn.1013c36b
add esp, 4
mov al, byte [esp + 0x13]
mov esi, dword [0x10198038]
push 0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1c], al
call fcn.1000bc70
push esi
call fcn.1013c2c2
add esp, 4
lea ecx, [esp + 0x18]
push eax
push esi
call fcn.1000bf40
mov edx, dword [esp + 0xc8]
lea ecx, [esp + 0x18]
push ecx
lea eax, [esp + 0x70]
push edx
push eax
mov dword [esp + 0xcc], 0
call fcn.10021fb0
add esp, 0xc
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov eax, dword [esp + 0x70]
mov bl, byte [0x1018c566]
test eax, eax
mov byte [0x1018c565], bl
je 0x1003dcfc
mov ecx, dword [esp + 0x74]
sub ecx, eax
and ecx, 0xfffffff0
cmp ecx, 0x20
je 0x1003de11
mov ecx, dword [0x1018c540]
mov eax, 0x32e
cdq
idiv ecx
mov edi, dword [0x1018c53c]
mov esi, dword [esp + 0xa8]
push esi
mov eax, 0x190
mov dl, byte [edx + edi]
push edx
cdq
idiv ecx
mov al, byte [edx + edi]
imul bl
push eax
call fcn.10039200
mov edi, dword [0x1018c540]
mov byte [0x1018c566], al
mov eax, 0x306
mov cl, byte [0x1018c569]
cdq
idiv edi
mov ebx, dword [0x1018c53c]
add esp, 0xc
inc cl
mov byte [0x1018c569], cl
mov al, byte [edx + ebx]
push eax
mov eax, 0x19e
cdq
idiv edi
mov al, 0xa8
sub al, cl
mov dl, byte [edx + ebx]
push edx
push eax
call fcn.100391a0
push eax
push 0x26
call fcn.1003c020
add esp, 8
push eax
call fcn.100398e0
mov cl, byte [esp + 0xb8]
mov bl, al
mov al, byte [0x1018c565]
add esp, 0x10
sub bl, cl
inc al
mov byte [0x1018c565], al
call fcn.100391a0
push eax
mov eax, 0x3f
cdq
idiv dword [0x1018c540]
mov ecx, dword [0x1018c53c]
push ebx
mov dl, byte [edx + ecx]
push edx
push esi
push 0x4e
push 0xfffffffffffffffc
call fcn.100398e0
add esp, 0x10
push eax
call fcn.10039200
mov eax, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x1003de01
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003dded
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
xor al, al
jmp 0x10042e19
mov cl, byte [0x1018c569]
mov ebp, eax
mov byte [0x1018c566], cl
mov cl, byte [esp + 0xa8]
lea edi, [eax + 0x10]
mov al, cl
dec cl
push eax
mov dword [esp + 0xb4], ebp
mov dword [esp + 0x18], edi
mov byte [esp + 0xac], cl
call fcn.100391c0
mov byte [0x1018c565], al
mov eax, 0x27
mov word [esp + 0x1e], ax
mov word [esp + 0x30], ax
mov al, byte [0x10197d94]
add esp, 4
mov ebx, 0x31
mov word [esp + 0x18], 0x28
test al, 1
mov word [esp + 0x1c], 0x29
mov word [esp + 0x1e], bx
mov word [esp + 0x20], 0x3b
mov word [esp + 0x22], 0x36
mov word [esp + 0x24], 0x25
mov word [esp + 0x26], 0x2a
mov word [esp + 0x28], 0x35
mov word [esp + 0x2a], 0x33
mov word [esp + 0x2e], 0x2f
mov word [esp + 0x30], 0x34
mov word [esp + 0x32], 0x39
jne 0x1003dedf
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197d98
mov byte [0x10197d94], al
call fcn.10044c50
push 0x10042e40
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197d98]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebp
push eax
mov eax, dword [ebp + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003e059
mov al, byte [0x10197d9c]
mov byte [0x1018c564], 0xd0
test al, 1
mov word [esp + 0x7c], 0x32
mov word [esp + 0x7e], bx
mov word [esp + 0x80], 0x33
mov word [esp + 0x82], 0x3b
mov word [esp + 0x84], 0x45
mov word [esp + 0x86], 0x40
mov word [esp + 0x88], 0x2f
mov word [esp + 0x8a], 0x34
mov word [esp + 0x8c], 0x3f
mov word [esp + 0x8e], 0x3d
mov word [esp + 0x90], bx
mov word [esp + 0x92], 0x39
mov word [esp + 0x94], 0x3e
mov word [esp + 0x96], 0x43
jne 0x1003dfbe
mov bl, al
lea ecx, [esp + 0x7c]
or bl, 1
push ecx
mov ecx, 0x10197da0
mov byte [0x10197d9c], bl
call fcn.100443a0
push 0x10043a90
call fcn.1013c36b
add esp, 4
mov dl, byte [esp + 0x13]
mov esi, dword [0x10197da0]
push 0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1c], dl
call fcn.1000bc70
push esi
call fcn.1013c2c2
add esp, 4
lea ecx, [esp + 0x18]
push eax
push esi
call fcn.1000bf40
mov ecx, dword [0x10191a54]
lea eax, [esp + 0x18]
push edi
push eax
mov byte [esp + 0xc8], 3
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x1003e04b
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003e037
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x81
mov esi, 0x80
mov word [esp + 0x1e], ax
mov word [esp + 0x28], ax
mov al, byte [0x10197da4]
mov ebx, 0x85
test al, 1
mov word [esp + 0x18], si
mov word [esp + 0x1a], bx
mov word [esp + 0x1c], 0x90
mov word [esp + 0x20], 0xbb
mov word [esp + 0x22], bx
mov word [esp + 0x24], si
mov word [esp + 0x26], si
mov word [esp + 0x2a], si
jne 0x1003e0cf
lea ecx, [esp + 0x18]
push 0xe4
or al, 1
push ecx
mov ecx, 0x10197da8
mov byte [0x10197da4], al
call fcn.100158d0
push 0x10042e50
call fcn.1013c36b
add esp, 4
mov edi, dword [0x10197da8]
push edi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push edi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003e26c
mov eax, 0x8c
mov ecx, 0x84
mov word [esp + 0x84], ax
mov word [esp + 0x98], ax
mov al, byte [0x1019803c]
mov ebx, 0x9e
mov edx, 0x99
mov edi, 0x81
test al, 1
mov word [esp + 0x7c], cx
mov word [esp + 0x7e], 0x83
mov word [esp + 0x80], bx
mov word [esp + 0x82], dx
mov word [esp + 0x86], di
mov word [esp + 0x88], di
mov word [esp + 0x8a], 0xb2
mov word [esp + 0x8c], dx
mov word [esp + 0x8e], cx
mov word [esp + 0x90], si
mov word [esp + 0x92], 0x88
mov word [esp + 0x94], bx
mov word [esp + 0x96], dx
mov word [esp + 0x9a], si
mov word [esp + 0x9c], 0x9d
jne 0x1003e1cd
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xed
push eax
mov ecx, 0x10198040
mov byte [0x1019803c], bl
call fcn.1000f240
push 0x10043bc0
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x13]
mov esi, dword [0x10198040]
mov byte [esp + 0x18], cl
push 0
lea ecx, [esp + 0x1c]
call fcn.1000bc70
push esi
call fcn.1013c2c2
add esp, 4
lea ecx, [esp + 0x18]
push eax
push esi
call fcn.1000bf40
mov edx, dword [esp + 0x14]
mov ecx, dword [0x10191a54]
lea eax, [esp + 0x18]
push edx
push eax
mov byte [esp + 0xc8], 4
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x1003e25e
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003e24a
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov al, byte [0x10197dac]
mov word [esp + 0x18], 0x94
test al, 1
mov word [esp + 0x1a], 0x98
mov word [esp + 0x1c], 0x82
mov word [esp + 0x1e], 0x99
mov word [esp + 0x20], 0x83
mov word [esp + 0x22], bx
mov word [esp + 0x24], 0x8e
mov word [esp + 0x26], 0xa8
mov word [esp + 0x28], 0x9e
mov word [esp + 0x2a], 0x93
jne 0x1003e2e5
mov bl, al
lea ecx, [esp + 0x18]
push 0xf7
or bl, 1
push ecx
mov ecx, 0x10197db0
mov byte [0x10197dac], bl
call fcn.100158d0
push 0x10042e60
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197db0]
push esi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003e447
mov al, byte [0x10197db4]
mov word [esp + 0x18], 0xffc8
test al, 1
mov word [esp + 0x1a], 0xffd4
mov word [esp + 0x1c], 0xffda
mov word [esp + 0x1e], 0xffd3
mov word [esp + 0x20], 0xffd9
mov word [esp + 0x22], 0xffd7
mov word [esp + 0x24], 0xffde
mov word [esp + 0x26], 0xffc4
mov word [esp + 0x28], 0xffce
mov word [esp + 0x2a], 0xffc9
jne 0x1003e381
mov bl, al
lea eax, [esp + 0x18]
or bl, 1
push eax
mov ecx, 0x10197db8
mov byte [0x10197db4], bl
call fcn.100445a0
push 0x10043bb0
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x13]
mov edi, dword [0x10197db8]
mov byte [esp + 0x7c], cl
push 0
lea ecx, [esp + 0x80]
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x7c]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003e3d4
mov edx, dword [esp + 0x80]
push esi
push edi
push edx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x7c]
push esi
call fcn.1000bff0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x7c]
push eax
push ecx
mov ecx, dword [0x10191a54]
mov byte [esp + 0xc8], 5
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x80]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003e439
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003e425
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xffbe
mov word [esp + 0x18], 0xffc0
mov word [esp + 0x1a], ax
mov word [esp + 0x24], ax
mov al, byte [0x10197dbc]
mov word [esp + 0x1c], 0xffbb
test al, 1
mov word [esp + 0x1e], 0xffca
mov word [esp + 0x20], 0xffd1
mov word [esp + 0x22], 0xffc9
mov word [esp + 0x26], 0xffc1
mov word [esp + 0x28], 0xffce
jne 0x1003e4b7
mov bl, al
lea edx, [esp + 0x18]
or bl, 1
push edx
mov ecx, 0x10197dc0
mov byte [0x10197dbc], bl
call fcn.10044cd0
push 0x10042e70
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197dc0]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebp
push eax
mov eax, dword [ebp + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003e634
mov ecx, dword [esp + 0x14]
push 0xa
push ecx
mov byte [0x1018c567], 0x58
call fcn.10021b70
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x1003e5fb
mov al, byte [0x10198004]
mov word [esp + 0x18], 0x54
test al, 1
mov word [esp + 0x1a], 6
mov word [esp + 0x1c], 0x3d
mov word [esp + 0x1e], 0x31
mov word [esp + 0x20], 0x1b
mov word [esp + 0x22], 0x18
mov word [esp + 0x24], 0xf
mov word [esp + 0x26], 7
mov word [esp + 0x28], 0x17
jne 0x1003e568
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10198008
mov byte [0x10198004], al
call fcn.100440f0
push 0x10043ba0
call fcn.1013c36b
add esp, 4
mov al, byte [esp + 0x13]
mov edi, dword [0x10198008]
push 0
lea ecx, [esp + 0x80]
mov byte [esp + 0x80], al
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x7c]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003e5be
mov ecx, dword [esp + 0x80]
push esi
push edi
push ecx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x7c]
push esi
call fcn.1000bff0
mov ecx, dword [0x10191a54]
lea edx, [esp + 0x7c]
push ebx
push edx
mov byte [esp + 0xc8], 6
call fcn.10058e60
mov ecx, eax
call fcn.10067f30
push 1
lea ecx, [esp + 0x80]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov byte [0x1018c569], 0xc4
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003e626
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003e612
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xfff7
mov ecx, 0xfffc
mov word [esp + 0x18], ax
mov word [esp + 0x24], ax
mov al, byte [0x10197dc4]
mov word [esp + 0x1a], cx
mov word [esp + 0x1c], cx
mov ecx, 0xffff
mov ebx, 0xfff5
mov word [esp + 0x1e], cx
test al, 1
mov word [esp + 0x20], 2
mov word [esp + 0x22], cx
mov word [esp + 0x26], 0xa
mov word [esp + 0x28], 0xfffb
mov word [esp + 0x2a], bx
mov word [esp + 0x2c], cx
mov word [esp + 0x2e], 0xfffa
jne 0x1003e6b8
or al, 1
mov ecx, 0x10197dc8
mov byte [0x10197dc4], al
lea eax, [esp + 0x18]
push eax
call fcn.10044d50
push 0x10042e80
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197dc8]
push esi
call fcn.1013c2c2
mov ecx, dword [ebp + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebp
call fcn.1000d2b0
test eax, eax
jne 0x1003e878
mov eax, 0xeb
mov edx, 0xec
mov word [esp + 0x18], ax
mov word [esp + 0x30], ax
mov word [esp + 0x34], ax
mov word [esp + 0x3e], ax
mov al, byte [0x10197dcc]
mov word [esp + 0x1a], dx
mov word [esp + 0x22], dx
mov esi, 0xf6
mov ecx, 0xe7
mov ebp, 0xe3
mov edx, 0xee
mov ebx, 0xdd
mov edi, 0xe4
mov word [esp + 0x1c], si
test al, 1
mov word [esp + 0x1e], cx
mov word [esp + 0x20], 0xf0
mov word [esp + 0x24], bp
mov word [esp + 0x26], dx
mov word [esp + 0x28], bx
mov word [esp + 0x2a], bp
mov word [esp + 0x2c], di
mov word [esp + 0x2e], di
mov word [esp + 0x32], dx
mov word [esp + 0x36], bp
mov word [esp + 0x38], si
mov word [esp + 0x3a], cx
mov word [esp + 0x3c], bx
mov word [esp + 0x40], 0xe6
jne 0x1003e7a8
mov bl, al
lea edx, [esp + 0x18]
or bl, 1
push 0x82
push edx
mov ecx, 0x10197dd0
mov byte [0x10197dcc], bl
call fcn.10015640
push 0x10043b70
call fcn.1013c36b
add esp, 4
mov al, byte [esp + 0x13]
mov edi, dword [0x10197dd0]
push 0
lea ecx, [esp + 0x80]
mov byte [esp + 0x80], al
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x7c]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003e7fe
mov ecx, dword [esp + 0x80]
push esi
push edi
push ecx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x7c]
push esi
call fcn.1000bff0
mov edx, dword [esp + 0x14]
mov ecx, dword [0x10191a54]
lea eax, [esp + 0x7c]
push edx
push eax
mov byte [esp + 0xc8], 7
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x80]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
mov byte [0x1018c567], 0x1b
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003e86a
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003e856
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xffe2
mov ecx, 0xffdd
mov word [esp + 0x1a], ax
mov word [esp + 0x1c], ax
mov eax, 0xffe5
mov edi, 0xffe8
mov word [esp + 0x1e], ax
mov word [esp + 0x22], ax
mov al, byte [0x10197dd4]
mov word [esp + 0x18], cx
test al, 1
mov word [esp + 0x20], di
mov word [esp + 0x24], cx
mov word [esp + 0x26], 0xfff0
mov word [esp + 0x28], 0xffe1
jne 0x1003e8e9
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197dd8
mov byte [0x10197dd4], al
call fcn.10044dd0
push 0x10042e90
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197dd8]
push esi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003ea51
mov eax, 0xffea
mov ecx, 0xffef
mov word [esp + 0x18], ax
mov word [esp + 0x22], ax
mov al, byte [0x10197ddc]
mov word [esp + 0x1a], cx
mov word [esp + 0x1c], cx
mov ecx, 0xfff2
test al, 1
mov word [esp + 0x1e], cx
mov word [esp + 0x20], bx
mov word [esp + 0x24], 0xfffd
mov word [esp + 0x26], 0xffee
mov word [esp + 0x28], di
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], 0xffed
jne 0x1003e98b
mov bl, al
lea eax, [esp + 0x18]
or bl, 1
push eax
mov ecx, 0x10197de0
mov byte [0x10197ddc], bl
call fcn.100444a0
push 0x10043ad0
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x13]
mov edi, dword [0x10197de0]
mov byte [esp + 0x7c], cl
push 0
lea ecx, [esp + 0x80]
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x7c]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003e9de
mov edx, dword [esp + 0x80]
push esi
push edi
push edx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x7c]
push esi
call fcn.1000bff0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x7c]
push eax
push ecx
mov ecx, dword [0x10191a54]
mov byte [esp + 0xc8], 8
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x80]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003ea43
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003ea2f
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov al, byte [0x10197de4]
mov word [esp + 0x7c], 0xffdb
test al, 1
mov word [esp + 0x7e], 0xffd8
mov word [esp + 0x80], 0xffeb
mov word [esp + 0x82], 0xffdc
jne 0x1003eaa3
mov bl, al
lea edx, [esp + 0x7c]
or bl, 1
push edx
mov ecx, 0x10197de8
mov byte [0x10197de4], bl
call fcn.10044e50
push 0x10042ea0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197de8]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebp
push eax
mov eax, dword [ebp + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003ebf1
mov ecx, dword [esp + 0xa8]
push ecx
call fcn.100391c0
mov al, byte [0x10197fa4]
add esp, 4
test al, 1
mov word [esp + 0x7c], 0xfff0
mov word [esp + 0x7e], 0xffed
mov word [esp + 0x80], 0
mov word [esp + 0x82], 0xfff1
jne 0x1003eb2b
mov bl, al
lea edx, [esp + 0x7c]
or bl, 1
push edx
mov ecx, 0x10197fa8
mov byte [0x10197fa4], bl
call fcn.10044420
push 0x10043aa0
call fcn.1013c36b
add esp, 4
mov al, byte [esp + 0x13]
mov edi, dword [0x10197fa8]
push 0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1c], al
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x18]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003eb78
mov ecx, dword [esp + 0x1c]
push esi
push edi
push ecx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x18]
push esi
call fcn.1000bff0
mov edx, dword [esp + 0x14]
mov ecx, dword [0x10191a54]
lea eax, [esp + 0x18]
push edx
push eax
mov byte [esp + 0xc8], 9
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
mov byte [0x1018c564], 0x27
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x1003ebe3
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003ebcf
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xd2
mov edx, 0xd6
mov word [esp + 0x1e], ax
mov word [esp + 0x26], ax
mov word [esp + 0x2a], ax
mov word [esp + 0x30], ax
mov al, byte [0x10197dec]
mov ecx, 0xdf
test al, 1
mov word [esp + 0x18], 0xc6
mov word [esp + 0x1a], 0xc3
mov word [esp + 0x1c], 0xd7
mov word [esp + 0x20], 0xc7
mov word [esp + 0x22], dx
mov word [esp + 0x24], 0xec
mov word [esp + 0x28], 0xc5
mov word [esp + 0x2c], 0xda
mov word [esp + 0x2e], cx
mov word [esp + 0x32], 0xd1
mov word [esp + 0x34], cx
mov word [esp + 0x36], dx
jne 0x1003ec95
mov bl, al
lea ecx, [esp + 0x18]
push 0xb3
or bl, 1
push ecx
mov ecx, 0x10197df0
mov byte [0x10197dec], bl
call fcn.10043d50
push 0x10042eb0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197df0]
push esi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003ed0e
mov al, byte [0x1018c569]
mov byte [0x1018c564], al
dec al
mov byte [0x1018c569], al
mov eax, dword [esp + 0x14]
push eax
call fcn.10079660
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
add esp, 4
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003ed00
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003ecec
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x1c
mov edi, 0xf
mov word [esp + 0x18], ax
mov word [esp + 0x1e], ax
mov al, byte [0x10197df4]
mov ebx, 0x17
test al, 1
mov word [esp + 0x1a], di
mov word [esp + 0x1c], 0x10
mov word [esp + 0x20], di
mov word [esp + 0x22], 0x1d
mov word [esp + 0x24], 0x12
mov word [esp + 0x26], 9
mov word [esp + 0x28], 0x1e
mov word [esp + 0x2a], 0x13
mov word [esp + 0x2c], bx
mov word [esp + 0x2e], di
jne 0x1003ed91
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197df8
mov byte [0x10197df4], al
call fcn.10044ed0
push 0x10042ec0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197df8]
push esi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003ef33
mov cl, byte [0x1018c565]
mov eax, 0xffea
dec cl
mov word [esp + 0x7c], ax
mov word [esp + 0x82], ax
mov al, byte [0x10197dfc]
mov byte [0x1018c565], cl
mov ecx, 0xffdd
test al, 1
mov word [esp + 0x7e], cx
mov word [esp + 0x80], 0xffde
mov word [esp + 0x84], cx
mov word [esp + 0x86], 0xffeb
mov word [esp + 0x88], 0xffe0
mov word [esp + 0x8a], 0xffd7
mov word [esp + 0x8c], 0xffec
mov word [esp + 0x8e], 0xffe1
mov word [esp + 0x90], 0xffe5
mov word [esp + 0x92], cx
jne 0x1003ee67
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push eax
mov ecx, 0x10197e00
mov byte [0x10197dfc], bl
call fcn.100446b0
push 0x10043c90
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x13]
mov edi, dword [0x10197e00]
mov byte [esp + 0x18], cl
push 0
lea ecx, [esp + 0x1c]
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x18]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003eeb4
mov edx, dword [esp + 0x1c]
push esi
push edi
push edx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x18]
push esi
call fcn.1000bff0
mov eax, dword [esp + 0x14]
mov esi, dword [0x10191a54]
push 0xa
push eax
mov byte [esp + 0xc8], 0xa
call fcn.10021b70
add esp, 8
lea ecx, [esp + 0x18]
push eax
push ecx
mov ecx, esi
call fcn.10058e60
mov ecx, eax
call fcn.10067f30
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x1003ef25
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003ef11
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xb4
mov ecx, 0xb9
mov word [esp + 0x1a], ax
mov word [esp + 0x22], ax
mov word [esp + 0x2a], ax
mov al, byte [0x10197e04]
test al, 1
mov word [esp + 0x18], 0xbf
mov word [esp + 0x1c], 0xb7
mov word [esp + 0x1e], 0xba
mov word [esp + 0x20], cx
mov word [esp + 0x24], 0x87
mov word [esp + 0x26], 0xbc
mov word [esp + 0x28], 0xbd
mov word [esp + 0x2c], cx
mov word [esp + 0x2e], 0xa1
jne 0x1003efbc
mov cl, al
lea edx, [esp + 0x18]
or cl, 1
push 0xd8
mov byte [0x10197e04], cl
push edx
mov ecx, 0x10197e08
call fcn.10044070
push 0x10042ed0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e08]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebp
push eax
mov eax, dword [ebp + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003f15f
call fcn.100391a0
mov eax, 3
mov ecx, 0xd
mov word [esp + 0x80], ax
mov word [esp + 0x84], ax
mov al, byte [0x10197e0c]
mov word [esp + 0x7c], 0x57
test al, 1
mov word [esp + 0x7e], 0xb
mov word [esp + 0x82], cx
mov word [esp + 0x86], cx
mov word [esp + 0x88], 0x33
mov word [esp + 0x8a], 0x3b
mov word [esp + 0x8c], 1
mov word [esp + 0x8e], 9
mov word [esp + 0x90], cx
mov word [esp + 0x92], 0x18
jne 0x1003f089
mov bl, al
lea ecx, [esp + 0x7c]
or bl, 1
push ecx
mov ecx, 0x10197e10
mov byte [0x10197e0c], bl
call fcn.10043dc0
push 0x10043d40
call fcn.1013c36b
add esp, 4
mov dl, byte [esp + 0x13]
mov edi, dword [0x10197e10]
push 0
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1c], dl
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x18]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003f0d6
mov eax, dword [esp + 0x1c]
push esi
push edi
push eax
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x18]
push esi
call fcn.1000bff0
mov ecx, dword [esp + 0x14]
mov esi, dword [0x10191a54]
push 0xa
push ecx
mov byte [esp + 0xc8], 0xb
call fcn.10021b70
add esp, 8
lea edx, [esp + 0x18]
mov ecx, esi
push eax
push edx
call fcn.10058e60
mov ecx, eax
call fcn.10067f30
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov al, byte [0x1018c569]
mov esi, dword [esp + 0x70]
mov byte [0x1018c564], al
mov eax, dword [esp + 0x74]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x1003f151
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003f13d
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xdd
mov ecx, 0xf0
mov word [esp + 0x22], ax
mov word [esp + 0x24], ax
mov word [esp + 0x28], ax
mov word [esp + 0x2e], ax
mov al, byte [0x10197e14]
mov word [esp + 0x18], 0xc1
test al, 1
mov word [esp + 0x1a], 0xce
mov word [esp + 0x1c], 0xd9
mov word [esp + 0x1e], cx
mov word [esp + 0x20], 0xca
mov word [esp + 0x26], 0xc0
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], 0xda
mov word [esp + 0x30], 0xc3
jne 0x1003f1e9
lea ecx, [esp + 0x18]
push 0xaf
or al, 1
push ecx
mov ecx, 0x10197e18
mov byte [0x10197e14], al
call fcn.10044220
push 0x10042ee0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e18]
push esi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003f258
mov eax, dword [esp + 0x14]
mov byte [0x1018c569], 0xe7
push eax
call fcn.10064770
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
add esp, 4
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003f24a
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003f236
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x1d
mov word [esp + 0x18], 0x5e
mov word [esp + 0x26], ax
mov word [esp + 0x28], ax
mov al, byte [0x10197e1c]
mov word [esp + 0x1a], di
test al, 1
mov word [esp + 0x1c], bx
mov word [esp + 0x1e], 0x29
mov word [esp + 0x20], 0x3a
mov word [esp + 0x22], bx
mov word [esp + 0x24], 0
mov word [esp + 0x2a], 0x2d
mov word [esp + 0x2c], 0x6b
mov word [esp + 0x2e], 4
mov word [esp + 0x30], 3
jne 0x1003f2da
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197e20
mov byte [0x10197e1c], al
call fcn.10043bf0
push 0x10042ef0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e20]
push esi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003f38c
mov al, byte [esp + 0xa8]
push 0x56
mov cl, al
dec al
mov byte [esp + 0xac], al
mov eax, dword [esp + 0xac]
push eax
mov eax, 0x1f2
cdq
idiv dword [0x1018c540]
mov eax, dword [0x1018c53c]
mov dl, byte [edx + eax]
push edx
push ecx
call fcn.100398e0
mov byte [0x1018c564], al
mov eax, dword [esp + 0x24]
push eax
push 3
call fcn.10064be0
mov eax, dword [esp + 0x8c]
mov esi, dword [esp + 0x88]
add esp, 0x18
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x1003f37e
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003f36a
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x13
mov word [esp + 0x18], di
mov word [esp + 0x22], ax
mov word [esp + 0x24], ax
mov word [esp + 0x28], ax
mov al, byte [0x10197e24]
xor ecx, ecx
mov edi, 0xffd5
test al, 1
mov word [esp + 0x1a], 2
mov word [esp + 0x1c], bx
mov word [esp + 0x1e], cx
mov word [esp + 0x20], 6
mov word [esp + 0x26], 0x10
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], di
mov word [esp + 0x2e], 0xffd1
mov word [esp + 0x30], di
jne 0x1003f411
mov bl, al
lea ecx, [esp + 0x18]
or bl, 1
push ecx
mov ecx, 0x10197e28
mov byte [0x10197e24], bl
call fcn.10044f50
push 0x10042f00
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e28]
push esi
call fcn.1013c2c2
mov edx, dword [ebp + 8]
add esp, 4
mov ecx, ebp
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003f499
mov eax, dword [esp + 0x14]
push eax
push 2
call fcn.10064be0
mov eax, 0x32b
mov ecx, dword [0x1018c53c]
cdq
idiv dword [0x1018c540]
mov edi, dword [esp + 0x7c]
mov esi, dword [esp + 0x78]
add esp, 8
mov al, byte [edx + ecx]
mov dl, 0x7b
imul dl
mov byte [0x1018c568], al
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003f48b
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003f477
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x5a
mov edx, 0x69
mov word [esp + 0x1e], ax
mov word [esp + 0x2a], ax
mov al, byte [0x10197e2c]
mov ecx, 0x6d
test al, 1
mov word [esp + 0x18], dx
mov word [esp + 0x1a], 0x5c
mov word [esp + 0x1c], 0x71
mov word [esp + 0x20], 0x60
mov word [esp + 0x22], cx
mov word [esp + 0x24], cx
mov word [esp + 0x26], 0x6a
mov word [esp + 0x28], cx
mov word [esp + 0x2c], 0x5f
mov word [esp + 0x2e], dx
mov word [esp + 0x30], 0x6e
jne 0x1003f525
mov bl, al
lea eax, [esp + 0x18]
or bl, 1
push eax
mov ecx, 0x10197e30
mov byte [0x10197e2c], bl
call fcn.10044fd0
push 0x10042f10
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e30]
push esi
call fcn.1013c2c2
mov ecx, dword [ebp + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebp
call fcn.1000d2b0
test eax, eax
jne 0x1003f5a9
mov edx, dword [esp + 0x14]
push edx
push 1
call fcn.10064be0
mov eax, 0xee
mov edi, dword [esp + 0x7c]
cdq
idiv dword [0x1018c540]
mov eax, dword [0x1018c53c]
mov esi, dword [esp + 0x78]
add esp, 8
cmp esi, edi
mov cl, byte [edx + eax]
mov byte [0x1018c567], cl
mov dword [esp + 0xc0], 0xffffffff
je 0x1003f59b
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003f587
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xffc4
mov ebx, 0xffc0
mov word [esp + 0x20], ax
mov word [esp + 0x34], ax
mov word [esp + 0x3e], ax
mov al, byte [0x10197e34]
mov word [esp + 0x1a], bx
mov word [esp + 0x1c], di
mov word [esp + 0x2e], bx
mov ecx, 0xffbe
mov edx, 0xffd1
mov esi, 0xffce
mov edi, 0xffc2
mov ebx, 0xffd3
mov ebp, 0xffcc
mov word [esp + 0x18], 0xffcd
test al, 1
mov word [esp + 0x1e], cx
mov word [esp + 0x22], dx
mov word [esp + 0x24], dx
mov word [esp + 0x26], si
mov word [esp + 0x28], dx
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], di
mov word [esp + 0x30], di
mov word [esp + 0x32], 0xffc7
mov word [esp + 0x36], cx
mov word [esp + 0x38], bx
mov word [esp + 0x3a], 0xffc8
mov word [esp + 0x3c], bp
mov word [esp + 0x40], si
mov word [esp + 0x42], 0xffd4
mov word [esp + 0x44], bx
jne 0x1003f678
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197e38
mov byte [0x10197e34], al
call fcn.10045040
push 0x10042f20
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e38]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0xb4]
add esp, 4
push eax
mov eax, dword [ecx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003f703
mov al, byte [0x1018c564]
mov ecx, dword [esp + 0x14]
dec al
push 0xa
push ecx
mov byte [0x1018c564], al
call fcn.10021b70
push eax
call fcn.10064ed0
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
mov byte [0x1018c568], 0xf2
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003f6f5
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003f6e1
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xaa
mov edx, 0xb9
mov word [esp + 0x1a], ax
mov word [esp + 0x38], ax
mov al, byte [0x10197e3c]
mov word [esp + 0x22], dx
mov word [esp + 0x24], dx
mov word [esp + 0x28], dx
mov ecx, 0x94
mov esi, 0xb8
mov edx, 0xa7
mov word [esp + 0x18], 0xa5
test al, 1
mov word [esp + 0x1c], 0xbd
mov word [esp + 0x1e], cx
mov word [esp + 0x20], 0xae
mov word [esp + 0x26], 0xa4
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], 0xbe
mov word [esp + 0x2e], si
mov word [esp + 0x30], 0xae
mov word [esp + 0x32], cx
mov word [esp + 0x34], 0xa9
mov word [esp + 0x36], dx
mov word [esp + 0x3a], 0xa8
mov word [esp + 0x3c], 0xa0
mov word [esp + 0x3e], cx
mov word [esp + 0x40], dx
mov word [esp + 0x42], 0xa2
mov word [esp + 0x44], si
mov word [esp + 0x46], 0xbf
jne 0x1003f7df
mov cl, al
lea edx, [esp + 0x18]
or cl, 1
push 0xcb
mov byte [0x10197e3c], cl
push edx
mov ecx, 0x10197e40
call fcn.10044830
push 0x10042f30
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e40]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0xb4]
add esp, 4
push eax
mov eax, dword [ecx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003f881
mov ecx, dword [esp + 0x14]
push ecx
call fcn.100650e0
mov eax, 0x1e2
mov ecx, dword [0x1018c53c]
cdq
idiv dword [0x1018c540]
mov al, 0xb8
mov bl, byte [edx + ecx]
mov dl, byte [0x1018c567]
sub al, bl
push eax
push 0x7a
push edx
call fcn.10039200
mov edi, dword [esp + 0x84]
mov esi, dword [esp + 0x80]
add al, 0x2b
add esp, 0x10
mov byte [0x1018c566], al
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003f873
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003f85f
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xffcf
mov word [esp + 0x18], 0xffd0
mov word [esp + 0x1e], ax
mov word [esp + 0x28], ax
mov word [esp + 0x34], ax
mov al, byte [0x10197e44]
test al, 1
mov word [esp + 0x1a], di
mov word [esp + 0x1c], 0xffbe
mov word [esp + 0x20], 0xffc0
mov word [esp + 0x22], 0xffc5
mov word [esp + 0x24], 0xffbc
mov word [esp + 0x26], 0xffcd
mov word [esp + 0x2a], bp
mov word [esp + 0x2c], bx
mov word [esp + 0x2e], 0xffc6
mov word [esp + 0x30], 0xffc1
mov word [esp + 0x32], di
jne 0x1003f911
mov bl, al
lea eax, [esp + 0x18]
or bl, 1
push eax
mov ecx, 0x10197e48
mov byte [0x10197e44], bl
call fcn.100450c0
push 0x10042f40
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e48]
push esi
call fcn.1013c2c2
mov ebx, dword [esp + 0xb4]
add esp, 4
xor ebp, ebp
mov ecx, dword [ebx + 8]
push eax
push esi
push ecx
push ebp
mov ecx, ebx
call fcn.1000d2b0
cmp eax, ebp
jne 0x1003fadd
mov eax, 0x192
push 0x2e
cdq
idiv dword [0x1018c540]
mov eax, dword [0x1018c53c]
mov cl, byte [edx + eax]
push ecx
push 0xfffffffffffffff5
call fcn.10039200
mov eax, 0x65
add esp, 0xc
mov word [esp + 0x82], ax
mov word [esp + 0x8c], ax
mov word [esp + 0x98], ax
mov al, byte [0x10197e4c]
mov esi, 0x72
mov word [esp + 0x7c], 0x64
test al, 1
mov word [esp + 0x7e], si
mov word [esp + 0x80], 0x76
mov word [esp + 0x84], 0x74
mov word [esp + 0x86], 0x7f
mov word [esp + 0x88], 0x48
mov word [esp + 0x8a], 0x67
mov word [esp + 0x8e], 0x78
mov word [esp + 0x90], 0x61
mov word [esp + 0x92], 0x7e
mov word [esp + 0x94], 0x73
mov word [esp + 0x96], si
jne 0x1003fa22
mov bl, al
lea edx, [esp + 0x7c]
or bl, 1
push 0x17
push edx
mov ecx, 0x10197e50
mov byte [0x10197e4c], bl
call fcn.100448a0
push 0x100440e0
call fcn.1013c36b
add esp, 4
mov al, byte [esp + 0x13]
mov edi, dword [0x10197e50]
push ebp
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1c], al
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x18]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003fa6e
mov ecx, dword [esp + 0x1c]
push esi
push edi
push ecx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x18]
push esi
call fcn.1000bff0
mov edx, dword [esp + 0x14]
mov ecx, dword [0x10191a54]
lea eax, [esp + 0x18]
push edx
push eax
mov byte [esp + 0xc8], 0xc
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003facf
push ebp
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003fabc
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xff9f
mov edx, 0xff92
mov word [esp + 0x1e], ax
mov word [esp + 0x28], ax
mov word [esp + 0x34], ax
mov eax, 0xffa1
mov word [esp + 0x38], ax
mov word [esp + 0x3c], ax
mov al, byte [0x10197e54]
mov esi, 0xff8c
mov ecx, 0xff96
mov word [esp + 0x18], 0xffa0
test al, 1
mov word [esp + 0x1a], dx
mov word [esp + 0x1c], 0xff8e
mov word [esp + 0x20], 0xff90
mov word [esp + 0x22], 0xff95
mov word [esp + 0x24], si
mov word [esp + 0x26], 0xff9d
mov word [esp + 0x2a], 0xff9c
mov word [esp + 0x2c], 0xffa3
mov word [esp + 0x2e], cx
mov word [esp + 0x30], 0xff91
mov word [esp + 0x32], dx
mov word [esp + 0x36], si
mov word [esp + 0x3a], cx
mov word [esp + 0x3e], 0xff99
mov word [esp + 0x40], dx
jne 0x1003fb9d
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197e58
mov byte [0x10197e54], al
call fcn.10045140
push 0x10042f50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e58]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push ebp
call fcn.1000d2b0
cmp eax, ebp
jne 0x1003fd85
mov al, byte [0x1018c566]
mov cl, 0x85
imul cl
mov byte [0x1018c566], al
mov eax, 0x2d
mov word [esp + 0x82], ax
mov word [esp + 0x8c], ax
mov word [esp + 0x98], ax
mov eax, 0x2b
mov word [esp + 0x9c], ax
mov word [esp + 0xa0], ax
mov al, byte [0x10197e5c]
mov ecx, 0x3a
mov edx, 0x36
mov word [esp + 0x7c], 0x2c
test al, 1
mov word [esp + 0x7e], cx
mov word [esp + 0x80], 0x3e
mov word [esp + 0x84], 0x3c
mov word [esp + 0x86], 0x37
mov word [esp + 0x88], bp
mov word [esp + 0x8a], 0x2f
mov word [esp + 0x8e], 0x30
mov word [esp + 0x90], 0x29
mov word [esp + 0x92], dx
mov word [esp + 0x94], 0x3b
mov word [esp + 0x96], cx
mov word [esp + 0x9a], bp
mov word [esp + 0x9e], dx
mov word [esp + 0xa2], 0x33
mov word [esp + 0xa4], cx
jne 0x1003fcca
mov bl, al
lea edx, [esp + 0x7c]
or bl, 1
push 0x5f
push edx
mov ecx, 0x10197e60
mov byte [0x10197e5c], bl
call fcn.10015640
push 0x10044180
call fcn.1013c36b
add esp, 4
mov al, byte [esp + 0x13]
mov edi, dword [0x10197e60]
push ebp
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1c], al
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x18]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003fd16
mov ecx, dword [esp + 0x1c]
push esi
push edi
push ecx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x18]
push esi
call fcn.1000bff0
mov edx, dword [esp + 0x14]
mov ecx, dword [0x10191a54]
lea eax, [esp + 0x18]
push edx
push eax
mov byte [esp + 0xc8], 0xd
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003fd77
push ebp
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003fd64
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov al, byte [0x10197e64]
mov edi, 0x57
mov ebp, 2
mov word [esp + 0x7c], di
test al, 1
mov word [esp + 0x7e], 0x15
mov word [esp + 0x80], bp
jne 0x1003fdcf
lea ecx, [esp + 0x7c]
or al, 1
push ecx
mov ecx, 0x10197e68
mov byte [0x10197e64], al
call fcn.100157c0
push 0x10042f60
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e68]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1003fef6
mov al, byte [0x10197e6c]
mov word [esp + 0x7c], di
test al, 1
mov word [esp + 0x7e], 0x15
mov word [esp + 0x80], bp
jne 0x1003fe39
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push eax
mov ecx, 0x10197e70
mov byte [0x10197e6c], bl
call fcn.100157c0
push 0x10043c80
call fcn.1013c36b
add esp, 4
mov cl, byte [esp + 0x13]
mov edi, dword [0x10197e70]
mov byte [esp + 0x18], cl
push 0
lea ecx, [esp + 0x1c]
call fcn.1000bc70
push edi
call fcn.1013c2c2
add esp, 4
mov esi, eax
lea ecx, [esp + 0x18]
push 1
push esi
call fcn.1000c010
test al, al
je 0x1003fe86
mov edx, dword [esp + 0x1c]
push esi
push edi
push edx
call fcn.100017d0
add esp, 0xc
lea ecx, [esp + 0x18]
push esi
call fcn.1000bff0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push eax
push ecx
mov ecx, dword [0x10191a54]
mov byte [esp + 0xc8], 0xe
call fcn.10058e60
mov ecx, eax
call fcn.10068200
push 1
lea ecx, [esp + 0x1c]
mov byte [esp + 0xc4], 2
call fcn.1000bc70
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1003fee8
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1003fed4
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x17
mov edi, 0x45
mov word [esp + 0x1e], ax
mov word [esp + 0x2e], ax
mov word [esp + 0x30], ax
mov al, byte [0x10197e74]
mov ebp, 6
mov esi, 0x16
mov ecx, 5
mov edx, 7
test al, 1
mov word [esp + 0x18], di
mov word [esp + 0x1a], bp
mov word [esp + 0x1c], si
mov word [esp + 0x20], 0x2d
mov word [esp + 0x22], 0x3e
mov word [esp + 0x24], cx
mov word [esp + 0x26], 0xd
mov word [esp + 0x28], dx
mov word [esp + 0x2a], 0x1a
mov word [esp + 0x2c], 0x11
mov word [esp + 0x32], si
mov word [esp + 0x34], dx
mov word [esp + 0x36], 0x11
mov word [esp + 0x38], 1
mov word [esp + 0x3a], 0x3b
mov word [esp + 0x3c], 0x33
mov word [esp + 0x3e], cx
mov word [esp + 0x40], 0x1f
mov word [esp + 0x42], 0x13
jne 0x1003ffc4
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197e78
mov byte [0x10197e74], al
call fcn.10044730
push 0x10042f70
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e78]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040045
mov ecx, dword [esp + 0x14]
push 0xa
push ecx
call fcn.10021b70
push eax
call fcn.100ad1d0
mov al, byte [esp + 0xb4]
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
inc al
cmp esi, edi
mov byte [0x1018c569], al
mov dword [esp + 0xc0], 0xffffffff
je 0x10040037
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10040023
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xffec
mov ecx, 0xffed
mov word [esp + 0x22], ax
mov word [esp + 0x34], ax
mov al, byte [0x10197e7c]
mov edx, 0xffd9
test al, 1
mov word [esp + 0x18], 0xffe5
mov word [esp + 0x1a], 0xffdf
mov word [esp + 0x1c], 0xfff3
mov word [esp + 0x1e], 0xfff1
mov word [esp + 0x20], 0xffe9
mov word [esp + 0x24], 0xffde
mov word [esp + 0x26], cx
mov word [esp + 0x28], dx
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], 0xfff0
mov word [esp + 0x2e], 0xffdd
mov word [esp + 0x30], dx
mov word [esp + 0x32], 0xffef
mov word [esp + 0x36], 0xffe6
jne 0x100400e4
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197e80
mov byte [0x10197e7c], al
call fcn.100451c0
push 0x10042f80
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e80]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1004014c
mov ecx, dword [esp + 0x14]
push ecx
call fcn.100ac480
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
add esp, 4
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1004013e
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1004012a
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x55
mov edx, 0x57
mov word [esp + 0x1a], ax
mov word [esp + 0x20], ax
mov eax, 0x78
mov ecx, 0x46
mov word [esp + 0x26], ax
mov word [esp + 0x30], ax
mov eax, 0x42
mov word [esp + 0x18], dx
mov word [esp + 0x32], ax
mov word [esp + 0x3c], ax
mov al, byte [0x10197e84]
mov word [esp + 0x1c], 0x48
test al, 1
mov word [esp + 0x1e], 0x40
mov word [esp + 0x22], cx
mov word [esp + 0x24], 0x4a
mov word [esp + 0x28], dx
mov word [esp + 0x2a], 0x52
mov word [esp + 0x2c], 0x54
mov word [esp + 0x2e], 0x4f
mov word [esp + 0x34], 0x49
mov word [esp + 0x36], cx
mov word [esp + 0x38], di
mov word [esp + 0x3a], 0x4b
mov word [esp + 0x3e], 0x43
jne 0x10040209
lea edx, [esp + 0x18]
or al, 1
push 0x27
push edx
mov ecx, 0x10197e88
mov byte [0x10197e84], al
call fcn.100447c0
push 0x10042f90
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e88]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040325
mov eax, 0x72
mov ecx, dword [0x1018c53c]
cdq
idiv dword [0x1018c540]
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
mov dl, byte [edx + ecx]
mov byte [0x1018c564], dl
jne 0x100402a1
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, dword [ecx + 8]
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
sete al
push eax
call fcn.10075170
mov eax, 0xc1
mov ecx, dword [0x1018c53c]
cdq
idiv dword [0x1018c540]
mov eax, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
add esp, 4
cmp esi, eax
mov edi, eax
mov dl, byte [edx + ecx]
mov byte [0x1018c569], dl
mov dword [esp + 0xc0], 0xffffffff
je 0x10040317
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10040303
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xff8f
mov ecx, 0xff8d
mov word [esp + 0x1a], ax
mov word [esp + 0x20], ax
mov al, byte [0x10197e94]
mov word [esp + 0x18], cx
test al, 1
mov word [esp + 0x1c], 0xff8c
mov word [esp + 0x1e], 0xff84
mov word [esp + 0x22], 0xff7e
mov word [esp + 0x24], 0xff8a
mov word [esp + 0x26], 0xff7c
mov word [esp + 0x28], cx
mov word [esp + 0x2a], 0xff92
mov word [esp + 0x2c], 0xff90
mov word [esp + 0x2e], 0xff85
jne 0x100403a7
or al, 1
mov ecx, 0x10197e98
mov byte [0x10197e94], al
lea eax, [esp + 0x18]
push eax
call fcn.10045240
push 0x10042fa0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e98]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x100404bb
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10040424
mov bl, al
lea edx, [esp + 0x7c]
or bl, 1
push 0xec
push edx
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
push eax
mov eax, dword [ecx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040482
push 2
push eax
push 3
lea ecx, [esp + 0x88]
call fcn.1005f860
mov ecx, dword [esp + 0xac]
push eax
add ecx, 0x30
call fcn.10060280
mov al, byte [0x1018c569]
mov dl, 0x6f
mov cl, byte [0x1018c564]
imul dl
neg cl
sub cl, al
mov byte [0x1018c567], cl
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x100404ad
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10040499
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xfffe
mov edx, 9
mov word [esp + 0x22], ax
mov word [esp + 0x3c], ax
mov al, byte [0x10197e9c]
mov ecx, 0xfffc
mov esi, 0xd
mov edi, 0x12
test al, 1
mov word [esp + 0x18], bp
mov word [esp + 0x1a], 0xb
mov word [esp + 0x1c], bp
mov word [esp + 0x1e], 0x11
mov word [esp + 0x20], bp
mov word [esp + 0x24], dx
mov word [esp + 0x26], cx
mov word [esp + 0x28], si
mov word [esp + 0x2a], 0xc
mov word [esp + 0x2c], si
mov word [esp + 0x2e], di
mov word [esp + 0x30], si
mov word [esp + 0x32], 0x10
mov word [esp + 0x34], cx
mov word [esp + 0x36], 1
mov word [esp + 0x38], 2
mov word [esp + 0x3a], dx
mov word [esp + 0x3e], 0x16
jne 0x10040572
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197ea0
mov byte [0x10197e9c], al
call fcn.100452d0
push 0x10042fb0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ea0]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x100405ec
mov ecx, dword [esp + 0x14]
push 0xa
push ecx
call fcn.10021b70
push eax
call fcn.100985e0
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
mov byte [0x1018c564], 0x66
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x100405de
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x100405ca
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xad
mov ecx, 0xa8
mov word [esp + 0x18], ax
mov word [esp + 0x1c], ax
mov word [esp + 0x20], ax
mov eax, 0xb0
mov word [esp + 0x26], ax
mov word [esp + 0x32], ax
mov al, byte [0x10197ea4]
mov edx, 0x82
test al, 1
mov word [esp + 0x1a], 0xb2
mov word [esp + 0x1e], cx
mov word [esp + 0x22], 0xae
mov word [esp + 0x24], dx
mov word [esp + 0x28], 0xbc
mov word [esp + 0x2a], 0xa5
mov word [esp + 0x2c], dx
mov word [esp + 0x2e], 0xb3
mov word [esp + 0x30], cx
jne 0x10040681
lea edx, [esp + 0x18]
or al, 1
push 0xdd
push edx
mov ecx, 0x10197ea8
mov byte [0x10197ea4], al
call fcn.10018600
push 0x10042fc0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ea8]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1004070e
mov ecx, dword [esp + 0x14]
push 0xa
push ecx
call fcn.10021b70
push eax
call fcn.10098810
mov eax, 0x3a
mov edi, dword [esp + 0x80]
cdq
idiv dword [0x1018c540]
mov eax, dword [0x1018c53c]
mov esi, dword [esp + 0x7c]
add esp, 0xc
cmp esi, edi
mov cl, byte [edx + eax]
mov byte [0x1018c567], cl
mov dword [esp + 0xc0], 0xffffffff
je 0x10040700
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x100406ec
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x2b
mov ecx, 0x34
mov word [esp + 0x18], ax
mov word [esp + 0x1c], ax
mov word [esp + 0x20], ax
mov al, byte [0x10197eac]
mov ebp, 0x29
mov word [esp + 0x1a], cx
test al, 1
mov word [esp + 0x1e], 0x2e
mov word [esp + 0x22], 0x28
mov word [esp + 0x24], 4
mov word [esp + 0x26], cx
mov word [esp + 0x28], bp
mov word [esp + 0x2a], 0x3f
mov word [esp + 0x2c], 0x3e
mov word [esp + 0x2e], bp
jne 0x10040795
mov cl, al
lea edx, [esp + 0x18]
or cl, 1
push 0x5b
mov byte [0x10197eac], cl
push edx
mov ecx, 0x10197eb0
call fcn.10044070
push 0x10042fd0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197eb0]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1004084c
call fcn.100391a0
mov ecx, dword [esp + 0x14]
push ecx
call fcn.10098a20
mov eax, 0x213
mov cl, byte [0x1018c569]
cdq
idiv dword [0x1018c540]
mov bl, byte [0x1018c564]
mov esi, dword [0x1018c53c]
dec cl
dec bl
mov al, 0xe2
mov byte [0x1018c569], cl
mov byte [0x1018c564], bl
push 0xffffffffffffffca
push 0xffffffffffffffe7
sub al, byte [edx + esi]
sub al, cl
push eax
push ebx
call fcn.100398e0
mov edi, dword [esp + 0x88]
mov esi, dword [esp + 0x84]
add esp, 0x14
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x1004083e
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1004082a
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 8
mov ecx, 0x17
mov word [esp + 0x1a], ax
mov word [esp + 0x2e], ax
mov al, byte [0x10197eb4]
mov word [esp + 0x18], 0x5d
test al, 1
mov word [esp + 0x1c], 0x16
mov word [esp + 0x1e], 0
mov word [esp + 0x20], di
mov word [esp + 0x22], 6
mov word [esp + 0x24], 2
mov word [esp + 0x26], 0x3a
mov word [esp + 0x28], 0x3e
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], cx
mov word [esp + 0x30], 5
mov word [esp + 0x32], 0xd
mov word [esp + 0x34], 3
mov word [esp + 0x36], 0xe
mov word [esp + 0x38], 9
jne 0x100408ef
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197eb8
mov byte [0x10197eb4], al
call fcn.10010900
push 0x10042fe0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197eb8]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x100409fb
mov al, byte [esp + 0xa8]
mov word [esp + 0x7c], 0x98
mov byte [0x1018c565], al
mov al, byte [0x10197e8c]
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10040978
mov bl, al
lea ecx, [esp + 0x7c]
push 0xec
or bl, 1
push ecx
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, dword [ecx + 8]
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x100409c2
push 2
call fcn.10098be0
push eax
push 2
lea ecx, [esp + 0x88]
call fcn.1005f860
push eax
mov eax, dword [esp + 0xb0]
lea ecx, [eax + 0x30]
call fcn.10060280
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x100409ed
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x100409d9
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 5
mov edi, 0x53
mov word [esp + 0x22], ax
mov word [esp + 0x26], ax
mov al, byte [0x10197ebc]
mov word [esp + 0x18], di
test al, 1
mov word [esp + 0x1a], 0x13
mov word [esp + 0x1c], 6
mov word [esp + 0x1e], bp
mov word [esp + 0x20], 0x2a
mov word [esp + 0x24], 0x14
mov word [esp + 0x28], 0x15
mov word [esp + 0x2a], 0x11
jne 0x10040a6f
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197ec0
mov byte [0x10197ebc], al
call fcn.10043cb0
push 0x10042ff0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ec0]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040b6f
call fcn.100391a0
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10040af1
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, dword [ecx + 8]
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040b36
push 2
push eax
push 6
lea ecx, [esp + 0x88]
call fcn.1005f860
push eax
mov eax, dword [esp + 0xb0]
lea ecx, [eax + 0x30]
call fcn.10060280
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10040b61
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10040b4d
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xff67
mov word [esp + 0x18], 0xff65
mov word [esp + 0x20], ax
mov word [esp + 0x2a], ax
mov al, byte [0x10197ec4]
mov word [esp + 0x1a], 0xff72
test al, 1
mov word [esp + 0x1c], 0xff78
mov word [esp + 0x1e], 0xff61
mov word [esp + 0x22], 0xff70
mov word [esp + 0x24], 0xff63
mov word [esp + 0x26], 0xff64
mov word [esp + 0x28], 0xff6e
mov word [esp + 0x2c], 0xff66
jne 0x10040be9
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197ec8
mov byte [0x10197ec4], al
call fcn.100453c0
push 0x10043000
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ec8]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040d36
push eax
lea ecx, [esp + 0x1c]
mov byte [0x1018c568], 0xd8
call fcn.100a42f0
mov al, byte [0x10197e8c]
mov byte [esp + 0xc0], 0xf
test al, 1
mov word [esp + 0x7c], 0x98
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10040c7f
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, dword [ecx + 8]
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
sete al
push eax
lea ecx, [esp + 0x1c]
call fcn.1009a4c0
push 0x70
call fcn.100391c0
add esp, 4
lea ecx, [esp + 0x18]
mov byte [0x1018c567], al
call fcn.1009b8f0
test al, al
je 0x10040cec
push 2
push 0
push 6
lea ecx, [esp + 0x88]
call fcn.1005f860
mov ecx, dword [esp + 0xac]
push eax
add ecx, 0x30
call fcn.10060280
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 2
call fcn.1009a3b0
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10040d28
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10040d14
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov al, byte [0x10197ecc]
mov word [esp + 0x18], di
test al, 1
mov word [esp + 0x1a], 0x13
mov word [esp + 0x1c], 6
mov word [esp + 0x1e], bp
mov word [esp + 0x20], 0x32
mov word [esp + 0x22], 0xc
mov word [esp + 0x24], 0x19
mov word [esp + 0x26], 0x27
mov word [esp + 0x28], 0x31
mov word [esp + 0x2a], 0x1b
mov word [esp + 0x2c], 0x18
jne 0x10040dab
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197ed0
mov byte [0x10197ecc], al
call fcn.10043fe0
push 0x10043010
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ed0]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040e65
push eax
lea ecx, [esp + 0x1c]
mov byte [0x1018c568], 0xb7
call fcn.100a42f0
mov al, byte [0x1018c567]
mov ecx, dword [esp + 0x14]
inc al
push 0xa
mov byte [esp + 0xc4], 0x11
push ecx
mov byte [0x1018c567], al
call fcn.10021b70
add esp, 8
lea ecx, [esp + 0x18]
push eax
call fcn.1009ab30
call fcn.100391a0
mov byte [0x1018c565], al
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 2
call fcn.1009a3b0
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x10040e57
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10040e43
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x3b
mov edi, 0x4c
mov word [esp + 0x1e], ax
mov word [esp + 0x2a], ax
mov eax, 0x3d
mov ebp, 0x49
mov word [esp + 0x2e], ax
mov word [esp + 0x32], ax
mov al, byte [0x10197ed4]
mov word [esp + 0x18], 0x3f
test al, 1
mov word [esp + 0x1a], di
mov word [esp + 0x1c], 0x52
mov word [esp + 0x20], di
mov word [esp + 0x22], 0x4b
mov word [esp + 0x24], di
mov word [esp + 0x26], 0x51
mov word [esp + 0x28], di
mov word [esp + 0x2c], di
mov word [esp + 0x30], 0x4e
mov word [esp + 0x34], bp
mov word [esp + 0x36], 0x4f
jne 0x10040f01
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197ed8
mov byte [0x10197ed4], al
call fcn.10045450
push 0x10043020
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ed8]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10040f9c
push eax
lea ecx, [esp + 0x1c]
mov byte [0x1018c566], 0x7d
call fcn.100a42f0
mov ecx, dword [esp + 0x14]
mov byte [esp + 0xc0], 0x13
push ecx
lea ecx, [esp + 0x1c]
call fcn.1009afa0
dec byte [0x1018c568]
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 2
call fcn.1009a3b0
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x10040f8e
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10040f7a
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xffa8
mov ecx, 0xff9e
mov word [esp + 0x20], ax
mov word [esp + 0x24], ax
mov word [esp + 0x28], ax
mov eax, 0xffab
mov word [esp + 0x2c], ax
mov word [esp + 0x34], ax
mov al, byte [0x10197edc]
mov edx, 0xffa0
test al, 1
mov word [esp + 0x18], 0xffa2
mov word [esp + 0x1a], 0xffaf
mov word [esp + 0x1c], 0xffb5
mov word [esp + 0x1e], cx
mov word [esp + 0x22], 0xffad
mov word [esp + 0x26], 0xffb3
mov word [esp + 0x2a], dx
mov word [esp + 0x2e], cx
mov word [esp + 0x30], 0xffa3
mov word [esp + 0x32], 0xffa4
mov word [esp + 0x36], dx
mov word [esp + 0x38], 0xffb8
jne 0x10041041
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197ee0
mov byte [0x10197edc], al
call fcn.100454c0
push 0x10043030
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ee0]
push esi
call fcn.1013c2c2
add esp, 4
mov ecx, ebx
push eax
mov eax, dword [ebx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10041121
mov bl, byte [esp + 0xa8]
mov ecx, dword [0x1018c53c]
mov al, bl
inc bl
push eax
mov eax, 0x3ca
cdq
idiv dword [0x1018c540]
mov al, byte [edx + ecx]
mov cl, byte [0x1018c565]
imul cl
add al, 0x44
imul bl
push eax
push ecx
call fcn.10039200
add esp, 0xc
mov bl, al
lea ecx, [esp + 0x18]
sub bl, 0x25
push 0
call fcn.100a42f0
mov edx, dword [esp + 0x14]
push 0xa
push edx
mov byte [esp + 0xc8], 0x15
call fcn.10021b70
add esp, 8
lea ecx, [esp + 0x18]
push eax
call fcn.1009a780
mov byte [0x1018c564], bl
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 2
call fcn.1009a3b0
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x10041113
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x100410ff
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov al, byte [0x10197ee4]
mov word [esp + 0x18], 0x9b
test al, 1
mov word [esp + 0x1a], 0x88
mov word [esp + 0x1c], 0x8e
mov word [esp + 0x1e], 0xa7
mov word [esp + 0x20], 0x9c
mov word [esp + 0x22], 0x9d
mov word [esp + 0x24], 0x94
mov word [esp + 0x26], 0x99
mov word [esp + 0x28], 0x81
jne 0x10041191
or al, 1
push 0xf8
mov byte [0x10197ee4], al
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x10197ee8
call fcn.1002a580
push 0x10043040
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ee8]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x10041242
call fcn.100391a0
push 0
lea ecx, [esp + 0x1c]
call fcn.100a42f0
mov edx, dword [esp + 0x14]
push 0xa
mov byte [esp + 0xc4], 0x17
push edx
mov byte [0x1018c565], 0x73
call fcn.10021b70
add esp, 8
lea ecx, [esp + 0x18]
push eax
call fcn.1009a970
mov byte [0x1018c568], 0x27
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 2
call fcn.1009a3b0
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x10041234
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10041220
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x39
mov ecx, 0x35
mov word [esp + 0x18], ax
mov word [esp + 0x2e], ax
mov al, byte [0x10197eec]
mov edx, 0x42
test al, 1
mov word [esp + 0x1a], 0x46
mov word [esp + 0x1c], di
mov word [esp + 0x1e], cx
mov word [esp + 0x20], 0x4b
mov word [esp + 0x22], bp
mov word [esp + 0x24], 0x3b
mov word [esp + 0x26], cx
mov word [esp + 0x28], 0x38
mov word [esp + 0x2a], dx
mov word [esp + 0x2c], 0x37
mov word [esp + 0x30], 0x41
mov word [esp + 0x32], cx
mov word [esp + 0x34], dx
mov word [esp + 0x36], 0x3f
mov word [esp + 0x38], bp
mov word [esp + 0x3a], 0x4a
jne 0x100412e7
or al, 1
mov ecx, 0x10197ef0
mov byte [0x10197eec], al
lea eax, [esp + 0x18]
push eax
call fcn.10045540
push 0x10043050
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ef0]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x100413a1
mov al, byte [0x1018c565]
push 0x2d
inc al
push 0xffffffffffffff9a
push 0x75
mov byte [0x1018c565], al
call fcn.1003c020
add esp, 8
sub al, 0x67
push eax
push 0xffffffffffffff9f
call fcn.10039200
add esp, 0xc
lea ecx, [esp + 0x18]
push 0
call fcn.100a42f0
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x18]
push edx
mov byte [esp + 0xc4], 0x19
call fcn.1009ad10
lea ecx, [esp + 0x18]
mov byte [esp + 0xc0], 2
call fcn.1009a3b0
mov eax, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x10041393
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1004137f
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xf
mov word [esp + 0x18], 0x55
mov word [esp + 0x1c], ax
mov word [esp + 0x28], ax
mov al, byte [0x10197ef4]
mov word [esp + 0x1a], 0x1f
test al, 1
mov word [esp + 0x1e], 0x19
mov word [esp + 0x20], 0xd
mov word [esp + 0x22], 0x3e
mov word [esp + 0x24], 0x3a
mov word [esp + 0x26], 0xb
mov word [esp + 0x2a], 3
mov word [esp + 0x2c], 0xe
mov word [esp + 0x2e], 9
mov word [esp + 0x30], 1
jne 0x10041429
or al, 1
mov ecx, 0x10197ef8
mov byte [0x10197ef4], al
lea eax, [esp + 0x18]
push eax
call fcn.10043bf0
push 0x10043060
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197ef8]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x1004155e
mov eax, 0x147
mov ecx, dword [0x1018c53c]
cdq
idiv dword [0x1018c540]
mov al, 0x83
mov word [esp + 0x7c], 0x98
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
mov bl, byte [edx + ecx]
mov cl, byte [0x1018c567]
sub al, bl
sub al, cl
mov byte [0x1018c566], al
mov al, byte [0x10197e8c]
test al, 1
jne 0x100414cc
mov bl, al
lea edx, [esp + 0x7c]
or bl, 1
push 0xec
push edx
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
push eax
mov eax, dword [ecx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
sete cl
push ecx
call fcn.10080ae0
add esp, 4
call fcn.10081d50
test al, al
je 0x10041525
push 3
push 0
push 0xa
lea ecx, [esp + 0x88]
call fcn.1005f860
mov edx, dword [esp + 0xac]
push eax
lea ecx, [edx + 0x30]
call fcn.10060280
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10041550
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x1004153c
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xe
mov esi, 0x1e
mov word [esp + 0x18], ax
mov word [esp + 0x2c], ax
mov word [esp + 0x38], ax
mov word [esp + 0x48], ax
mov al, byte [0x10197efc]
mov ecx, 0xa
mov edx, 8
mov ebp, 0x1d
test al, 1
mov word [esp + 0x1a], 0x23
mov word [esp + 0x1c], si
mov word [esp + 0x1e], 0x15
mov word [esp + 0x20], cx
mov word [esp + 0x22], dx
mov word [esp + 0x24], cx
mov word [esp + 0x26], 0xd
mov word [esp + 0x28], dx
mov word [esp + 0x2a], bp
mov word [esp + 0x2e], 0x16
mov word [esp + 0x30], 0x19
mov word [esp + 0x32], 0x15
mov word [esp + 0x34], cx
mov word [esp + 0x36], bp
mov word [esp + 0x3a], 0x1c
mov word [esp + 0x3c], dx
mov word [esp + 0x3e], si
mov word [esp + 0x40], 0x19
mov word [esp + 0x42], 0xd
mov word [esp + 0x44], cx
mov word [esp + 0x46], bp
jne 0x10041632
or al, 1
mov ecx, 0x10197f00
mov byte [0x10197efc], al
lea eax, [esp + 0x18]
push eax
call fcn.100455c0
push 0x10043070
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f00]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x10041762
mov edx, dword [esp + 0xa8]
mov eax, 0x2dc
push edx
cdq
idiv dword [0x1018c540]
mov eax, dword [0x1018c53c]
mov cl, byte [edx + eax]
mov dl, byte [0x1018c569]
push ecx
push edx
call fcn.100391c0
add esp, 4
push eax
call fcn.10039200
mov al, byte [0x10197e8c]
add esp, 0xc
test al, 1
mov word [esp + 0x7c], 0x98
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x100416e4
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, dword [ecx + 8]
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10041729
push 3
push eax
push 0xa
lea ecx, [esp + 0x88]
call fcn.1005f860
push eax
mov eax, dword [esp + 0xb0]
lea ecx, [eax + 0x30]
call fcn.10060280
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10041754
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10041740
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xd
mov ecx, 7
mov word [esp + 0x20], ax
mov word [esp + 0x30], ax
mov word [esp + 0x3a], ax
mov al, byte [0x10197f04]
test al, 1
mov word [esp + 0x18], 0x55
mov word [esp + 0x1a], 0x1f
mov word [esp + 0x1c], 0xf
mov word [esp + 0x1e], 0x19
mov word [esp + 0x22], 0x3e
mov word [esp + 0x24], 0x36
mov word [esp + 0x26], cx
mov word [esp + 0x28], cx
mov word [esp + 0x2a], bp
mov word [esp + 0x2c], bp
mov word [esp + 0x2e], 8
mov word [esp + 0x32], 0x33
mov word [esp + 0x34], 0x3b
mov word [esp + 0x36], 1
mov word [esp + 0x38], 9
mov word [esp + 0x3c], 0x18
jne 0x1004180f
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197f08
mov byte [0x10197f04], al
call fcn.10044290
push 0x10043080
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f08]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10041892
mov eax, dword [esp + 0x14]
push 0xa
push eax
mov byte [0x1018c569], 0x20
call fcn.10021b70
push eax
call fcn.10080fd0
mov eax, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
mov byte [0x1018c569], 0x4e
cmp esi, eax
mov dword [esp + 0xc0], 0xffffffff
mov edi, eax
je 0x10041884
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10041870
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xc6
mov edx, 0xf8
mov word [esp + 0x22], ax
mov word [esp + 0x2a], ax
mov eax, 0xfe
mov word [esp + 0x20], dx
mov word [esp + 0x30], ax
mov word [esp + 0x38], ax
mov al, byte [0x10197f0c]
mov word [esp + 0x26], dx
mov ecx, 0xf5
mov edx, 0xf1
mov esi, 0xf0
mov word [esp + 0x18], 0xfc
test al, 1
mov word [esp + 0x1a], 0xe3
mov word [esp + 0x1c], 0xec
mov word [esp + 0x1e], cx
mov word [esp + 0x24], 0xf4
mov word [esp + 0x28], 0xe1
mov word [esp + 0x2c], dx
mov word [esp + 0x2e], si
mov word [esp + 0x32], dx
mov word [esp + 0x34], cx
mov word [esp + 0x36], si
mov word [esp + 0x3a], dx
mov word [esp + 0x3c], 0xed
mov word [esp + 0x3e], 0xea
jne 0x10041953
lea ecx, [esp + 0x18]
push 0x99
or al, 1
push ecx
mov ecx, 0x10197f10
mov byte [0x10197f0c], al
call fcn.100447c0
push 0x10043090
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f10]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x100419d9
mov eax, dword [esp + 0x14]
push 0xa
push eax
mov byte [0x1018c568], 0x11
call fcn.10021b70
push eax
call fcn.100811a0
mov cl, byte [0x1018c566]
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
mov byte [0x1018c568], cl
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x100419cb
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x100419b7
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x4a
mov ecx, 0x4e
mov word [esp + 0x20], ax
mov word [esp + 0x26], ax
mov eax, 0x50
mov ebp, 0x55
mov word [esp + 0x30], ax
mov word [esp + 0x38], ax
mov eax, 0x5d
mov esi, 0x48
mov word [esp + 0x3c], ax
mov word [esp + 0x4e], ax
mov al, byte [0x10197f14]
mov edx, 0x51
test al, 1
mov word [esp + 0x18], cx
mov word [esp + 0x1a], 0x63
mov word [esp + 0x1c], 0x5e
mov word [esp + 0x1e], bp
mov word [esp + 0x22], si
mov word [esp + 0x24], 0x56
mov word [esp + 0x28], 0x61
mov word [esp + 0x2a], si
mov word [esp + 0x2c], dx
mov word [esp + 0x2e], 0x52
mov word [esp + 0x32], dx
mov word [esp + 0x34], bp
mov word [esp + 0x36], 0x52
mov word [esp + 0x3a], dx
mov word [esp + 0x3e], 0x5c
mov word [esp + 0x40], si
mov word [esp + 0x42], 0x59
mov word [esp + 0x44], cx
mov word [esp + 0x46], 0x5b
mov word [esp + 0x48], di
mov word [esp + 0x4a], cx
mov word [esp + 0x4c], 0x57
jne 0x10041b06
or al, 1
push 0x3a
mov byte [0x10197f14], al
call fcn.1013c2df
add esp, 4
mov dword [0x10197f18], eax
xor edi, edi
mov si, word [esp + edi + 0x18]
push 0x17
mov edx, esi
mov ecx, 0x10197f18
and edx, 0xffff
push edx
call fcn.1002ea10
sub esi, eax
mov eax, dword [0x10197f18]
add esi, 0x17
mov word [eax + edi], si
add edi, 2
cmp edi, 0x38
jb 0x10041abd
mov ecx, dword [0x10197f18]
push 0x100430a0
mov word [ecx + 0x38], 0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f18]
push esi
call fcn.1013c2c2
mov edx, dword [ebx + 8]
add esp, 4
mov ecx, ebx
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x10041b79
mov eax, dword [esp + 0x14]
push 0xa
push eax
call fcn.10021b70
push eax
call fcn.100813f0
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10041b6b
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10041b57
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x8c
mov ecx, 0xa6
mov word [esp + 0x22], ax
mov word [esp + 0x2c], ax
mov al, byte [0x10197f1c]
mov edx, 0xb2
test al, 1
mov word [esp + 0x18], 0xb6
mov word [esp + 0x1a], 0xa9
mov word [esp + 0x1c], cx
mov word [esp + 0x1e], 0xbf
mov word [esp + 0x20], dx
mov word [esp + 0x24], 0xa0
mov word [esp + 0x26], 0xb8
mov word [esp + 0x28], 0xba
mov word [esp + 0x2a], 0xa3
mov word [esp + 0x2e], dx
mov word [esp + 0x30], 0xbe
mov word [esp + 0x32], 0xbc
mov word [esp + 0x34], cx
mov word [esp + 0x36], 0xbd
mov word [esp + 0x38], 0xa7
jne 0x10041c62
or al, 1
push 0x24
mov byte [0x10197f1c], al
call fcn.1013c2df
add esp, 4
mov dword [0x10197f20], eax
xor esi, esi
mov di, word [esp + esi + 0x18]
push 0xd3
mov ecx, edi
and ecx, 0xffff
push ecx
mov ecx, 0x10197f20
call fcn.100a8ee0
mov edx, dword [0x10197f20]
add eax, 0xd3
xor eax, edi
mov word [edx + esi], ax
add esi, 2
cmp esi, 0x22
jb 0x10041c14
mov eax, dword [0x10197f20]
push 0x100430b0
mov word [eax + 0x22], 0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f20]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x10041cd5
mov edx, dword [esp + 0x14]
push 0xa
push edx
call fcn.10021b70
push eax
call fcn.10081610
mov edi, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
add esp, 0xc
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10041cc7
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10041cb3
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x2f
mov edi, 0x1f
mov word [esp + 0x24], ax
mov word [esp + 0x2a], ax
mov al, byte [0x10197f24]
mov ebp, 0xd
test al, 1
mov word [esp + 0x18], 0x55
mov word [esp + 0x1a], di
mov word [esp + 0x1c], 0xf
mov word [esp + 0x1e], 0x19
mov word [esp + 0x20], bp
mov word [esp + 0x22], 0x3e
mov word [esp + 0x26], di
mov word [esp + 0x28], di
mov word [esp + 0x2c], 0x2a
mov word [esp + 0x2e], 7
mov word [esp + 0x30], 0x1e
jne 0x10041d5f
or al, 1
mov ecx, 0x10197f28
mov byte [0x10197f24], al
lea eax, [esp + 0x18]
push eax
call fcn.10043bf0
push 0x100430c0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f28]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x10041dc7
mov edx, dword [esp + 0x14]
push edx
call fcn.10081800
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
add esp, 4
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10041db9
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10041da5
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov al, byte [0x10197f2c]
mov word [esp + 0x18], 0x55
test al, 1
mov word [esp + 0x1a], di
mov word [esp + 0x1c], 0xf
mov word [esp + 0x1e], 0x19
mov word [esp + 0x20], bp
mov word [esp + 0x22], 0x3e
mov word [esp + 0x24], 0x2a
mov word [esp + 0x26], 6
mov word [esp + 0x28], 0x16
mov word [esp + 0x2a], 0x3a
mov word [esp + 0x2c], 0x3d
mov word [esp + 0x2e], 0xe
mov word [esp + 0x30], bp
mov word [esp + 0x32], 2
mov word [esp + 0x34], 8
mov word [esp + 0x36], 0x34
mov word [esp + 0x38], 0x33
mov word [esp + 0x3a], 5
mov word [esp + 0x3c], 0x1a
mov word [esp + 0x3e], 7
jne 0x10041e79
or al, 1
mov ecx, 0x10197f30
mov byte [0x10197f2c], al
lea eax, [esp + 0x18]
push eax
call fcn.10044620
push 0x100430d0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f30]
push esi
call fcn.1013c2c2
mov ecx, dword [ebx + 8]
add esp, 4
push eax
push esi
push ecx
push 0
mov ecx, ebx
call fcn.1000d2b0
test eax, eax
jne 0x10041ee1
mov edx, dword [esp + 0x14]
push edx
call fcn.10081a50
mov edi, dword [esp + 0x78]
mov esi, dword [esp + 0x74]
add esp, 4
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10041ed3
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x10041ebf
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0x6f
mov ebp, 0x6b
mov word [esp + 0x20], ax
mov word [esp + 0x2a], ax
mov al, byte [0x10197f34]
mov ebx, 0x7b
test al, 1
mov word [esp + 0x18], bp
mov word [esp + 0x1a], 0x74
mov word [esp + 0x1c], bx
mov word [esp + 0x1e], 0x62
mov word [esp + 0x22], 0x51
mov word [esp + 0x24], bx
mov word [esp + 0x26], 0x7e
mov word [esp + 0x28], 0x6a
mov word [esp + 0x2c], 0x7a
mov word [esp + 0x2e], bp
jne 0x10041fa2
or al, 1
push 0x1a
mov byte [0x10197f34], al
call fcn.1013c2df
add esp, 4
mov dword [0x10197f38], eax
xor esi, esi
mov di, word [esp + esi + 0x18]
push 0xe
mov eax, edi
mov ecx, 0x10197f38
and eax, 0xffff
push eax
call fcn.100a8ee0
mov ecx, dword [0x10197f38]
add eax, 0xe
xor eax, edi
mov word [ecx + esi], ax
add esi, 2
cmp esi, 0x18
jb 0x10041f59
mov edx, dword [0x10197f38]
push 0x100430e0
mov word [edx + 0x18], 0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f38]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0xb4]
add esp, 4
push eax
mov eax, dword [ecx + 8]
push esi
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x100420d9
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10042062
mov bl, al
push 0xa
or bl, 1
mov byte [0x10197e8c], bl
call fcn.1013c2df
add esp, 4
mov dword [0x10197e90], eax
xor esi, esi
mov di, word [esp + esi + 0x7c]
push 0xec
mov ecx, edi
and ecx, 0xffff
push ecx
mov ecx, 0x10197e90
call fcn.100a8ee0
mov edx, dword [0x10197e90]
add eax, 0xec
xor eax, edi
mov word [esi + edx], ax
add esi, 2
cmp esi, 8
jb 0x10042014
mov eax, dword [0x10197e90]
push 0x10043a50
mov word [eax + 8], 0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, dword [ecx + 8]
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x100420a0
mov ecx, dword [0x10191a54]
push 1
call fcn.10058ee0
mov ecx, eax
call fcn.100aa640
dec byte [0x1018c569]
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x100420cb
push 0
mov ecx, esi
call fcn.100461a0
add esi, 0x10
cmp esi, edi
jne 0x100420b7
mov esi, dword [esp + 0x70]
push esi
call fcn.101307a0
add esp, 4
jmp 0x10042e17
mov eax, 0xffa5
mov edi, 0xffaa
mov word [esp + 0x18], ax
mov word [esp + 0x1c], ax
mov word [esp + 0x20], ax
mov word [esp + 0x28], ax
mov word [esp + 0x32], ax
mov al, byte [0x10197f3c]
mov esi, 0xff94
mov edx, 0xffa9
mov ecx, 0xff9a
mov word [esp + 0x1a], 0xffa4
test al, 1
mov word [esp + 0x1e], di
mov word [esp + 0x22], si
mov word [esp + 0x24], dx
mov word [esp + 0x26], 0xffae
mov word [esp + 0x2a], cx
mov word [esp + 0x2c], 0xffa8
mov word [esp + 0x2e], si
mov word [esp + 0x30], di
mov word [esp + 0x34], 0xff99
mov word [esp + 0x36], 0xff96
mov word [esp + 0x38], dx
mov word [esp + 0x3a], cx
jne 0x100421c6
or al, 1
push 0x26
mov byte [0x10197f3c], al
call fcn.1013c2df
add esp, 4
mov dword [0x10197f40], eax
xor edi, edi
mov si, word [esp + edi + 0x18]
push 0xcb
mov eax, esi
mov ecx, 0x10197f40
and eax, 0xffff
push eax
call fcn.1002ea10
mov ecx, dword [0x10197f40]
sub esi, eax
add esi, 0xcb
mov word [edi + ecx], si
add edi, 2
cmp edi, 0x24
jb 0x10042177
mov edx, dword [0x10197f40]
push 0x100430f0
mov word [edx + 0x24], 0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197f40]
push esi
call fcn.1013c2c2
add esp, 4
push eax
push esi
mov esi, dword [esp + 0xb8]
mov ecx, esi
mov eax, dword [esi + 8]
push eax
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1004234d
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10042288
mov bl, al
push 0xa
or bl, 1
mov byte [0x10197e8c], bl
call fcn.1013c2df
add esp, 4
mov dword [0x10197e90], eax
xor esi, esi
mov di, word [esp + esi + 0x7c]
push 0xec
mov ecx, edi
and ecx, 0xffff
push ecx
mov ecx, 0x10197e90
call fcn.100a8ee0
mov edx, dword [0x10197e90]
add eax, 0xec
xor eax, edi
mov word [esi + edx], ax
add esi, 2
cmp esi, 8
jb 0x1004223a
mov eax, dword [0x10197e90]
push 0x10043a50
mov word [eax + 8], 0
call fcn.1013c36b
add esp, 4
mov esi, dword [0x10197e90]
push esi
call fcn.1013c2c2
mov ecx, dword [esp + 0x18]
add esp, 4
mov edx, dword [ecx + 8]
push eax
push esi
push edx
push 0
call fcn.1000d2b0
test eax, eax
jne 0x1004230b
push 4
push eax
push 9
lea ecx, [esp + 0x88]
call fcn.1005f860
push eax
mov eax, dword [esp + 0xb0]
lea ecx, [eax + 0x30]
call fcn.10060280
mov ecx, dword [0x1018c540]
mov eax, 0x395
cdq
idiv ecx
mov esi, dword [0x1018c53c]
mov eax, 0x2e2
mov bl, byte [0x1018c566]
mov dl, byte [edx + esi]
push edx
push 0xffffffffffffffa4
cdq
idiv ecx
mov cl, 0xda
sub cl, bl
mov al, byte [edx + esi]
push eax
push ecx
call fcn.100398e0
add esp, 0x10
mov byte [0x1018c568], al
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
cmp esi, edi
mov dword [esp + 0xc0], 0xffffffff
je 0x10042334
mov ecx, esi
call fcn.1000b660
add esi, 0x10
cmp esi, edi
jne 0x10042322
mov esi, dword [esp + 0x70]
mov edx, dword [esp + 0x78]
lea ecx, [esp + 0x6c]
sub edx, esi
sar edx, 4
push edx
push esi
call fcn.10045e70
jmp 0x10042e17
mov eax, 0x14
mov ecx, 5
mov word [esp + 0x1a], ax
mov word [esp + 0x2c], ax
mov al, byte [0x10197f44]
mov word [esp + 0x18], 0x45
test al, 1
mov word [esp + 0x1c], 0x3e
mov word [esp + 0x1e], 0x2f
mov word [esp + 0x20], 2
mov word [esp + 0x22], 0x1d
mov word [esp + 0x24], 0xc
mov word [esp + 0x26], 0x3c
mov word [esp + 0x28], 0x2a
mov word [esp + 0x2a], cx
mov word [esp + 0x2e], cx
mov word [esp + 0x30], 0x15
mov word [esp + 0x32], 0x11
jne 0x100423dd
or al, 1
mov ecx, 0x10197f48
mov byte [0x10197f44], al
lea eax, [esp + 0x18]
push eax
call fcn.10043ae0
push 0x10043100
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f48
call fcn.100456b0
push eax
push esi
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042436
mov al, byte [0x1018c568]
push 2
dec al
push 0
push 0xb
lea ecx, [esp + 0x88]
mov byte [0x1018c568], al
call fcn.1005f860
mov ecx, dword [esp + 0xac]
push eax
add ecx, 0x30
call fcn.10060280
mov al, byte [esp + 0xa8]
inc al
mov byte [0x1018c564], al
jmp 0x10042e03
mov eax, 0x6c
mov esi, 0x72
mov word [esp + 0x24], ax
mov word [esp + 0x2c], ax
mov word [esp + 0x30], ax
mov al, byte [0x10197f4c]
mov edx, 0x7e
mov ecx, 0x76
mov edi, 0x73
mov word [esp + 0x18], bx
test al, 1
mov word [esp + 0x1a], 0x70
mov word [esp + 0x1c], si
mov word [esp + 0x1e], dx
mov word [esp + 0x20], cx
mov word [esp + 0x22], 0x71
mov word [esp + 0x26], 0x40
mov word [esp + 0x28], di
mov word [esp + 0x2a], cx
mov word [esp + 0x2e], bp
mov word [esp + 0x32], 0x40
mov word [esp + 0x34], 0x6a
mov word [esp + 0x36], 0x6f
mov word [esp + 0x38], bx
mov word [esp + 0x3a], dx
mov word [esp + 0x3c], bp
mov word [esp + 0x3e], 0x7a
jne 0x100424ef
lea edx, [esp + 0x18]
or al, 1
push 0x1f
push edx
mov ecx, 0x10197f50
mov byte [0x10197f4c], al
call fcn.100447c0
push 0x10043110
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f50
call fcn.100456b0
mov ebx, dword [esp + 0xb0]
push eax
push ebx
call fcn.10045fe0
add esp, 8
test al, al
je 0x100425be
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10042569
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197e90
call fcn.100456b0
mov ecx, dword [esp + 0x14]
push eax
push ecx
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042e03
call fcn.100449e0
mov ecx, eax
call fcn.10058e80
mov edx, dword [eax]
push 0
push 1
mov ecx, eax
call dword [edx + 0xc]
mov al, byte [0x1018c564]
mov cl, 0x11
imul cl
sub al, 0x59
push eax
call fcn.100391c0
add esp, 4
mov byte [0x1018c564], al
jmp 0x10042e03
mov eax, 0x1a
mov ebp, 0xd
mov word [esp + 0x18], ax
mov word [esp + 0x20], ax
mov eax, 0x1c
mov ecx, 0xc
mov word [esp + 0x26], ax
mov word [esp + 0x34], ax
mov al, byte [0x10197f54]
mov word [esp + 0x1a], bp
test al, 1
mov word [esp + 0x1c], cx
mov word [esp + 0x1e], 0x11
mov word [esp + 0x22], bp
mov word [esp + 0x24], 0xb
mov word [esp + 0x28], 0x1b
mov word [esp + 0x2a], 7
mov word [esp + 0x2c], 0x1d
mov word [esp + 0x2e], 0x18
mov word [esp + 0x30], cx
mov word [esp + 0x32], 9
mov word [esp + 0x36], bp
jne 0x10042660
mov cl, al
lea edx, [esp + 0x18]
or cl, 1
push edx
mov byte [0x10197f54], cl
mov ecx, 0x10197f58
call fcn.10045640
push 0x10043120
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f58
call fcn.100456b0
push eax
push ebx
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042734
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x100426d3
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197e90
call fcn.100456b0
mov ecx, dword [esp + 0x14]
push eax
push ecx
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042e03
push 2
push 0
push 7
lea ecx, [esp + 0x88]
call fcn.1005f860
mov edx, dword [esp + 0xac]
push eax
lea ecx, [edx + 0x30]
call fcn.10060280
mov eax, 0x183
cdq
idiv dword [0x1018c540]
mov eax, dword [0x1018c53c]
mov cl, byte [edx + eax]
mov byte [0x1018c566], cl
jmp 0x10042e03
mov eax, 0x23
mov ecx, 0x34
mov word [esp + 0x1a], ax
mov word [esp + 0x22], ax
mov word [esp + 0x2c], ax
mov word [esp + 0x36], ax
mov al, byte [0x10197f5c]
mov edx, 0x22
test al, 1
mov word [esp + 0x18], cx
mov word [esp + 0x1c], dx
mov word [esp + 0x1e], 0x2f
mov word [esp + 0x20], cx
mov word [esp + 0x24], 0x25
mov word [esp + 0x26], 0x32
mov word [esp + 0x28], 0x35
mov word [esp + 0x2a], 0x19
mov word [esp + 0x2e], 0x28
mov word [esp + 0x30], 0x27
mov word [esp + 0x32], 0x24
mov word [esp + 0x34], 0x2a
mov word [esp + 0x38], dx
jne 0x100427dc
mov dl, al
push 0x46
or dl, 1
mov ecx, 0x10197f60
mov byte [0x10197f5c], dl
lea edx, [esp + 0x1c]
push edx
call fcn.1000f240
push 0x10043130
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f60
call fcn.100456b0
push eax
push ebx
call fcn.10045fe0
add esp, 8
test al, al
je 0x100428c5
mov cl, byte [esp + 0xa8]
mov al, cl
imul cl
push eax
push 0x7a
push 0x63
call fcn.10039200
mov byte [0x1018c565], al
mov al, byte [0x10197e8c]
add esp, 0xc
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x1004286c
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197e90
call fcn.100456b0
mov ecx, dword [esp + 0x14]
push eax
push ecx
call fcn.10045fe0
add esp, 8
push eax
call fcn.100449e0
mov ecx, eax
call fcn.10058e90
mov ecx, eax
call fcn.1006e800
call fcn.100449e0
mov ecx, eax
call fcn.10058e90
mov ecx, eax
call fcn.1006f410
test al, al
je 0x10042e03
push 2
push 0
push 7
lea ecx, [esp + 0x88]
jmp 0x10042dee
mov eax, 0x65
mov ecx, 0x5f
mov word [esp + 0x1a], ax
mov word [esp + 0x22], ax
mov eax, 0x6d
mov word [esp + 0x18], si
mov word [esp + 0x2c], ax
mov word [esp + 0x38], ax
mov al, byte [0x10197f64]
mov word [esp + 0x1c], 0x64
test al, 1
mov word [esp + 0x1e], 0x69
mov word [esp + 0x20], si
mov word [esp + 0x24], 0x63
mov word [esp + 0x26], 0x74
mov word [esp + 0x28], di
mov word [esp + 0x2a], cx
mov word [esp + 0x2e], 0x61
mov word [esp + 0x30], 0x78
mov word [esp + 0x32], cx
mov word [esp + 0x34], 0x6e
mov word [esp + 0x36], 0x75
jne 0x10042967
or al, 1
push 0
mov byte [0x10197f64], al
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x10197f68
call fcn.1000f240
push 0x10043140
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f68
call fcn.100456b0
push eax
push ebx
call fcn.10045fe0
add esp, 8
test al, al
je 0x100429ad
mov ecx, dword [esp + 0x14]
push 0xa
push ecx
call fcn.10021b70
add esp, 8
push eax
call fcn.100449e0
mov ecx, eax
call fcn.10058e90
mov ecx, eax
call fcn.1006ef90
dec byte [0x1018c566]
jmp 0x10042e03
mov eax, 0xeb
mov edx, 0xf0
mov word [esp + 0x1e], ax
mov word [esp + 0x2c], ax
mov word [esp + 0x30], ax
mov word [esp + 0x34], ax
mov eax, 0xe3
mov word [esp + 0x18], dx
mov word [esp + 0x36], ax
mov word [esp + 0x42], ax
mov al, byte [0x10197f6c]
mov word [esp + 0x20], dx
mov ecx, 0xe7
mov edi, 0xe6
mov esi, 0xf6
mov ebx, 0xdd
mov edx, 0xee
mov word [esp + 0x1a], cx
test al, 1
mov word [esp + 0x1c], di
mov word [esp + 0x22], cx
mov word [esp + 0x24], 0xe1
mov word [esp + 0x26], si
mov word [esp + 0x28], 0xf1
mov word [esp + 0x2a], bx
mov word [esp + 0x2e], 0xec
mov word [esp + 0x32], si
mov word [esp + 0x38], dx
mov word [esp + 0x3a], bx
mov word [esp + 0x3c], di
mov word [esp + 0x3e], cx
mov word [esp + 0x40], dx
mov word [esp + 0x44], 0xfb
jne 0x10042a85
mov bl, al
lea edx, [esp + 0x18]
or bl, 1
push 0x82
push edx
mov ecx, 0x10197f70
mov byte [0x10197f6c], bl
call fcn.10045350
push 0x10043150
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f70
call fcn.100456b0
mov esi, dword [esp + 0xb0]
push eax
push esi
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042ad9
mov eax, dword [esp + 0x14]
push 0xa
push eax
call fcn.10021b70
add esp, 8
push eax
call fcn.100449e0
mov ecx, eax
call fcn.10058e90
mov ecx, eax
call fcn.1006eb90
mov cl, byte [esp + 0xa8]
mov byte [0x1018c567], cl
jmp 0x10042e03
mov eax, 0x17
mov edi, 1
mov word [esp + 0x1a], ax
mov word [esp + 0x22], ax
mov word [esp + 0x26], ax
mov al, byte [0x10197f74]
test al, 1
mov word [esp + 0x18], 0x42
mov word [esp + 0x1c], di
mov word [esp + 0x1e], bp
mov word [esp + 0x20], 0x1b
mov word [esp + 0x24], 6
mov word [esp + 0x28], 7
mov word [esp + 0x2a], 0x2c
mov word [esp + 0x2c], 0x3b
mov word [esp + 0x2e], di
mov word [esp + 0x30], 9
mov word [esp + 0x32], bp
mov word [esp + 0x34], 0x18
jne 0x10042b6a
lea edx, [esp + 0x18]
or al, 1
push edx
mov ecx, 0x10197f78
mov byte [0x10197f74], al
call fcn.10044190
push 0x10043160
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f78
call fcn.100456b0
push eax
push esi
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042baa
mov eax, dword [esp + 0x14]
push 0xa
push eax
call fcn.10021b70
add esp, 8
push eax
call fcn.100449e0
mov ecx, eax
call fcn.10058e90
mov ecx, eax
call fcn.1006ed80
jmp 0x10042e03
mov eax, 7
mov esi, 0x58
mov word [esp + 0x24], ax
mov word [esp + 0x2c], ax
mov word [esp + 0x2e], ax
mov eax, 0x1d
mov word [esp + 0x30], ax
mov word [esp + 0x32], ax
mov eax, 0xd
mov ebp, 0x33
mov word [esp + 0x36], ax
mov word [esp + 0x40], ax
mov al, byte [0x10197f7c]
mov ebx, 0x36
test al, 1
mov word [esp + 0x18], si
mov word [esp + 0x1a], 0x1c
mov word [esp + 0x1c], 0x19
mov word [esp + 0x1e], di
mov word [esp + 0x20], bp
mov word [esp + 0x22], bx
mov word [esp + 0x26], 4
mov word [esp + 0x28], 0x35
mov word [esp + 0x2a], bx
mov word [esp + 0x34], 8
mov word [esp + 0x38], bp
mov word [esp + 0x3a], 0x3b
mov word [esp + 0x3c], di
mov word [esp + 0x3e], 9
mov word [esp + 0x42], 0x18
jne 0x10042c72
lea ecx, [esp + 0x18]
or al, 1
push ecx
mov ecx, 0x10197f80
mov byte [0x10197f7c], al
call fcn.10044730
push 0x10043170
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f80
call fcn.100456b0
mov edx, dword [esp + 0xb0]
push eax
push edx
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042cb9
mov eax, dword [esp + 0x14]
push 0xa
push eax
call fcn.10021b70
add esp, 8
push eax
call fcn.100449e0
mov ecx, eax
call fcn.10058ea0
mov ecx, eax
call fcn.10088490
jmp 0x10042e03
mov eax, 5
mov word [esp + 0x18], si
mov word [esp + 0x2c], ax
mov word [esp + 0x30], ax
mov al, byte [0x10197f84]
mov word [esp + 0x1a], 0x1c
test al, 1
mov word [esp + 0x1c], 0x19
mov word [esp + 0x1e], di
mov word [esp + 0x20], bp
mov word [esp + 0x22], bx
mov word [esp + 0x24], 7
mov word [esp + 0x26], 4
mov word [esp + 0x28], 0x35
mov word [esp + 0x2a], 0x2a
mov word [esp + 0x2e], 0x14
mov word [esp + 0x32], 0x15
mov word [esp + 0x34], 0x11
jne 0x10042d4b
mov bl, al
lea ecx, [esp + 0x18]
or bl, 1
push ecx
mov ecx, 0x10197f88
mov byte [0x10197f84], bl
call fcn.10044190
push 0x10043180
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197f88
call fcn.100456b0
mov edx, dword [esp + 0xb0]
push eax
push edx
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042e03
mov al, byte [0x10197e8c]
mov word [esp + 0x7c], 0x98
test al, 1
mov word [esp + 0x7e], 0x9e
mov word [esp + 0x80], 0x99
mov word [esp + 0x82], 0x89
jne 0x10042dc5
mov bl, al
lea eax, [esp + 0x7c]
or bl, 1
push 0xec
push eax
mov ecx, 0x10197e90
mov byte [0x10197e8c], bl
call fcn.1002a5f0
push 0x10043a50
call fcn.1013c36b
add esp, 4
mov ecx, 0x10197e90
call fcn.100456b0
mov ecx, dword [esp + 0x14]
push eax
push ecx
call fcn.10045fe0
add esp, 8
test al, al
je 0x10042e03
push 2
push 0
push 8
lea ecx, [esp + 0x88]
call fcn.1005f860
mov edx, dword [esp + 0xac]
push eax
lea ecx, [edx + 0x30]
call fcn.10060280
lea ecx, [esp + 0x6c]
mov dword [esp + 0xc0], 0xffffffff
call fcn.10023eb0
mov al, 1
mov ecx, dword [esp + 0xb8]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0xb4
ret 4