Function at 0x40cce4
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
push esi
mov dword [ebp - 0x20], 0x44
mov ecx, dword [0x4230fc]
sub ecx, 0x318
and ecx, dword [0x4230d8]
sub ecx, 0x31ce0
mov eax, dword [0x4230e4]
xor edx, edx
div ecx
mov dword [0x4230e4], eax
mov dword [ebp - 0x7c], 0x110
mov edx, dword [0x42310c]
add edx, dword [0x423104]
mov eax, dword [0x4230f4]
or eax, edx
mov dword [0x4230f4], eax
mov dword [ebp - 0xc], 0xffffffad
mov edx, dword [0x4230f4]
shl edx, 0x9e
mov ecx, dword [0x4230e4]
shr edx, cl
mov eax, dword [0x423110]
and eax, edx
mov dword [0x423110], eax
mov dword [ebp - 0x28], 0xffffff77
mov ecx, 0xffffff26
sub ecx, dword [0x423118]
mov edx, dword [0x4230f0]
sar edx, cl
mov eax, dword [0x4230e8]
xor eax, edx
mov dword [0x4230e8], eax
mov dword [ebp - 0x64], 0xfffffdc0
mov ecx, dword [0x4230c8]
imul ecx, dword [0x4230c4]
mov edx, dword [0x4230c4]
lea ecx, [edx + ecx - 0x7d7d0]
mov eax, dword [0x42310c]
xor edx, edx
div ecx
mov dword [0x42310c], eax
mov dword [ebp - 0x78], 0xfffffc51
mov edx, dword [0x423108]
add edx, dword [0x423108]
or edx, dword [0x4230fc]
mov eax, dword [0x423118]
add eax, edx
mov dword [0x423118], eax
mov dword [ebp - 0x88], 0x1ac
mov ecx, dword [0x423104]
or ecx, 0xffffffb0
or ecx, 0xfffffd14
mov edx, dword [0x4230d0]
or edx, ecx
mov dword [0x4230d0], edx
mov dword [ebp - 0x1c], 0xfffffd3f
mov ecx, dword [0x4230cc]
and ecx, dword [0x423114]
and ecx, dword [0x4230c4]
sub ecx, 0x2f5d0
mov eax, dword [0x4230c0]
xor edx, edx
div ecx
mov dword [0x4230c0], eax
mov dword [ebp - 0x18], 0x1ff
mov edx, dword [0x42310c]
xor edx, dword [0x4230fc]
or edx, dword [0x4230ec]
mov dword [0x4230f8], edx
mov dword [ebp - 0x34], 0xffffff0f
mov ecx, dword [0x4230e0]
imul ecx, ecx, 0x2df
mov esi, dword [0x4230f4]
shl esi, cl
add esi, 0x2f5d0
mov eax, dword [0x4230c0]
xor edx, edx
div esi
mov dword [0x4230c0], eax
mov dword [ebp - 4], 0xe6
mov eax, dword [0x423104]
mov ecx, dword [0x4230d4]
sar eax, cl
mov dword [0x4230cc], eax
mov dword [ebp - 0x30], 0xfffffc5a
mov ecx, dword [0x4230ec]
add ecx, dword [0x4230c8]
and ecx, 0xfffffd14
mov edx, dword [0x423110]
sub edx, ecx
mov dword [0x423110], edx
mov dword [ebp - 0x40], 0xfffffc6a
mov eax, dword [0x423114]
mov ecx, dword [0x4230fc]
sar eax, cl
mov ecx, dword [0x4230c4]
and ecx, eax
mov dword [0x4230c4], ecx
mov dword [ebp - 0x84], 0x39
mov edx, dword [0x4230c8]
imul edx, dword [0x4230f4]
mov eax, dword [0x4230dc]
sub eax, edx
mov dword [0x4230dc], eax
mov dword [ebp - 0x58], 0xffffffb1
mov ecx, dword [0x4230f4]
or ecx, 0xfffffc70
mov edx, dword [0x4230cc]
xor edx, ecx
mov dword [0x4230cc], edx
mov dword [ebp - 0x3c], 0xfffffd7a
mov eax, dword [0x4230d4]
mov ecx, dword [0x4230cc]
shr eax, cl
mov ecx, dword [0x423110]
shl eax, cl
mov dword [0x4230c8], eax
mov dword [ebp - 0x74], 0xfffffeef
mov ecx, dword [0x423118]
sub ecx, dword [0x4230f8]
mov edx, dword [0x4230c8]
sub edx, ecx
mov dword [0x4230c8], edx
mov dword [ebp - 0x24], 0xffffff6f
mov eax, dword [0x4230e4]
or eax, dword [0x4230e0]
mov ecx, dword [0x42310c]
sub ecx, eax
mov dword [0x42310c], ecx
mov dword [ebp - 0x48], 0xfffffc37
mov edx, dword [0x42310c]
and edx, 0xfffffde5
and edx, dword [0x4230d0]
mov eax, dword [0x423118]
sub eax, edx
mov dword [0x423118], eax
mov dword [ebp - 0x70], 0xfffffca1
mov ecx, dword [0x4230d4]
shr ecx, 0x29
mov edx, dword [0x4230f4]
xor edx, ecx
mov dword [0x423110], edx
mov dword [ebp - 0x54], 0xffffff46
mov eax, dword [0x4230ec]
or al, 0x83
mov ecx, dword [0x4230d8]
xor ecx, eax
mov dword [0x4230d8], ecx
mov dword [ebp - 0x44], 0xffffff70
mov edx, dword [0x423100]
add edx, 0x3b9
mov eax, dword [0x4230c4]
xor eax, edx
mov dword [0x4230c4], eax
mov dword [ebp - 8], 0xfffffc0c
mov ecx, dword [0x423108]
and ecx, 0x80
mov edx, dword [0x4230c4]
or edx, ecx
mov dword [0x4230d0], edx
mov dword [ebp - 0x14], 0xfffffea9
mov ecx, dword [0x4230d0]
add ecx, dword [0x423100]
or ecx, 0xfffffd25
sub ecx, 0x7b4a8
mov eax, dword [0x4230c8]
xor edx, edx
div ecx
mov dword [0x4230c8], eax
mov dword [ebp - 0x50], 0x350
mov edx, dword [0x4230e0]
mov ecx, dword [0x423100]
shr edx, cl
mov eax, dword [0x4230e8]
add eax, edx
mov dword [0x4230e8], eax
mov ecx, dword [ebp - 0x30]
sub ecx, 0x74
mov edx, dword [ebp - 0x44]
xor edx, ecx
mov eax, dword [ebp - 0x14]
or eax, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x74]
imul ecx, ecx, 0x15d
mov edx, dword [ebp - 0x18]
lea ecx, [edx + ecx - 0x2a7b0]
mov eax, dword [ebp - 0x84]
xor edx, edx
div ecx
mov dword [ebp - 0x84], eax
mov edx, 0xfffffe0b
mov ecx, dword [ebp - 0x74]
sar edx, cl
mov eax, dword [ebp - 8]
and eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x28]
or ecx, 0xfffffe11
mov edx, dword [ebp - 0x70]
add edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x84]
xor eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
sub ecx, eax
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x74]
or edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x3c]
and eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x24]
lea eax, [edx + ecx - 0x372]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x58]
lea ecx, [edx + ecx - 0x57a58]
mov eax, dword [ebp - 0x20]
xor edx, edx
div ecx
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x28]
add edx, 0x126
mov eax, dword [ebp - 8]
and eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0xc]
or ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x70]
add edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x78]
and eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x40]
xor ecx, eax
mov edx, dword [ebp - 0x88]
add edx, ecx
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x44]
add eax, 0x339
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
xor ecx, 0x202
mov edx, dword [ebp - 0x1c]
or edx, ecx
mov eax, dword [ebp - 0x70]
sub eax, edx
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 8]
xor ecx, 0x316
mov edx, dword [ebp - 0x40]
and edx, ecx
mov dword [ebp - 0x40], edx
mov eax, 0x1bc
sub eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x58]
add ecx, eax
mov dword [ebp - 0x58], ecx
mov esi, 0xfffffcce
mov ecx, dword [ebp - 0x78]
sar esi, cl
add esi, 0x98198
mov eax, dword [ebp - 0x34]
xor edx, edx
div esi
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x3c]
add edx, 0x162
mov eax, dword [ebp - 0x14]
xor eax, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x54]
or ecx, 0x11b
mov edx, dword [ebp - 0xc]
and edx, ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x7c]
shr eax, cl
mov ecx, dword [ebp - 0x3c]
shl eax, cl
mov ecx, dword [ebp - 0x70]
sub ecx, eax
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x24], 0xffffffc8
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
shr edx, cl
mov eax, dword [ebp - 0x78]
xor eax, edx
mov ecx, dword [ebp - 0x84]
or ecx, eax
mov dword [ebp - 0x84], ecx
mov edx, dword [ebp - 4]
or edx, 0xfffffc00
mov eax, dword [ebp - 0x78]
add eax, edx
mov dword [ebp - 0x78], eax
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x84]
shl edx, cl
or edx, dword [ebp - 8]
mov eax, dword [ebp - 0x7c]
sub eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x88]
and ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
sub edx, ecx
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x70]
imul eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 8]
and ecx, eax
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 0x24]
shr edx, cl
or edx, 0x37a
mov eax, dword [ebp - 0x40]
or eax, edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x30]
imul ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x24]
xor edx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x50]
shr eax, cl
mov ecx, dword [ebp - 4]
and ecx, eax
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x7c]
or edx, 0x79
mov eax, dword [ebp - 0x28]
or eax, edx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x14]
shl ecx, 0xaf
xor ecx, 0x10b
mov edx, dword [ebp - 0x14]
and edx, ecx
mov dword [ebp - 0x14], edx
mov eax, 0xa7
mov ecx, dword [ebp - 0x7c]
sar eax, cl
mov ecx, dword [ebp - 0x30]
and ecx, eax
mov edx, dword [ebp - 0x70]
or edx, ecx
mov dword [ebp - 0x70], edx
mov ecx, dword [ebp - 0x74]
imul ecx, dword [ebp - 0xc]
sub ecx, 0xebd70
mov eax, dword [ebp - 0x14]
xor edx, edx
div ecx
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x88]
add edx, dword [ebp - 8]
mov eax, dword [ebp - 0x3c]
or eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, 0x149
sub ecx, dword [ebp - 0x54]
mov esi, 0x365
shl esi, cl
add esi, 0xcb9d0
mov eax, dword [ebp - 0x58]
xor edx, edx
div esi
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 8]
and ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x78]
sub edx, ecx
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 0x74]
sub ecx, dword [ebp - 0x34]
mov eax, 0xfffffe85
shl eax, cl
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x58]
imul edx, dword [ebp - 0x18]
mov eax, dword [ebp - 8]
or eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x3c]
shl ecx, 0x20
mov edx, dword [ebp - 0x34]
sub edx, ecx
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x64]
or eax, dword [ebp - 0x14]
or eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x48]
or ecx, eax
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x20]
mov dword [ebp - 0x20], edx
mov eax, 0xfffffcf1
mov ecx, dword [ebp - 0x40]
shl eax, cl
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x74]
sar ecx, 0xbf
mov edx, dword [ebp - 0x24]
and edx, ecx
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0xc]
xor ecx, 0x12f
sub ecx, 0x53408
mov eax, dword [ebp - 0x50]
xor edx, edx
div ecx
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x30]
or edx, 0xffffff2f
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x50]
xor eax, 0x89
mov ecx, dword [ebp - 0x34]
and ecx, eax
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x88]
shl edx, 0x32
mov eax, dword [ebp - 0xc]
or eax, edx
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x20]
xor ecx, dword [ebp - 8]
or ecx, 0xfffffd2e
mov edx, dword [ebp - 0x84]
xor edx, ecx
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x18]
shr eax, cl
mov ecx, dword [ebp - 0x54]
add ecx, eax
mov dword [ebp - 0x54], ecx
mov ecx, dword [ebp - 0x20]
imul ecx, ecx, 0xffffffca
mov edx, dword [ebp - 0x3c]
shr edx, cl
mov eax, dword [ebp - 0x78]
and eax, edx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x30]
or ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x70]
sub edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x54]
shl eax, cl
and al, 0x95
mov ecx, dword [ebp - 0x78]
and ecx, eax
mov dword [ebp - 0x78], ecx
mov ecx, dword [ebp - 0x40]
imul ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x70]
sar edx, cl
mov eax, dword [ebp - 0x44]
xor eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0xc]
imul ecx, dword [ebp - 0x78]
add ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
xor edx, ecx
mov dword [ebp - 0x30], edx
mov eax, 0xfffffc82
mov ecx, dword [ebp - 8]
shl eax, cl
mov ecx, dword [ebp - 0xc]
or ecx, eax
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0x44]
shl ecx, 0xaf
add ecx, 0xae510
mov eax, dword [ebp - 0x34]
xor edx, edx
div ecx
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x88]
or edx, 0xffffff34
mov eax, dword [ebp - 0x54]
or eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x3c]
and ecx, 0x16b
xor ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x54]
and edx, ecx
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x7c]
sub eax, 0x1a7
mov ecx, dword [ebp - 0x28]
sub ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, 0xfffffcfb
sub edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x34]
add eax, edx
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 8]
shr edx, cl
mov eax, dword [ebp - 0x30]
and eax, edx
mov ecx, dword [ebp - 0x28]
xor ecx, eax
mov dword [ebp - 0x28], ecx
mov esi, 0x233
mov ecx, dword [ebp - 0x7c]
sar esi, cl
add esi, 0x75eb8
mov eax, dword [ebp - 0x28]
xor edx, edx
div esi
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 8]
or edx, 0x8df80
mov eax, dword [ebp - 0x7c]
add eax, edx
mov dword [ebp - 0x7c], eax
mov edx, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x3c]
shl edx, cl
mov eax, dword [ebp - 0x48]
xor eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x64]
imul ecx, ecx, 0xfffffc27
mov edx, dword [ebp - 0x20]
add edx, ecx
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x48]
add eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x50]
sub ecx, eax
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x50]
sub edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x20]
and eax, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x18]
sub ecx, 0x177
xor ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x3c]
and edx, ecx
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x54]
shr eax, cl
mov ecx, dword [ebp - 4]
and ecx, eax
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x3c]
shl edx, cl
mov eax, dword [ebp - 0x44]
xor eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x70]
and ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x28]
add edx, ecx
mov dword [ebp - 0x28], edx
mov ecx, 0xffffff58
sub ecx, dword [ebp - 0x34]
mov eax, 0x15a
sar eax, cl
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x18]
xor ecx, 0xfff4712e
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x84]
xor edx, 0xfffffee2
mov eax, dword [ebp - 0x34]
or eax, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x78]
add ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x40]
or edx, ecx
mov dword [ebp - 0x40], edx
mov eax, 0x182
sub eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x30]
add edx, 0x9037c
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 0x88]
and ecx, 0xfffffe19
add ecx, 0xb69e0
mov eax, dword [ebp - 0x1c]
xor edx, edx
div ecx
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x58]
and edx, 0x394
mov eax, dword [ebp - 4]
xor eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x18]
or ecx, 0xfffffe63
mov edx, dword [ebp - 0x1c]
add edx, ecx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x48]
shl eax, cl
and eax, dword [ebp - 0x58]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x78]
or ecx, 0x38c
mov dword [ebp - 0x78], ecx
mov edx, dword [ebp - 0x34]
add edx, 0x37
and edx, 0xfffffe12
mov eax, dword [ebp - 0x28]
add eax, edx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0xc]
sub ecx, 0x65
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
xor ecx, dword [ebp - 0x34]
sub ecx, 0xa96f0
mov eax, dword [ebp - 0x40]
xor edx, edx
div ecx
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x20]
imul edx, edx, 0xfffffd9a
shl edx, 0xe3
mov eax, dword [ebp - 0x3c]
and eax, edx
mov dword [ebp - 0x3c], eax
mov edx, 0xfffffe43
mov ecx, dword [ebp - 0x88]
shl edx, cl
mov eax, dword [ebp - 0x14]
sub eax, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x74]
sub ecx, dword [ebp - 0x18]
xor ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x64]
xor edx, ecx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x58], 0xffffffff
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x44]
sub ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x54]
imul edx, dword [ebp - 0x58]
add edx, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
or eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x58]
add ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x14]
sub edx, ecx
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 8]
lea edx, [ecx + eax + 0x346]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 4]
shr eax, cl
mov ecx, dword [ebp - 0x48]
or ecx, eax
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x70]
sub edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x34]
and eax, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x74]
sub ecx, 0x353
sar ecx, 0x8e
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x84]
and edx, 0x135
mov eax, dword [ebp - 0x64]
add eax, edx
mov dword [ebp - 0x64], eax
mov ecx, 0xfffffc9b
sub ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x18]
and edx, ecx
mov eax, dword [ebp - 0x20]
sub eax, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x34]
add ecx, 0xb3ee8
mov eax, dword [ebp - 0x28]
xor edx, edx
div ecx
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x3c]
shl edx, 0xec
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x78]
xor eax, 0x113
or eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
add ecx, eax
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x14]
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x50]
add eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x40]
shl ecx, 0x91
mov edx, dword [ebp - 0x7c]
xor edx, ecx
mov dword [ebp - 0x7c], edx
mov eax, 0x29d
mov ecx, dword [ebp - 0x64]
shl eax, cl
mov ecx, dword [ebp - 0x44]
add ecx, eax
mov dword [ebp - 0x44], ecx
mov ecx, 0xffffff46
sub ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x1c]
shr edx, cl
mov eax, dword [ebp - 0x3c]
xor eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x70]
xor ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 4]
or edx, ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x50]
shl eax, 0xff
mov ecx, dword [ebp - 0x64]
add ecx, eax
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x64]
shl edx, cl
mov eax, dword [ebp - 0x70]
or eax, edx
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 8]
shr ecx, 3
xor ecx, 0xfffffe57
mov edx, dword [ebp - 0x50]
add edx, ecx
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x24]
and eax, 0xf0
mov ecx, dword [ebp - 0xc]
xor ecx, eax
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x64], edx
mov ecx, dword [ebp - 0x7c]
imul ecx, ecx, 0xfffffe9f
sub ecx, 0x5e7b8
mov eax, dword [ebp - 0x20]
xor edx, edx
div ecx
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x54]
and eax, edx
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x28]
shl edx, cl
mov ecx, dword [ebp - 0x84]
xor ecx, edx
sub ecx, 0x7b4a8
mov eax, dword [ebp - 0x20]
xor edx, edx
div ecx
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x78]
sub edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x24]
and eax, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x20]
sar edx, cl
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x58]
xor eax, 0x51c
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x40]
imul ecx, ecx, 0xfffffc65
and ecx, 0xfffffcb5
mov dword [ebp - 0x48], ecx
mov ecx, dword [ebp - 0x20]
imul ecx, dword [ebp - 0x50]
imul ecx, dword [ebp - 0x48]
add ecx, 0x99138
mov eax, dword [ebp - 0x70]
xor edx, edx
div ecx
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x30]
shr edx, 0xa3
mov eax, dword [ebp - 0x44]
sub eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x24]
add ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x50]
shl edx, cl
mov eax, dword [ebp - 0x1c]
sub eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x84]
imul ecx, ecx, 0x2d7
sar ecx, 0x65
mov edx, dword [ebp - 0x64]
xor edx, ecx
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x74]
imul eax, eax, 0xffffff14
mov ecx, dword [ebp - 0x58]
sub ecx, eax
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x40]
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x50]
add eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x24]
and ecx, dword [ebp - 0x58]
and ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x30]
and edx, ecx
mov dword [ebp - 0x30], edx
mov eax, 0x2ed
sub eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x28]
sub ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x88]
imul edx, edx, 0xffffff0b
or edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0xc]
add eax, edx
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x14]
add ecx, dword [ebp - 0x48]
or ecx, 0xffffff2c
mov dword [ebp - 0x88], ecx
mov edx, dword [ebp - 0x84]
and edx, 0xfffffd87
mov eax, dword [ebp - 0x84]
or eax, edx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x78]
shl edx, cl
mov eax, dword [ebp - 0x14]
add eax, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0xc]
sub ecx, 0xbf
or ecx, 0xfffffd16
mov edx, dword [ebp - 0x30]
add edx, ecx
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x70]
sar ecx, 0xf5
sub ecx, 0xcd528
mov eax, dword [ebp - 0x18]
xor edx, edx
div ecx
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x50]
imul ecx, ecx, 0xfffffd44
sub ecx, 0x3efd0
mov eax, dword [ebp - 0x3c]
xor edx, edx
div ecx
mov dword [ebp - 0x3c], eax
mov esi, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x40]
shl esi, cl
add esi, 0x6c660
mov eax, dword [ebp - 0x74]
xor edx, edx
div esi
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x58]
or edx, dword [ebp - 0x18]
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x30]
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 8]
or ecx, 0x3eb
or ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x24]
add edx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x7c]
and eax, 0xfffffd7a
mov ecx, dword [ebp - 0x58]
or ecx, eax
mov dword [ebp - 0x58], ecx
mov ecx, 0x273
sub ecx, dword [ebp - 0x70]
mov edx, 0xffffffb5
sar edx, cl
mov eax, dword [ebp - 0x24]
and eax, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x70]
sub ecx, 0x1f0
and ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x24]
sub edx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x34]
imul eax, eax, 0xfffffee5
mov dword [ebp - 0x64], eax
mov ecx, 0xfffffc4c
sub ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x74]
and edx, ecx
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0x20]
and eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
and ecx, eax
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 8]
imul ecx, ecx, 0xffffff31
sub ecx, 0x3a980
mov eax, dword [ebp - 0x28]
xor edx, edx
div ecx
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x74]
imul edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x54]
and eax, edx
mov ecx, dword [ebp - 0xc]
and ecx, eax
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x3c]
shl edx, 0x49
mov eax, dword [ebp - 0x30]
add eax, edx
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x88]
lea eax, [edx + ecx + 0xb4]
mov ecx, dword [ebp - 0x7c]
sub ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x30]
sar edx, cl
mov eax, dword [ebp - 8]
sub eax, edx
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x30]
sar edx, cl
mov eax, dword [ebp - 0x74]
or eax, edx
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x64], 0xfffe2d5c
mov ecx, dword [ebp - 0x7c]
xor ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 8]
xor edx, ecx
mov dword [ebp - 8], edx
mov eax, 0xfffffdae
mov ecx, dword [ebp - 0x7c]
sar eax, cl
and al, 0x93
mov ecx, dword [ebp - 0x3c]
sub ecx, eax
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x24]
add edx, 0x204
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x28]
imul eax, eax, 0xfffffeb1
or eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x84]
or ecx, eax
mov dword [ebp - 0x84], ecx
mov edx, 0x2c1
mov ecx, dword [ebp - 0x54]
shl edx, cl
xor edx, 0xfffffc88
mov eax, dword [ebp - 0x64]
xor eax, edx
mov dword [ebp - 0x64], eax
mov edx, 0xfffffdd7
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov eax, dword [ebp - 0x58]
and eax, edx
mov ecx, dword [ebp - 0x44]
or ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x3c]
xor edx, 0xffffff90
mov eax, dword [ebp - 0x3c]
or eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x58]
imul ecx, ecx, 0x2d9
xor ecx, 0xfffffec5
mov edx, dword [ebp - 0x7c]
and edx, ecx
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x88]
xor eax, 0x2ba
mov ecx, dword [ebp - 0x30]
or ecx, eax
mov edx, dword [ebp - 0x48]
xor edx, ecx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x3c]
sub eax, dword [ebp - 8]
and eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x7c]
add ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x3c]
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x88]
and ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x54]
sub edx, ecx
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x88]
xor eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffe11
mov edx, dword [ebp - 0x88]
add edx, ecx
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 4]
sub eax, 0x2c0
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x24]
imul ecx, ecx, 0xfffffdd2
mov edx, dword [ebp - 0x64]
xor edx, ecx
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 8]
and eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x34]
xor ecx, eax
sub ecx, 0x1b198
mov eax, dword [ebp - 0x7c]
xor edx, edx
div ecx
mov dword [ebp - 0x7c], eax
mov edx, 0xffffff78
sub edx, dword [ebp - 0x24]
xor edx, 0xfffffc62
mov eax, dword [ebp - 0x18]
xor eax, edx
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x88]
sub ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x30]
and edx, ecx
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 0x7c]
or ecx, dword [ebp - 0x20]
sub ecx, 0x1d0d8
mov eax, dword [ebp - 0x24]
xor edx, edx
div ecx
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x24]
shr edx, 0x89
or edx, 0xffffffb3
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x34]
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x64]
and ecx, dword [ebp - 0x7c]
mov edx, dword [ebp - 0x74]
or edx, ecx
mov dword [ebp - 0x74], edx
mov eax, 0xfffffd34
sub eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x40]
sub ecx, eax
mov dword [ebp - 0x40], ecx
mov edx, 0xffffff51
mov ecx, dword [ebp - 0x84]
sar edx, cl
mov eax, dword [ebp - 0x58]
sub eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x40]
and ecx, 0x309
mov edx, dword [ebp - 0x70]
and edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x58]
add ecx, dword [ebp - 0x54]
or ecx, 0xffffffaf
sub ecx, 0x94700
mov eax, dword [ebp - 0x48]
xor edx, edx
div ecx
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x18]
xor edx, 0xfffffc8d
or edx, 0xffffff68
mov eax, dword [ebp - 0x50]
add eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x78]
xor ecx, 0xffffffda
add ecx, 0xcd528
mov eax, dword [ebp - 0x28]
xor edx, edx
div ecx
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x48]
or edx, dword [ebp - 0x28]
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x88]
lea edx, [ecx + eax + 0x290]
mov dword [ebp - 0x88], edx
mov eax, 0x27c
mov ecx, dword [ebp - 0x14]
sar eax, cl
or eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x28]
xor ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x24]
add edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x58]
and eax, edx
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 8]
shr edx, cl
and edx, 0x18a
mov eax, dword [ebp - 0x40]
and eax, edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x54]
imul ecx, ecx, 0x1e7
mov edx, dword [ebp - 0x44]
and edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x30]
add eax, 0x197
xor eax, 0xfffffd48
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x30]
or cl, 0xb6
add ecx, 0x5c490
mov eax, dword [ebp - 0x84]
xor edx, edx
div ecx
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x7c]
xor ecx, dword [ebp - 8]
or ecx, 0xfffffeb8
sub ecx, 0x91820
mov eax, dword [ebp - 0x30]
xor edx, edx
div ecx
mov dword [ebp - 0x30], eax
mov edx, 0x329
mov ecx, dword [ebp - 0x44]
sar edx, cl
mov ecx, dword [ebp - 0x50]
sar edx, cl
mov eax, dword [ebp - 0x28]
and eax, edx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp + 8]
add ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x18]
shr edx, cl
mov eax, dword [ebp - 0x1c]
add eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x34]
imul ecx, ecx, 0xfffffdca
mov edx, dword [ebp - 0xc]
add edx, ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x48]
imul eax, eax, 0xffffff8e
and eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x44]
and ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x48]
and edx, 0xffffffdd
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x3c]
and eax, 0x22d
mov ecx, dword [ebp - 0x14]
add ecx, eax
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 4]
sar edx, cl
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x24]
shr eax, cl
mov ecx, dword [ebp - 0xc]
add ecx, eax
mov dword [ebp - 0xc], ecx
mov ecx, dword [ebp - 0xc]
or ecx, 0xfffffd53
sub ecx, 0xcec98
mov eax, dword [ebp - 0x18]
xor edx, edx
div ecx
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x88]
imul edx, edx, 0xfffffce0
add edx, 0x106
mov eax, dword [ebp - 0x58]
sub eax, edx
mov dword [ebp - 0x58], eax
mov edx, 0xfffffe5b
mov ecx, dword [ebp - 0x78]
sar edx, cl
mov eax, dword [ebp - 0x84]
xor eax, edx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x20]
sar edx, cl
mov eax, dword [ebp - 0x1c]
or eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 4]
sub ecx, 0x2a4
xor ecx, 0xfffffebb
mov edx, dword [ebp - 0x44]
sub edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 4]
shr eax, cl
mov ecx, dword [ebp - 0x54]
sub ecx, eax
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0x18]
xor edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x54]
xor eax, edx
mov dword [ebp - 0x54], eax
mov edx, 0xfffffd27
mov ecx, dword [ebp - 0x34]
shl edx, cl
mov eax, dword [ebp - 0x14]
or eax, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x70]
shl ecx, 0xc3
mov edx, dword [ebp - 0x44]
and edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x64]
shr eax, 0xdd
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x74]
sub ecx, 0x3c
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp - 0x88]
xor edx, 0xfffffd27
or edx, 0xfffffe4d
mov eax, dword [ebp - 0x3c]
sub eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x74]
add ecx, dword [ebp - 0x30]
mov edx, dword [ebp - 0x64]
xor edx, ecx
mov eax, dword [ebp - 0x58]
or eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x50]
or ecx, dword [ebp - 0xc]
or ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x88]
xor edx, ecx
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x40]
xor eax, 0x1d0
mov ecx, dword [ebp - 0x1c]
or ecx, eax
mov edx, dword [ebp - 0x34]
or edx, ecx
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x14]
sub eax, 0x3cea
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
or ecx, 0xfffffcda
or ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x88]
and edx, ecx
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x88]
shl eax, 0x1e
or eax, 0xfffffda9
mov ecx, dword [ebp - 0x14]
sub ecx, eax
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x84]
imul edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x14]
and eax, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x7c]
sub ecx, dword [ebp - 0x48]
xor ecx, dword [ebp - 0x70]
mov dword [ebp - 0x64], ecx
mov edx, 0xfffffe5d
mov ecx, dword [ebp - 0x54]
shl edx, cl
mov eax, dword [ebp - 8]
or eax, edx
mov dword [ebp - 8], eax
mov dword [ebp - 0x1c], 0xffffffbf
mov ecx, dword [ebp - 0x18]
add ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x7c]
or edx, ecx
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x4c]
add eax, 0x78
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x58]
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x88]
lea ecx, [eax + edx + 0x336]
mov dword [ebp - 0x88], ecx
mov edx, dword [ebp - 0x1c]
xor edx, 0xffffff42
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x40]
and eax, 0xffff6eb0
mov ecx, dword [ebp - 0x40]
sub ecx, eax
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x30]
and edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x50]
add eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0xc]
or ecx, 0xffffff53
mov edx, dword [ebp - 0x34]
add edx, ecx
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x28]
sub eax, 0x38b
mov ecx, dword [ebp - 0x74]
xor ecx, eax
mov edx, dword [ebp - 8]
add edx, ecx
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x24]
imul eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x74]
add ecx, eax
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp - 4]
sar edx, 0x2e
mov eax, dword [ebp - 0x7c]
add eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x70]
and edx, 0xfffffe09
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0x70]
sub eax, 0x3ab
mov ecx, dword [ebp - 0x1c]
and ecx, eax
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 4]
sub ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1c]
sub ecx, 0x8b678
mov eax, dword [ebp - 0x40]
xor edx, edx
div ecx
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x60]
mov eax, dword [edx]
mov dword [ebp - 0x6c], eax
mov ecx, dword [ebp - 0x40]
imul ecx, dword [ebp - 0x1c]
and ecx, 0x359
sub ecx, 0x75eb8
mov eax, dword [ebp - 0x18]
xor edx, edx
div ecx
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x84]
sub edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x64]
sub eax, edx
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 4]
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x3c]
xor edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x34]
xor eax, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x84]
sar ecx, 0x5b
mov edx, dword [ebp - 0x1c]
xor edx, ecx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x84]
sub eax, 0x2f8
mov ecx, dword [ebp - 0x14]
xor ecx, eax
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x64]
imul edx, dword [ebp - 4]
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x50]
and eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 8]
lea eax, [edx + ecx + 0x2c1]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x7c]
shr edx, cl
mov eax, dword [ebp - 0x64]
or eax, edx
mov ecx, dword [ebp - 0x1c]
or ecx, eax
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0xc]
shl edx, 0xd4
mov eax, dword [ebp - 0x74]
and eax, edx
mov ecx, dword [ebp - 0x28]
xor ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x6c]
add edx, dword [ebp + 8]
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x30]
shl eax, cl
mov ecx, dword [ebp - 0x3c]
and ecx, eax
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x18]
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3c]
xor eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x48]
add ecx, dword [ebp - 0x50]
sub ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x14]
and edx, ecx
mov dword [ebp - 0x14], edx
mov ecx, dword [ebp - 0xc]
xor ecx, 0xfffffd44
sub ecx, 0x67840
mov eax, dword [ebp - 0x3c]
xor edx, edx
div ecx
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x1c]
shl edx, cl
mov eax, dword [ebp - 0x58]
add eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x44]
or ecx, 0xfffffe22
mov edx, dword [ebp - 0x58]
add edx, ecx
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x44]
shr eax, cl
shl eax, 0x62
mov ecx, dword [ebp - 0xc]
add ecx, eax
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x88]
and edx, 0xfffffd87
mov eax, dword [ebp - 0x3c]
sub eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x34]
and ecx, 0xffffffcb
mov dword [ebp - 0x34], ecx
mov edx, 0xffffff64
sub edx, dword [ebp - 0x40]
mov eax, dword [ebp - 4]
sub eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x30]
xor ecx, 0x41
mov dword [ebp - 0x30], ecx
mov edx, 0xfffffe41
sub edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
xor eax, edx
mov ecx, dword [ebp - 0x44]
xor ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, 0xfffffc8d
sub edx, dword [ebp - 0x20]
xor edx, 0x232
mov eax, dword [ebp - 0x74]
or eax, edx
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ecx + 0x20]
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x58]
imul eax, eax, 0xfffffd80
mov ecx, dword [ebp - 0x30]
and ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x34]
or edx, 0xfffffe07
mov dword [ebp - 0x28], edx
mov ecx, dword [ebp - 0x24]
xor ecx, 0xfffffe35
sub ecx, 0x29810
mov eax, dword [ebp - 0x84]
xor edx, edx
div ecx
mov dword [ebp - 0x84], eax
mov edx, 0x65
mov ecx, dword [ebp - 0x44]
sar edx, cl
mov eax, dword [ebp - 0x20]
sub eax, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x44]
sub ecx, dword [ebp - 0x24]
sub ecx, 0xc5828
mov eax, dword [ebp - 0x3c]
xor edx, edx
div ecx
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x70]
sub edx, 0x1cf
mov eax, dword [ebp - 0x44]
xor eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x18]
imul ecx, ecx, 0xfffffc07
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x70], 0xffffff11
mov edx, dword [ebp - 0x64]
sub edx, 0x61
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x78]
xor eax, 0x200
mov ecx, dword [ebp - 0x18]
and ecx, eax
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x74]
and edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x70]
sub eax, edx
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x68]
add ecx, dword [ebp + 8]
mov dword [ebp - 0x68], ecx
mov edx, dword [ebp - 0x3c]
xor edx, 0xfffffe1a
mov eax, dword [ebp - 0x3c]
or eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x48]
lea ecx, [edx + ecx - 0x9e733]
mov eax, dword [ebp - 0x58]
xor edx, edx
div ecx
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x18]
imul edx, edx, 0xffffff72
and edx, 0xfffffcf2
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x70]
shl eax, 0xc7
mov ecx, dword [ebp - 0x28]
sub ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x30]
imul edx, dword [ebp - 8]
mov eax, dword [ebp - 0x40]
sub eax, edx
mov ecx, dword [ebp - 0x30]
xor ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x64]
xor edx, 0xffffff21
mov eax, dword [ebp - 0x7c]
add eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x70]
xor ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x70]
or edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 8]
imul eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 8]
xor ecx, eax
mov edx, dword [ebp - 0x58]
sub edx, ecx
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x24]
shr eax, 0x37
mov ecx, dword [ebp - 0x70]
or ecx, eax
mov dword [ebp - 0x70], ecx
mov edx, 0xfffffdb2
mov ecx, dword [ebp - 0x3c]
sar edx, cl
and edx, 0xfffffe04
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x64]
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x84]
xor ecx, 0xfffffd33
xor ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x7c]
xor edx, ecx
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax + 0x18]
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x28]
shr edx, cl
mov eax, dword [ebp - 0x24]
xor eax, edx
mov ecx, dword [ebp - 0x44]
add ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x20]
sub edx, 0x259
or edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x78]
sub eax, edx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x34]
imul ecx, ecx, 0xffffffdc
xor ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0x58]
and edx, ecx
mov dword [ebp - 0x58], edx
mov ecx, dword [ebp - 0x44]
sub ecx, 0x11217
mov eax, dword [ebp - 0x74]
xor edx, edx
div ecx
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0xc]
add ecx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x30]
shr edx, cl
mov eax, dword [ebp - 0x7c]
or eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, 0xfffffc33
sub ecx, dword [ebp - 0x74]
sub ecx, 0x73
mov edx, dword [ebp - 0x48]
sub edx, ecx
mov dword [ebp - 0x48], edx
mov eax, 0xfffffccf
mov ecx, dword [ebp - 0x1c]
sar eax, cl
xor eax, 0x154
mov ecx, dword [ebp - 0x58]
or ecx, eax
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x30]
imul edx, edx, 0xffffffae
and edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x50]
sub eax, edx
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x58]
sar edx, cl
or edx, dword [ebp - 0x88]
mov dword [ebp - 8], edx
mov eax, 0xfffffd60
mov ecx, dword [ebp - 0x40]
shl eax, cl
mov ecx, dword [ebp - 0x28]
and ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 8]
and edx, dword [ebp - 0x28]
xor edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x54]
add eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x3c]
and ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 4]
and edx, ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x70]
or eax, 0xfffffdb6
mov ecx, dword [ebp - 0x14]
and ecx, eax
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp - 0x74]
shl ecx, 0xd0
add ecx, 0xda818
mov eax, dword [ebp - 0x24]
xor edx, edx
div ecx
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x64]
and edx, 0xfffffca3
mov eax, dword [ebp - 0x48]
or eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x3c]
and ecx, 0xfffffe28
mov edx, dword [ebp - 0xc]
add edx, ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x24]
xor edx, edx
mov ecx, 0xfffb3234
div ecx
mov dword [ebp - 0x24], eax
mov ecx, 0xffffff60
sub ecx, dword [ebp - 0x70]
xor ecx, 0xfffffd93
sub ecx, 0xd2730
mov eax, dword [ebp - 0x88]
cdq
idiv ecx
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 8]
shl edx, 0xac
mov ecx, dword [ebp - 8]
shl edx, cl
mov eax, dword [ebp - 0x48]
or eax, edx
mov dword [ebp - 0x48], eax
mov esi, dword [ebp - 4]
mov ecx, dword [ebp - 0x44]
shl esi, cl
add esi, 0x94700
mov eax, dword [ebp - 0x7c]
xor edx, edx
div esi
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x78]
shl ecx, 0x11
mov edx, dword [ebp - 0x54]
sub edx, ecx
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x1c]
xor ecx, eax
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x40]
shl edx, cl
and edx, 0xfffffcbc
mov eax, dword [ebp - 0x7c]
xor eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x70]
sub ecx, 0x57
mov dword [ebp - 0x64], ecx
mov ecx, dword [ebp - 0xc]
sub ecx, 0x263
mov edx, 0xffffffd4
sar edx, cl
mov eax, dword [ebp - 8]
add eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x74]
sub ecx, 0x1a6
xor ecx, 0xfffffefb
mov dword [ebp - 0x14], ecx
mov edx, 0x10c
sub edx, dword [ebp - 0x3c]
xor edx, 0x251
mov eax, dword [ebp - 0x20]
sub eax, edx
mov dword [ebp - 0x20], eax
mov edx, 0xfffffcca
mov ecx, dword [ebp - 0x30]
shl edx, cl
mov eax, dword [ebp - 0x34]
and eax, edx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x38], 0
jmp 0x40e607
mov ecx, dword [ebp - 0x38]
add ecx, 1
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x38]
cmp edx, dword [ebp - 0x5c]
jge 0x4103ca
mov eax, dword [ebp - 0x44]
imul eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x64]
sub ecx, eax
mov edx, dword [ebp - 0x24]
sub edx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x48]
shr eax, 0x77
or eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x24]
or ecx, eax
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x7c]
lea ecx, [eax + edx - 0x274e8]
mov eax, dword [ebp - 0x64]
xor edx, edx
div ecx
mov dword [ebp - 0x64], eax
mov edx, 0xfffffef8
mov ecx, dword [ebp - 0x54]
shl edx, cl
mov eax, dword [ebp - 0x70]
or eax, edx
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x48]
shl edx, cl
or edx, 0xfffffe6f
mov eax, dword [ebp - 0x54]
add eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x3c]
xor ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 4]
xor edx, ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x20]
sar eax, 4
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x34]
xor ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x24]
or edx, ecx
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x88]
or ecx, 0x3a4
add ecx, 0x2cad8
mov eax, dword [ebp - 0x54]
cdq
idiv ecx
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 0x28]
shl edx, 0x2b
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x50]
or eax, dword [ebp - 0x74]
or eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xc]
sar edx, cl
xor edx, dword [ebp - 8]
mov eax, dword [ebp - 0x24]
add eax, edx
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x20]
shr edx, cl
shl edx, 0x76
mov eax, dword [ebp - 0x24]
and eax, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x20]
imul ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x3c]
or edx, ecx
mov eax, dword [ebp - 0x64]
sub eax, edx
mov dword [ebp - 0x64], eax
mov esi, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x7c]
shl esi, cl
sub esi, 0x399e0
mov eax, dword [ebp - 0x24]
xor edx, edx
div esi
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x88]
and edx, ecx
mov dword [ebp - 0x88], edx
mov esi, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x84]
sar esi, cl
sub esi, 0xad570
mov eax, dword [ebp - 0x70]
cdq
idiv esi
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x40]
add eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x70]
or ecx, eax
mov edx, dword [ebp - 0x70]
or edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x74]
or eax, 0xffffff76
mov ecx, dword [ebp - 0x40]
xor ecx, eax
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x44]
shl edx, cl
or edx, 0xfffffda8
mov eax, dword [ebp - 0x54]
sub eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x40]
lea eax, [edx + ecx + 0x1f4]
mov ecx, dword [ebp - 0xc]
add ecx, eax
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x30]
imul edx, edx, 0x363
mov ecx, dword [ebp - 0x58]
xor ecx, edx
add ecx, 0x70cb0
mov eax, dword [ebp - 0x70]
xor edx, edx
div ecx
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x34]
shr edx, 0x22
mov eax, dword [ebp - 0x20]
or eax, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 8]
and ecx, dword [ebp - 0x24]
xor ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x24]
sub edx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x48]
sub eax, 0x3df
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x54]
imul ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x44]
and edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x58]
and eax, 0x2f6
mov ecx, dword [ebp - 0x24]
xor ecx, eax
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x64]
and edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x78]
add eax, edx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x74]
and ecx, dword [ebp - 0x84]
mov edx, dword [ebp - 0x34]
add edx, ecx
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x68]
mov ecx, dword [eax]
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x48]
imul edx, edx, 0xffffffcf
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x44]
shl eax, cl
mov ecx, dword [ebp - 0x7c]
sub ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x84]
sar edx, 0x73
mov eax, dword [ebp - 0x20]
or eax, edx
mov ecx, dword [ebp - 0x30]
xor ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x58]
xor edx, 0xfffffdc0
mov eax, dword [ebp - 0x84]
and eax, edx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x58]
shl edx, cl
mov eax, dword [ebp - 8]
or eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x7c]
xor ecx, 0xd9
mov edx, dword [ebp - 8]
and edx, ecx
mov dword [ebp - 8], edx
mov ecx, dword [ebp - 0x84]
or ecx, dword [ebp - 0x84]
sub ecx, 0x6ca48
mov eax, dword [ebp - 0x40]
cdq
idiv ecx
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x74]
shl edx, cl
or dl, 0xa6
mov eax, dword [ebp - 4]
xor eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x14]
imul ecx, dword [ebp - 0x50]
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0xc]
lea ecx, [eax + edx - 0x119]
mov edx, dword [ebp - 0x54]
and edx, ecx
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x7c]
lea edx, [ecx + eax + 0x6c]
mov eax, dword [ebp - 8]
or eax, edx
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x24]
imul edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x44]
shl edx, cl
mov eax, dword [ebp - 0x74]
and eax, edx
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x80]
add ecx, dword [ebp + 8]
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x1c]
and edx, 0x3d0
mov eax, dword [ebp - 0x58]
xor eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x88]
imul ecx, ecx, 0xfffffc7d
mov edx, dword [ebp - 0x70]
add edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x14]
and eax, 0xfffffc37
mov ecx, dword [ebp - 0x28]
and ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x34]
sub edx, 1
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
sub ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x74]
xor edx, 0x29a
mov eax, dword [ebp - 0x64]
or eax, edx
mov ecx, dword [ebp - 0x28]
or ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x48]
xor edx, 0x1eb
mov eax, dword [ebp - 4]
sub eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x7c]
imul ecx, ecx, 0xfffffeb3
sub ecx, 0xf8c78
mov eax, dword [ebp - 0x48]
xor edx, edx
div ecx
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x58]
xor edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
and eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, 0xffffff66
sub ecx, dword [ebp - 0x34]
and ecx, 0x119
sub ecx, 0x84d00
mov eax, dword [ebp - 0x1c]
xor edx, edx
div ecx
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x7c]
shr edx, 0x76
mov eax, dword [ebp - 0x14]
or eax, edx
mov ecx, dword [ebp - 0x64]
sub ecx, eax
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 4]
shl edx, cl
mov eax, dword [ebp - 0x74]
sub eax, edx
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x30]
shl edx, cl
or edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x54]
and eax, edx
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 0x18]
add edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x44]
shr edx, cl
mov eax, dword [ebp - 0x3c]
add eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x74]
sub ecx, 0xac
mov edx, dword [ebp - 0x84]
or edx, ecx
mov dword [ebp - 0x84], edx
mov ecx, dword [ebp - 0x30]
add ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x88]
sar eax, cl
mov ecx, dword [ebp - 0x34]
xor ecx, eax
mov dword [ebp - 0x34], ecx
mov edx, 0xfffffd9d
mov ecx, dword [ebp - 0x54]
shl edx, cl
and edx, 0xfffffd68
mov eax, dword [ebp - 0x3c]
add eax, edx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], 0xffffffff
mov ecx, dword [ebp - 0x30]
xor ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x24]
xor edx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x34]
or eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x88]
sub ecx, eax
mov dword [ebp - 0x88], ecx
mov edx, dword [ebp - 0x24]
and edx, 0x39d
xor edx, 0xffffff5e
mov eax, dword [ebp - 0x7c]
xor eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x58]
or ecx, dword [ebp - 0x78]
or ecx, 0x290
mov edx, dword [ebp - 0x44]
sub edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x88]
add eax, dword [ebp - 0x24]
and eax, 0xfffffdcc
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x74]
xor edx, ecx
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x74]
imul eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x18]
shr eax, cl
mov ecx, dword [ebp - 0x24]
sub ecx, eax
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x84]
sub edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x34]
or eax, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0x28f
and ecx, 0x4a
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x28]
xor edx, 0xfffffc3d
or edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x48]
sub eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x50]
imul ecx, dword [ebp - 0x1c]
and ecx, 0x2e7
mov edx, dword [ebp - 0x54]
xor edx, ecx
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x64]
imul eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x84]
and ecx, eax
mov dword [ebp - 0x84], ecx
mov ecx, dword [ebp - 0x58]
imul ecx, dword [ebp - 0x28]
sub ecx, 0x7b0c0
mov eax, dword [ebp - 0x54]
xor edx, edx
div ecx
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x78]
or eax, 0xffffffa6
mov ecx, dword [ebp - 0x28]
xor ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x24]
xor edx, 0x102
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 8]
sar eax, cl
shl eax, 0x57
mov ecx, dword [ebp - 0x20]
add ecx, eax
mov dword [ebp - 0x20], ecx
mov edx, 0x3a1
sub edx, dword [ebp - 0x34]
and edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x58]
or eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x64]
sub ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x3c]
or edx, ecx
mov eax, dword [ebp - 0x78]
add eax, edx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x78]
xor ecx, 0x2cd
mov edx, dword [ebp - 8]
or edx, ecx
mov eax, dword [ebp - 0x7c]
sub eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, 0xfffffd0c
sub ecx, dword [ebp - 0x74]
mov edx, dword [ebp - 0x54]
and edx, ecx
mov eax, dword [ebp - 0x24]
or eax, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x84]
imul ecx, ecx, 0x36b
and ecx, 0xffffffd9
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp - 0x58]
or edx, dword [ebp - 0x70]
mov dword [ebp - 0x54], edx
mov eax, 0xfffffcfe
mov ecx, dword [ebp - 0x88]
sar eax, cl
mov ecx, dword [ebp - 0x64]
and ecx, eax
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x88]
or edx, 0xffffffb0
mov eax, dword [ebp - 0x34]
add eax, edx
mov dword [ebp - 0x34], eax
mov ecx, 0x254
sub ecx, dword [ebp - 0x70]
sub ecx, 0x8c618
mov eax, dword [ebp - 0x28]
xor edx, edx
div ecx
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x48]
sub edx, dword [ebp - 4]
shl edx, 0xd0
mov eax, dword [ebp - 0x58]
add eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x10]
shl ecx, 3
mov edx, dword [ebp - 0x10]
shr edx, 0x1d
or ecx, edx
mov dword [ebp - 0x10], ecx
mov eax, dword [ebp - 0x24]
imul eax, dword [ebp - 0x7c]
or al, 0xaa
mov ecx, dword [ebp - 0x40]
and ecx, eax
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x20]
add edx, 0x22f
shl edx, 0xd9
mov dword [ebp - 0x44], edx
mov eax, 0xfffffc16
sub eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x30]
lea ecx, [eax + ecx - 0xd2f00]
mov eax, dword [ebp - 0x28]
xor edx, edx
div ecx
mov dword [ebp - 0x28], eax
mov edx, dword [ebp - 0x88]
sub edx, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x40]
shl edx, cl
mov eax, dword [ebp - 0x7c]
sub eax, edx
mov dword [ebp - 0x7c], eax
mov edx, 0xffffffd9
mov ecx, dword [ebp - 0x18]
shl edx, cl
or edx, 0xfffffe42
mov eax, dword [ebp - 0x78]
xor eax, edx
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 4]
sub ecx, 0x296
mov edx, dword [ebp - 0xc]
shl edx, cl
mov eax, dword [ebp - 0xc]
and eax, edx
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x20]
xor ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x48]
and edx, ecx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x78]
shr eax, cl
or eax, dword [ebp - 0xc]
mov dword [ebp - 8], eax
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x3c]
sar edx, cl
mov eax, dword [ebp - 0x40]
and eax, edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x28]
or ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x74]
and edx, ecx
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x44]
or eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x88]
sub ecx, eax
mov dword [ebp - 0x88], ecx
mov ecx, dword [ebp - 0x48]
add ecx, 0x5d
mov edx, dword [ebp - 0x58]
shl edx, cl
mov eax, dword [ebp - 0x64]
sub eax, edx
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x50]
shl edx, cl
mov eax, dword [ebp - 0x58]
or eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x24]
or ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x78]
sub edx, ecx
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x7c]
xor eax, dword [ebp - 0x64]
or eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x48]
add ecx, eax
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x24]
or edx, dword [ebp - 8]
mov eax, dword [ebp - 0x48]
add eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x80]
movsx edx, byte [ecx]
or edx, 0x20
mov eax, dword [ebp - 0x10]
xor eax, edx
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x28]
xor ecx, 0xfffffe62
mov esi, dword [ebp - 0x70]
or esi, ecx
add esi, 0x40f10
mov eax, dword [ebp - 0x24]
xor edx, edx
div esi
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0x1c]
sub edx, 0x377
mov ecx, dword [ebp - 0x18]
shr edx, cl
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x18]
and eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x40]
or ecx, eax
mov edx, dword [ebp - 0x70]
and edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x34]
xor eax, 0xfffffd80
mov ecx, dword [ebp - 0xc]
add ecx, eax
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x14]
and edx, 0x1d2
mov eax, dword [ebp - 0x50]
or eax, edx
mov dword [ebp - 0x50], eax
mov edx, 0xffffff51
mov ecx, dword [ebp - 0x50]
shl edx, cl
mov ecx, dword [ebp - 0x74]
sar edx, cl
mov eax, dword [ebp - 0x48]
xor eax, edx
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x70]
shl edx, cl
and dl, 0x1d
mov eax, dword [ebp - 0x84]
add eax, edx
mov dword [ebp - 0x84], eax
mov edx, 0xfffffd39
mov ecx, dword [ebp - 0x30]
shl edx, cl
or edx, 0x1ce
mov eax, dword [ebp - 0x84]
or eax, edx
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 8]
imul ecx, ecx, 0xa5
mov edx, dword [ebp - 0x24]
or edx, ecx
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x3c]
xor edx, edx
mov ecx, 0xfff332bc
div ecx
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x80]
add edx, 1
mov dword [ebp - 0x80], edx
mov eax, dword [ebp - 0x80]
movsx ecx, byte [eax]
test ecx, ecx
jne 0x40eb72
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x18]
sar edx, cl
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x54]
or eax, 0xffffffad
mov dword [ebp - 8], eax
mov ecx, 0xfffffd15
sub ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x34]
add edx, ecx
mov dword [ebp - 0x34], edx
mov ecx, dword [ebp - 0x7c]
xor ecx, 0xfffffd51
add ecx, 0x9c40
mov eax, dword [ebp - 0x40]
xor edx, edx
div ecx
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x14]
sub edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x7c]
and eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x20]
and ecx, 0x252
mov edx, dword [ebp - 0x50]
xor edx, ecx
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x30]
and ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x70]
add edx, dword [ebp - 0x64]
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x78]
or ecx, eax
mov dword [ebp - 0x78], ecx
mov edx, dword [ebp - 0x78]
imul edx, edx, 0xfffffe12
mov eax, dword [ebp - 0x3c]
or eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x30]
imul ecx, ecx, 0x26e
mov edx, dword [ebp - 0xc]
or edx, ecx
mov eax, dword [ebp - 0x50]
xor eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x10]
xor ecx, 0x26533b
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x48]
or edx, 0xfffffe04
mov eax, dword [ebp - 8]
or eax, edx
mov dword [ebp - 8], eax
mov edx, 0x2ab
mov ecx, dword [ebp - 0x58]
sar edx, cl
and edx, dword [ebp - 0x1c]
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x40]
shr eax, cl
mov ecx, dword [ebp - 0x74]
xor ecx, eax
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp - 0x84]
and edx, 0xffffff8b
and edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x28]
xor eax, edx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
add ecx, 0x356
mov edx, dword [ebp - 0x28]
and edx, ecx
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x34]
xor ecx, eax
mov dword [ebp - 0x34], ecx
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x28]
shr edx, cl
mov eax, dword [ebp - 0x88]
and eax, edx
mov dword [ebp - 0x88], eax
mov edx, 0x334
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov eax, dword [ebp - 0x14]
or eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x50]
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x50]
sub edx, 0x20f
mov eax, dword [ebp - 0x1c]
and eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x74]
xor ecx, 0x3fa
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x28]
lea ecx, [eax + edx - 0x38f]
mov edx, dword [ebp - 0x78]
and edx, ecx
mov dword [ebp - 0x78], edx
mov eax, 0xfffd8e46
sub eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x88]
sub ecx, eax
mov dword [ebp - 0x88], ecx
mov edx, dword [ebp - 0x24]
shl edx, 0x75
mov eax, dword [ebp - 0x24]
xor eax, edx
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 4]
shl edx, cl
xor edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x84]
sub eax, edx
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x48]
add edx, ecx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x7c]
imul eax, dword [ebp - 0x58]
and eax, 0x2e6
mov ecx, dword [ebp - 0x7c]
and ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0xc]
sub edx, 0x2c2
mov eax, dword [ebp - 0x40]
sub eax, edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x34]
sub ecx, 0x234
mov edx, dword [ebp - 0x58]
sub edx, ecx
mov dword [ebp - 0x58], edx
mov ecx, dword [ebp - 0x20]
sub ecx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x40]
shl eax, cl
mov ecx, dword [ebp - 8]
xor ecx, eax
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x40]
xor edx, dword [ebp - 0xc]
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x74]
sub eax, 0x79
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x24]
shl edx, cl
mov eax, dword [ebp - 0x18]
add eax, edx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x7c]
xor edx, edx
mov ecx, 0xfffe9c63
div ecx
mov dword [ebp - 0x7c], eax
mov edx, dword [ebp - 0x78]
mov ecx, dword [ebp - 4]
shr edx, cl
mov eax, dword [ebp - 0x74]
add eax, edx
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp + 0xc]
cmp ecx, dword [ebp - 0x10]
jne 0x4100ac
mov edx, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x84]
shl edx, cl
or edx, 0xfffffcb3
mov eax, dword [ebp - 0x88]
and eax, edx
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 0x7c]
or cl, 0x87
sub ecx, 0xce4c8
mov eax, dword [ebp - 0x58]
xor edx, edx
div ecx
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x18]
and edx, 0xfffffcfa
or edx, dword [ebp - 8]
mov eax, dword [ebp - 0x70]
sub eax, edx
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x20]
sub edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x54]
shr edx, cl
mov eax, dword [ebp - 4]
sub eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x20]
or ecx, dword [ebp - 0x78]
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x44]
or edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x84]
add eax, edx
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 4]
sub ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x30]
and edx, ecx
mov eax, dword [ebp - 0x58]
or eax, edx
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x14]
shl edx, cl
sar edx, 0x5c
mov eax, dword [ebp - 0x44]
sub eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x54]
add ecx, 0x21c
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x78]
or edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x30]
sub eax, edx
mov dword [ebp - 0x30], eax
mov esi, 0x39b
mov ecx, dword [ebp - 0x84]
sar esi, cl
add esi, 0x3ff70
mov eax, dword [ebp - 0x1c]
xor edx, edx
div esi
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
sub ecx, 0x30e
or ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x7c]
xor edx, ecx
mov dword [ebp - 0x7c], edx
mov eax, 0xfffffda6
mov ecx, dword [ebp - 8]
sar eax, cl
mov ecx, dword [ebp - 0x1c]
and ecx, eax
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x3c]
sub edx, 0x251
mov ecx, dword [ebp - 0x20]
shr edx, cl
mov eax, dword [ebp - 0x24]
and eax, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x44]
xor ecx, dword [ebp - 8]
sub ecx, 0x34bc0
mov eax, dword [ebp - 0x44]
xor edx, edx
div ecx
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x44]
shr edx, cl
xor edx, 0xfffffc98
mov eax, dword [ebp - 0x18]
xor eax, edx
mov dword [ebp - 0x18], eax
mov edx, 0xa8
mov ecx, dword [ebp - 0x7c]
shl edx, cl
mov ecx, dword [ebp - 0x48]
sar edx, cl
mov eax, dword [ebp - 0x34]
or eax, edx
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x70]
shl edx, cl
mov eax, dword [ebp - 0x54]
sub eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ecx + 0x24]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x64]
or eax, 0xfffffdb7
mov ecx, dword [ebp - 0x48]
sub ecx, eax
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x84]
sub edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x84]
and eax, edx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x3c]
shr edx, cl
mov ecx, dword [ebp - 0x14]
shl edx, cl
mov eax, dword [ebp - 0x48]
or eax, edx
mov dword [ebp - 0x48], eax
mov edx, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x50]
shr edx, cl
mov ecx, dword [ebp - 0x64]
shr edx, cl
mov eax, dword [ebp - 0x88]
and eax, edx
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 0x18]
add ecx, 0xce340
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x48]
imul edx, edx, 0xfffffd63
or edx, 0xfffffecb
mov eax, dword [ebp - 0x54]
or eax, edx
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 4]
mov ecx, dword [ebp - 0x34]
shl edx, cl
xor edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x70]
sub eax, edx
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x40]
imul ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 4]
sub edx, ecx
mov eax, dword [ebp - 0x28]
or eax, edx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x50]
add ecx, dword [ebp - 0x50]
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x30]
shr edx, cl
mov eax, dword [ebp - 0x54]
and eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x28]
imul ecx, ecx, 0xfffffeb2
mov edx, dword [ebp - 0x74]
and edx, ecx
mov dword [ebp - 0x74], edx
mov esi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x3c]
shl esi, cl
sar esi, 0x4a
add esi, 0xa4100
mov eax, dword [ebp - 0xc]
xor edx, edx
div esi
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x84]
imul eax, dword [ebp - 0x70]
mov dword [ebp - 0x18], eax
mov edx, 0x25
mov ecx, dword [ebp - 0xc]
shl edx, cl
and edx, 0x23d
mov eax, dword [ebp - 0x30]
or eax, edx
mov dword [ebp - 0x30], eax
mov esi, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x88]
shl esi, cl
add esi, 0x683f8
mov eax, dword [ebp - 0x74]
xor edx, edx
div esi
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x20]
shl edx, 0xd8
mov ecx, dword [ebp - 0x14]
shl edx, cl
mov eax, dword [ebp - 0x84]
xor eax, edx
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x44]
imul ecx, ecx, 0xfffffcc1
and ecx, 0x248
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x58]
sub edx, 0x270
or dl, 0xe5
mov eax, dword [ebp - 0x20]
add eax, edx
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x54]
sub ecx, dword [ebp - 0x1c]
shr ecx, 0xc7
mov edx, dword [ebp - 0x34]
and edx, ecx
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x24]
xor eax, 0xfffffda8
mov ecx, dword [ebp - 0x7c]
add ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x78]
imul edx, edx, 0x18e
mov eax, dword [ebp - 0xc]
sub eax, edx
mov ecx, dword [ebp - 0x1c]
xor ecx, eax
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x84]
add ecx, dword [ebp - 0x24]
shr ecx, 0xec
sub ecx, 0xa0280
mov eax, dword [ebp - 0x3c]
xor edx, edx
div ecx
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x50]
xor edx, 0xfffffd42
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x88]
shr eax, cl
mov ecx, dword [ebp - 0x70]
add ecx, eax
mov dword [ebp - 0x70], ecx
mov esi, 0x24
mov ecx, dword [ebp - 0x30]
shl esi, cl
sub esi, 0xd9490
mov eax, dword [ebp - 0x20]
cdq
idiv esi
mov dword [ebp - 0x20], eax
mov edx, 0x227
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
and eax, edx
mov ecx, dword [ebp - 0x54]
sub ecx, eax
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x78]
shl edx, cl
mov ecx, dword [ebp - 0x70]
sar edx, cl
mov eax, dword [ebp - 0x30]
or eax, edx
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0x64]
add ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x34]
add edx, ecx
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x74]
cdq
mov ecx, 0xfffdb9f7
idiv ecx
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x50]
shl edx, cl
mov eax, dword [ebp - 4]
sub eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x28]
imul ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x50]
and edx, ecx
mov eax, dword [ebp - 0x24]
add eax, edx
mov dword [ebp - 0x24], eax
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xc]
shl edx, cl
mov eax, dword [ebp - 0x58]
and eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x58]
sub ecx, dword [ebp - 0xc]
mov edx, dword [ebp - 0x44]
xor edx, ecx
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x40]
or eax, 0xfffffed7
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x30]
and ecx, 0x3e9
mov edx, dword [ebp - 0x28]
xor edx, ecx
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 0x70]
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x44]
or ecx, dword [ebp - 0x44]
sub ecx, 0x7e770
mov eax, dword [ebp - 0x58]
xor edx, edx
div ecx
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 8]
or edx, 0xfec
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0x48]
imul eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x84]
or ecx, eax
mov dword [ebp - 0x84], ecx
mov edx, dword [ebp - 0x40]
sub edx, dword [ebp - 0xc]
sub edx, 0x31e
mov eax, dword [ebp - 0x88]
or eax, edx
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 8]
xor ecx, 0x28e
mov dword [ebp - 0x58], ecx
mov ecx, dword [ebp - 0x40]
add ecx, 0x218
mov esi, dword [ebp - 0xc]
shr esi, cl
add esi, 0x55b18
mov eax, dword [ebp - 0x78]
xor edx, edx
div esi
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 8]
and ecx, dword [ebp - 0x54]
xor ecx, 0xffffffab
add ecx, 0x3b150
mov eax, dword [ebp - 0x88]
xor edx, edx
div ecx
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 0x7c]
mov ecx, dword [ebp - 8]
shr edx, cl
xor edx, 0xfffffd8a
mov eax, dword [ebp - 0x28]
sub eax, edx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x78]
imul ecx, dword [ebp - 0x3c]
mov dword [ebp - 8], ecx
mov esi, 0x33
mov ecx, dword [ebp - 0x20]
sar esi, cl
sub esi, 0xb5e28
mov eax, dword [ebp - 0x34]
xor edx, edx
div esi
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x44]
and edx, dword [ebp - 0x58]
xor edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x34]
and eax, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x30]
and edx, ecx
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x1c]
shl eax, cl
or eax, 0xfffffccd
mov ecx, dword [ebp - 0x34]
add ecx, eax
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x28]
add edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x54]
or ecx, edx
sub ecx, 0x4de18
mov eax, dword [ebp - 0x40]
xor edx, edx
div ecx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x78]
or ecx, 0xffffff41
add ecx, 0xb0068
mov eax, dword [ebp - 0x1c]
xor edx, edx
div ecx
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x88]
shl edx, 0xf0
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0x54]
shr eax, cl
mov ecx, dword [ebp - 0x54]
sub ecx, eax
mov dword [ebp - 0x54], ecx
mov edx, 0xffffff9a
mov ecx, dword [ebp - 0x1c]
shl edx, cl
mov eax, dword [ebp - 0x34]
and eax, edx
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0x1c1
mov dword [ebp - 0x78], ecx
mov edx, dword [ebp - 0x20]
xor edx, dword [ebp - 0x24]
or edx, 0x164
mov eax, dword [ebp - 0x1c]
add eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x7c]
and ecx, 0xfffffd54
mov edx, dword [ebp - 0x88]
or edx, ecx
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x2c]
lea edx, [ecx + eax*2]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x70]
sub ecx, eax
sub ecx, 0xa028
mov eax, dword [ebp - 0x84]
xor edx, edx
div ecx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x64]
imul edx, dword [ebp - 0x50]
xor edx, 0xfffffc71
mov eax, dword [ebp - 0x40]
sub eax, edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x30]
add ecx, 0x11c
xor ecx, 0xffffffd3
mov edx, dword [ebp - 0x48]
xor edx, ecx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x74]
sar eax, 0xee
mov ecx, dword [ebp - 0x7c]
or ecx, eax
mov edx, dword [ebp - 0xc]
add edx, ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x18]
add eax, 0xe9
and eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 4]
or ecx, eax
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x64]
or edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x24]
or eax, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x40]
imul ecx, ecx, 0x2b0
add ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x58]
or edx, ecx
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x3c]
or eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 4]
xor ecx, eax
mov dword [ebp - 4], ecx
mov edx, 0xfffffcb7
mov ecx, dword [ebp - 0x88]
shl edx, cl
and edx, dword [ebp - 0x30]
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0xc]
add eax, 0x150
mov ecx, dword [ebp - 0x30]
and ecx, eax
mov dword [ebp - 0x30], ecx
mov edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x3c]
shl edx, 0x18
mov eax, dword [ebp - 0x64]
sub eax, edx
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 8]
mov dword [ebp - 8], ecx
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0x7c]
add ecx, 0x24dd8
mov eax, dword [ebp - 0x84]
xor edx, edx
div ecx
mov dword [ebp - 0x84], eax
mov edx, 0xfffffc63
mov ecx, dword [ebp - 0x84]
shl edx, cl
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x54]
and eax, 0x7b7bc
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x28]
imul ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x34]
sub edx, ecx
mov eax, dword [ebp - 0x7c]
xor eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x78]
and ecx, 0x35c
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x34]
or edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x48]
add eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x2c]
xor edx, edx
mov dx, word [ecx]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x18]
imul eax, eax, 0x188
xor eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x48]
and ecx, eax
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x28]
or edx, 0xf7417752
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x48]
xor eax, 0x29c
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x44]
add ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 8]
or edx, ecx
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
sub eax, 0x164
mov ecx, dword [ebp - 0x58]
xor ecx, eax
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x58]
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x54]
shl eax, cl
mov ecx, dword [ebp - 0x78]
xor ecx, eax
mov edx, dword [ebp - 0x1c]
xor edx, ecx
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 0x14]
imul eax, eax, 0x9f
mov ecx, dword [ebp - 4]
or ecx, eax
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x14]
imul edx, edx, 0x46
mov ecx, dword [ebp - 0x20]
shr edx, cl
mov eax, dword [ebp - 0x14]
sub eax, edx
mov dword [ebp - 0x14], eax
mov ecx, 0x34b
sub ecx, dword [ebp - 0x70]
mov edx, dword [ebp - 0x20]
xor edx, ecx
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x70]
imul eax, eax, 0xfffffcd3
mov ecx, dword [ebp - 0x3c]
add ecx, eax
mov edx, dword [ebp - 0x48]
or edx, ecx
mov dword [ebp - 0x48], edx
mov ecx, dword [ebp - 0x44]
add ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
shl eax, cl
mov ecx, dword [ebp - 0x44]
xor ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x54]
sar edx, cl
mov ecx, dword [ebp - 0x44]
shl edx, cl
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 8]
or eax, 0xfffffd87
mov ecx, dword [ebp - 0x54]
sub ecx, eax
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x7c]
shl edx, 0x8a
mov eax, dword [ebp - 0x20]
or eax, edx
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x74]
add edx, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x44]
shr edx, cl
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x44]
imul eax, eax, 0xfffffeb1
or eax, 0xfffffc52
mov ecx, dword [ebp - 0x28]
add ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x1c]
or edx, dword [ebp - 0xc]
mov eax, dword [ebp - 4]
or eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x7c]
shl ecx, 0xb5
mov edx, dword [ebp - 0x50]
xor edx, ecx
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x74]
imul eax, eax, 0xfffffc53
xor eax, 0xfffffc58
mov ecx, dword [ebp - 0x7c]
or ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x24]
imul edx, dword [ebp - 0x54]
mov eax, dword [ebp - 0x48]
add eax, edx
mov ecx, dword [ebp - 8]
sub ecx, eax
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x2c]
shl edx, 2
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x64]
sar eax, 0x86
mov ecx, dword [ebp - 0x74]
and ecx, eax
mov edx, dword [ebp - 0x70]
xor edx, ecx
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x54]
sub eax, 0x350
mov ecx, dword [ebp - 4]
sub ecx, eax
mov dword [ebp - 4], ecx
mov ecx, dword [ebp - 4]
imul ecx, dword [ebp - 0x88]
sub ecx, dword [ebp - 0x30]
sub ecx, 0x96640
mov eax, dword [ebp - 0x30]
xor edx, edx
div ecx
mov dword [ebp - 0x30], eax
mov edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x84]
xor eax, edx
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x20], 0xfffffd31
mov ecx, dword [ebp - 0x84]
add ecx, 0xa8
mov edx, dword [ebp - 0x50]
and edx, ecx
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x24]
and eax, 0xfffffd52
mov ecx, dword [ebp - 0x64]
and ecx, eax
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x34]
add edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x70]
add eax, edx
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 8]
mov ecx, dword [ebp - 0x18]
shr edx, cl
mov eax, dword [ebp - 8]
add eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 4]
and ecx, 0xfffffc92
mov edx, dword [ebp - 0x30]
or edx, ecx
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x84]
add eax, 0x314
or eax, dword [ebp - 0x50]
mov ecx, dword [ebp - 0x1c]
add ecx, eax
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x1c]
xor edx, 0xfffffeb6
or edx, 0xfffffcfa
mov eax, dword [ebp - 0x54]
sub eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x50]
xor ecx, 0x2ba
sub ecx, 0xb5e28
mov eax, dword [ebp - 0x18]
xor edx, edx
div ecx
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x7c]
xor edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x1c]
xor eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x54]
sub ecx, 0x3b3
mov edx, dword [ebp - 0xc]
xor edx, ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x7c]
add eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
or ecx, eax
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x2c]
add eax, dword [edx + 0x1c]
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x58]
imul ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x14]
lea ecx, [ecx + edx - 0x86858]
mov eax, dword [ebp - 0x40]
xor edx, edx
div ecx
mov dword [ebp - 0x40], eax
mov edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x48]
and eax, edx
mov ecx, dword [ebp - 4]
sub ecx, eax
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x14]
shl edx, cl
mov eax, dword [ebp - 0x70]
sub eax, edx
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x24]
sub ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x14]
xor edx, ecx
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x30]
or eax, 0xffffffda
mov ecx, dword [ebp - 0x24]
add ecx, eax
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x50]
imul edx, edx, 0xfffffdce
mov eax, dword [ebp - 0xc]
xor eax, edx
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x58]
imul ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x20]
sar edx, cl
mov eax, dword [ebp - 0x58]
xor eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x18]
xor ecx, 0xfc
mov edx, dword [ebp - 0x18]
add edx, ecx
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x64]
sar eax, 0x7a
mov ecx, dword [ebp - 0x18]
shl eax, cl
mov ecx, dword [ebp - 0x70]
add ecx, eax
mov dword [ebp - 0x70], ecx
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x84]
shr esi, cl
or esi, dword [ebp - 0x44]
add esi, 0xc9e78
mov eax, dword [ebp - 0x64]
xor edx, edx
div esi
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
or eax, edx
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x34]
shr edx, cl
mov eax, dword [ebp - 0x24]
and eax, edx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 8]
xor edx, 0xfffffdaf
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x28]
imul eax, eax, 0x147
mov ecx, dword [ebp - 0x44]
and ecx, eax
mov edx, dword [ebp - 0x78]
or edx, ecx
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x14]
imul eax, eax, 0x385
and eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x48]
or ecx, eax
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 8]
and edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x84]
or eax, edx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x88]
imul edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x84]
shr edx, cl
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x3c]
and eax, 0xfffffdfc
or eax, 0x247
mov ecx, dword [ebp - 0x58]
sub ecx, eax
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x7c]
or edx, 0xfffffeaf
or edx, 0xfffffdb5
mov eax, dword [ebp - 0x48]
or eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x78]
or ecx, dword [ebp - 0x88]
mov edx, dword [ebp - 0x78]
add edx, ecx
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 0x40]
imul ecx, dword [ebp - 0x70]
mov eax, 0x23e
shl eax, cl
mov dword [ebp - 0x44], eax
mov edx, 0xfffffd54
mov ecx, dword [ebp - 0x78]
shl edx, cl
mov eax, dword [ebp - 0x28]
or eax, edx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x78]
and ecx, 0xfffffc56
mov edx, dword [ebp - 0x88]
sub edx, ecx
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x78]
shl eax, cl
mov ecx, dword [ebp - 0x28]
sar eax, cl
mov ecx, dword [ebp - 0x7c]
sub ecx, eax
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x78]
sub edx, dword [ebp - 0x58]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x74]
shl eax, cl
mov ecx, dword [ebp - 0x18]
or ecx, eax
mov dword [ebp - 0x28], ecx
mov edx, 0xffffff34
sub edx, dword [ebp - 0x88]
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x50], 0
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x84]
shl eax, cl
mov ecx, dword [ebp - 0x50]
add ecx, eax
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp + 8]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x88]
imul eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0x14]
xor ecx, eax
mov edx, dword [ebp - 0xc]
and edx, ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x64]
cdq
mov ecx, 0xfff5ba91
idiv ecx
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x24]
add edx, 0x246
mov eax, dword [ebp - 0x70]
xor eax, edx
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x84]
sub edx, 0x1cf
mov ecx, dword [ebp - 0x34]
shl edx, cl
mov eax, dword [ebp - 0x58]
and eax, edx
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x64]
lea ecx, [edx + ecx - 0x395f8]
mov eax, dword [ebp - 0x74]
xor edx, edx
div ecx
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x7c]
sar edx, cl
sar edx, 0xe6
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x40]
imul eax, eax, 0xfffffe27
mov ecx, dword [ebp - 0x84]
shl eax, cl
mov ecx, dword [ebp - 8]
xor ecx, eax
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x20]
xor edx, 0xfffffe7c
mov eax, dword [ebp - 0x28]
or eax, edx
mov dword [ebp - 0x28], eax
mov esi, 0xfffffd34
mov ecx, dword [ebp - 0x3c]
sar esi, cl
sub esi, 0x52850
mov eax, dword [ebp - 0x7c]
xor edx, edx
div esi
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x64]
or ecx, 0xfffffd53
mov edx, dword [ebp - 0xc]
and edx, ecx
mov dword [ebp - 0xc], edx
mov esi, 0xfffffc57
mov ecx, dword [ebp - 0x18]
sar esi, cl
xor esi, dword [ebp - 8]
sub esi, 0x5a938
mov eax, dword [ebp - 0xc]
xor edx, edx
div esi
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x44]
sub eax, dword [ebp - 0x54]
and eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x28]
and ecx, eax
mov dword [ebp - 0x28], ecx
mov esi, 0xfffffdcf
mov ecx, dword [ebp - 0x24]
shl esi, cl
mov ecx, dword [ebp - 0x54]
shl esi, cl
add esi, 0x9858
mov eax, dword [ebp - 0x1c]
xor edx, edx
div esi
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x70]
or edx, 0x302
mov eax, dword [ebp - 0x34]
and eax, edx
mov dword [ebp - 0x34], eax
mov edx, 0xffffff9b
mov ecx, dword [ebp - 0x28]
shl edx, cl
shl edx, 0x86
mov eax, dword [ebp - 0x3c]
add eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x88]
imul ecx, ecx, 0xffffff10
mov edx, dword [ebp - 0x78]
xor edx, ecx
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x30]
xor eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x1c]
and ecx, eax
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x40]
add ecx, 0x94df0
mov eax, dword [ebp - 0x64]
cdq
idiv ecx
mov dword [ebp - 0x64], eax
mov edx, dword [ebp - 0x88]
imul edx, dword [ebp - 0x48]
mov dword [ebp - 0x18], edx
mov ecx, dword [ebp - 0x48]
sub ecx, dword [ebp - 0x14]
mov eax, 0x358
sar eax, cl
mov ecx, dword [ebp - 0x54]
and ecx, eax
mov dword [ebp - 0x54], ecx
mov edx, dword [ebp - 0x78]
and edx, dword [ebp - 0x70]
or edx, dword [ebp - 0x34]
mov eax, dword [ebp - 8]
sub eax, edx
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x1c]
or ecx, dword [ebp - 4]
add ecx, 0xb3b0
mov eax, dword [ebp - 0x54]
xor edx, edx
div ecx
mov dword [ebp - 0x54], eax
mov edx, dword [ebp - 0x3c]
xor edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x40]
and eax, edx
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x2c]
mov edx, dword [ecx]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp - 0x20]
shr eax, cl
mov ecx, dword [ebp - 8]
or ecx, eax
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x7c]
sub edx, 0x3cd
mov ecx, dword [ebp - 0x44]
shr edx, cl
mov eax, dword [ebp - 0x64]
and eax, edx
mov dword [ebp - 0x64], eax
mov ecx, dword [ebp - 0x18]
sub ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x78]
lea eax, [edx + ecx - 0x163]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x7c], 0
mov ecx, dword [ebp - 0x48]
or ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x84]
or edx, ecx
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x3c]
sub eax, dword [ebp - 0x70]
or eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x3c]
add ecx, eax
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x18]
imul edx, edx, 0xfffffd77
mov ecx, dword [ebp - 0x88]
xor ecx, edx
sub ecx, 0x687e0
mov eax, dword [ebp - 0x58]
xor edx, edx
div ecx
mov dword [ebp - 0x58], eax
mov edx, dword [ebp - 0x48]
sub edx, dword [ebp - 0x48]
mov eax, dword [ebp - 4]
xor eax, edx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x64]
and ecx, 0xfffffd3c
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x18]
shl edx, cl
mov eax, dword [ebp - 0x48]
add eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x18]
and ecx, 0xfffffcbc
mov edx, dword [ebp - 4]
add edx, ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
imul eax, dword [ebp - 0x70]
or eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0xc]
and ecx, eax
mov dword [ebp - 0xc], ecx
mov esi, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x48]
sar esi, cl
mov ecx, dword [ebp - 0x70]
shl esi, cl
sub esi, 0x79d38
mov eax, dword [ebp - 0x74]
cdq
idiv esi
mov dword [ebp - 0x74], eax
mov edx, dword [ebp - 0x2c]
add edx, dword [ebp + 8]
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x28]
imul eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x7c]
add ecx, eax
mov dword [ebp - 0x7c], ecx
mov esi, dword [ebp - 0x18]
sub esi, 0x358
mov ecx, dword [ebp - 0x54]
shr esi, cl
sub esi, 0x1c908
mov eax, dword [ebp - 0x3c]
xor edx, edx
div esi
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x48]
sub edx, 0x1df
or edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x50]
sub eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x1c]
and ecx, 0x2cd
or ecx, dword [ebp - 0x28]
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x20]
and edx, dword [ebp - 0x3c]
or edx, 0xfffffc34
mov eax, dword [ebp - 0x44]
xor eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x54]
add ecx, dword [ebp - 0x24]
mov edx, 0xfffffc4b
shl edx, cl
mov eax, dword [ebp - 0x48]
xor eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x18]
shl ecx, 0xc9
shl ecx, 0x50
mov edx, dword [ebp - 0x40]
xor edx, ecx
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x58]
imul eax, eax, 0x3cd
mov ecx, dword [ebp - 0x70]
sub ecx, eax
mov edx, dword [ebp - 0x78]
xor edx, ecx
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 0x28]
or ecx, 0x16b
or ecx, dword [ebp - 0x78]
sub ecx, 0x1dc90
mov eax, dword [ebp - 0x1c]
xor edx, edx
div ecx
mov dword [ebp - 0x1c], eax
mov ecx, 0xfffffcbd
sub ecx, dword [ebp - 0x64]
mov edx, 0xfffffddb
shl edx, cl
mov eax, dword [ebp - 0x44]
and eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x24]
imul ecx, ecx, 0xfffffd6f
mov edx, dword [ebp - 0x78]
and edx, ecx
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x30]
add eax, 0x8c
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x50]
imul ecx, dword [ebp - 0x54]
sar ecx, 0x93
mov edx, dword [ebp - 0x40]
sub edx, ecx
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x14]
and al, 0x6a
mov ecx, dword [ebp - 0x1c]
or ecx, eax
sub ecx, 0x7a120
mov eax, dword [ebp - 0x30]
xor edx, edx
div ecx
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x2c]
jmp 0x4104b8
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x70]
shl edx, cl
mov eax, dword [ebp - 0x84]
xor eax, edx
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x1c]
imul ecx, ecx, 0xfffffd71
add ecx, 0x32898
mov eax, dword [ebp - 0x1c]
xor edx, edx
div ecx
mov dword [ebp - 0x1c], eax
mov esi, 0xfffffce6
mov ecx, dword [ebp - 0x3c]
shl esi, cl
sub esi, 0xe6780
mov eax, dword [ebp - 4]
cdq
idiv esi
mov dword [ebp - 4], eax
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x50]
shl edx, cl
mov ecx, dword [ebp - 0x3c]
shl edx, cl
mov eax, dword [ebp - 0x1c]
and eax, edx
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 4]
add ecx, 0x2cf
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x50]
imul edx, edx, 0xfffffdf2
mov eax, dword [ebp - 0x28]
and eax, edx
mov ecx, dword [ebp - 0x74]
xor ecx, eax
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp - 0x3c]
imul edx, edx, 0xffffff00
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp - 0x78]
add ecx, 0x7a8f0
mov eax, dword [ebp - 4]
xor edx, edx
div ecx
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x30]
imul ecx, ecx, 0xfffffd78
and ecx, 0xfffffd27
add ecx, 0xb3b00
mov eax, dword [ebp - 0x1c]
xor edx, edx
div ecx
mov dword [ebp - 0x1c], eax
mov esi, 0xfffffc66
mov ecx, dword [ebp - 0x74]
shl esi, cl
sub esi, 0x7acd8
mov eax, dword [ebp - 0x70]
cdq
idiv esi
mov dword [ebp - 0x70], eax
mov edx, dword [ebp - 0x24]
xor edx, dword [ebp - 0xc]
mov dword [ebp - 0x7c], edx
mov ecx, dword [ebp - 0xc]
or ecx, 0xfffffd8d
sub ecx, 0xbe2f8
mov eax, dword [ebp - 0x28]
xor edx, edx
div ecx
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x3c]
imul ecx, ecx, 0x271
or ecx, 0x1a4
sub ecx, 0x79180
mov eax, dword [ebp - 0x84]
xor edx, edx
div ecx
mov dword [ebp - 0x84], eax
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebp - 4]
sar edx, cl
and dl, 0x1c
mov eax, dword [ebp - 4]
xor eax, edx
mov dword [ebp - 4], eax
mov edx, 0x9b
mov ecx, dword [ebp - 4]
sar edx, cl
or edx, 0xffffff50
mov eax, dword [ebp - 0x44]
or eax, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x14]
imul ecx, ecx, 0xfffffefa
mov esi, dword [ebp - 0x40]
and esi, ecx
sub esi, 0xb798
mov eax, dword [ebp - 0x14]
xor edx, edx
div esi
mov dword [ebp - 0x14], eax
mov edx, dword [ebp - 0x88]
sub edx, 0x22e
mov ecx, dword [ebp - 0x64]
sar edx, cl
mov eax, dword [ebp - 0x70]
add eax, edx
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x58]
sub ecx, 0x2e5
mov edx, dword [ebp - 0x54]
xor edx, ecx
mov eax, dword [ebp - 0x48]
add eax, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 4]
imul ecx, ecx, 0x60
mov edx, dword [ebp - 4]
xor edx, ecx
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x54]
imul eax, eax, 0xfffffc58
sar eax, 0x48
mov ecx, dword [ebp - 0x44]
sub ecx, eax
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x58]
or edx, 0x36a
mov dword [ebp - 0x40], edx
mov ecx, dword [ebp - 0x48]
xor ecx, dword [ebp - 4]
sub ecx, 0xe2ce8
mov eax, dword [ebp - 0x34]
xor edx, edx
div ecx
mov dword [ebp - 0x34], eax
mov edx, dword [ebp - 0x68]
add edx, 4
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0x58]
add eax, 0x2dd
mov ecx, dword [ebp - 0x64]
xor ecx, eax
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x50]
shr edx, cl
mov eax, dword [ebp - 0x54]
sub eax, edx
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x54]
imul ecx, ecx, 0xfffffcd1
mov edx, dword [ebp - 0x74]
xor edx, ecx
mov dword [ebp - 0x44], edx
mov eax, 0x377
mov ecx, dword [ebp - 0x54]
shl eax, cl
mov ecx, dword [ebp - 0x24]
and ecx, eax
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x78]
or edx, 0x231
mov eax, dword [ebp - 0x3c]
sub eax, edx
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x54]
mov edx, dword [ebp - 0x30]
lea ecx, [edx + ecx - 0x82dc0]
mov eax, dword [ebp - 0x24]
xor edx, edx
div ecx
mov dword [ebp - 0x24], eax
mov esi, 0xfffffdb2
mov ecx, dword [ebp - 4]
sar esi, cl
xor esi, 0xfffffdb7
sub esi, 0xcc970
mov eax, dword [ebp - 0x1c]
xor edx, edx
div esi
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x50]
mov ecx, dword [ebp - 0xc]
sar edx, cl
or edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
or eax, edx
mov dword [ebp - 0x1c], eax
mov esi, dword [ebp - 0x58]
sub esi, 0x147
mov ecx, dword [ebp - 0x30]
shl esi, cl
add esi, 0x4ca90
mov eax, dword [ebp - 0x44]
xor edx, edx
div esi
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x58]
imul ecx, ecx, 0x253
sub ecx, 0x53f99
mov eax, dword [ebp - 0x50]
xor edx, edx
div ecx
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x58]
or edx, 0xfffffc5a
mov eax, dword [ebp - 0x18]
sub eax, edx
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x54]
and ecx, dword [ebp - 0x3c]
or ecx, dword [ebp - 0x44]
mov edx, dword [ebp - 0x18]
or edx, ecx
mov dword [ebp - 0x18], edx
mov eax, 0xfffffc8e
mov ecx, dword [ebp - 0x74]
shl eax, cl
mov ecx, dword [ebp - 0x3c]
add ecx, eax
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x40]
and edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x88]
and eax, edx
mov dword [ebp - 0x88], eax
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x64]
shl edx, cl
mov eax, dword [ebp - 0x24]
xor eax, edx
mov dword [ebp - 0x24], eax
jmp 0x40e5fe
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x50]
shl edx, cl
mov ecx, dword [ebp - 0x18]
and ecx, edx
sub ecx, 0x72bf0
mov eax, dword [ebp - 0x7c]
xor edx, edx
div ecx
mov dword [ebp - 0x7c], eax
mov edx, dword [ebp - 0x58]
imul edx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x18]
add eax, edx
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ebp - 0x20]
lea eax, [edx + ecx - 0x20c]
mov ecx, dword [ebp - 0x70]
or ecx, eax
mov dword [ebp - 0x70], ecx
mov edx, dword [ebp - 0x3c]
xor edx, 0xfffffd4b
or edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x50]
and eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x58]
or ecx, 0x1a9
sub ecx, 0x7b0c0
mov eax, dword [ebp - 0x54]
xor edx, edx
div ecx
mov dword [ebp - 0x54], eax
mov edx, 0x49
sub edx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x50]
and eax, edx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x30]
or ecx, dword [ebp - 0x74]
sub ecx, 0x7dbb8
mov eax, dword [ebp - 0x20]
xor edx, edx
div ecx
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x34]
add edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x3c]
xor eax, edx
mov ecx, dword [ebp - 0x18]
add ecx, eax
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x20]
imul edx, dword [ebp - 4]
and edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
xor eax, edx
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x44]
xor ecx, 0xfffffde7
mov edx, dword [ebp - 0xc]
xor edx, ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x88]
sar eax, cl
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x48]
imul ecx, ecx, 0x338
mov edx, dword [ebp - 8]
sub edx, ecx
mov dword [ebp - 8], edx
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret