Function at 0x402420
Capabilities:
Encode data using xor

Disassembly:
sub esp, 8
push ebx
push ebp
push esi
push edi
mov esi, dword [sym.imp.MSVCRT.dll_rand]
mov ebx, 0x3fef820
call esi
and eax, 0xff7fffbf
mov dword [0x409630], eax
mov dword [0x409734], eax
call esi
mov ecx, dword [0x409630]
and eax, 0xff08083f
or eax, 0x80080800
and ecx, 0x77f780
or eax, ecx
mov dword [0x409634], eax
mov dword [0x409738], eax
call esi
and eax, 0xfd40003f
or eax, 0x88400025
mov dword [0x409638], eax
add eax, 0xffffffc0
mov dword [0x40973c], eax
call esi
mov eax, dword [0x409638]
and eax, 0x7500001a
or eax, 0x27fbc41
mov dword [0x40963c], eax
add eax, 0x807fffc0
mov dword [0x409740], eax
call esi
mov edx, dword [0x40963c]
mov ecx, ebx
mov edi, dword [0x409638]
sub ecx, edx
mov eax, ecx
mov ebp, dword [0x40973c]
shr eax, 0x11
shl ecx, 0xf
or eax, ecx
mov ecx, dword [0x409634]
xor edi, ecx
mov dword [0x409640], ebx
and edi, edx
mov edx, 0xfc7ef7df
xor edi, ecx
mov dword [0x409744], 0xfc7ef7df
sub eax, edi
mov edi, dword [0x409630]
sub eax, edi
mov edi, dword [0x409740]
sub edx, edi
add eax, 0x57cfb9ed
mov ecx, edx
mov dword [0x409844], eax
shr ecx, 0x11
shl edx, 0xf
or ecx, edx
mov edx, dword [0x409738]
xor ebp, edx
and ebp, edi
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x409734]
sub ecx, ebp
add ecx, 0x57cfb9ed
cmp eax, ecx
mov dword [0x4098c4], ecx
jne 0x402432
call esi
mov edi, dword [0x409640]
and eax, 0x605000
or eax, 0x1910540
mov ebp, dword [0x40963c]
mov ecx, eax
mov dword [0x409644], eax
sub ecx, edi
lea edx, [eax - 0x827fff]
mov eax, ecx
mov dword [0x409748], edx
shl eax, 0xa
shr ecx, 0x16
or eax, ecx
mov ecx, dword [0x409638]
xor ebp, ecx
and ebp, edi
mov edi, dword [0x409744]
sub edx, edi
xor ebp, ecx
mov ecx, edx
sub eax, ebp
mov ebp, dword [0x409634]
shl ecx, 0xa
shr edx, 0x16
sub eax, ebp
mov ebp, dword [0x409740]
or ecx, edx
mov edx, dword [0x40973c]
xor ebp, edx
add eax, 0x2b96aff
and ebp, edi
mov dword [0x409848], eax
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x409738]
sub ecx, ebp
add ecx, 0x2b96aff
cmp eax, ecx
mov dword [0x4098c8], ecx
jne 0x402432
call esi
mov edi, dword [0x409644]
and eax, 0xe04000
mov edx, edi
or eax, 0xfb102f3d
and edx, 0x1000
mov ebp, dword [0x409640]
or eax, edx
mov ecx, eax
mov dword [0x409648], eax
sub ecx, edi
lea edx, [eax + 0x7fffffc1]
mov eax, ecx
mov dword [0x40974c], edx
shl eax, 0x19
shr ecx, 7
or eax, ecx
mov ecx, dword [0x40963c]
xor ebp, ecx
and ebp, edi
mov edi, dword [0x409748]
sub edx, edi
xor ebp, ecx
mov ecx, edx
sub eax, ebp
mov ebp, dword [0x409638]
shl ecx, 0x19
shr edx, 7
sub eax, ebp
mov ebp, dword [0x409744]
or ecx, edx
mov edx, dword [0x409740]
xor ebp, edx
sub eax, 0x698098d8
and ebp, edi
mov dword [0x40984c], eax
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x40973c]
sub ecx, ebp
sub ecx, 0x698098d8
cmp eax, ecx
mov dword [0x4098cc], ecx
jne 0x402432
call esi
mov edi, dword [0x409648]
and eax, 0x3f604e3c
or eax, 0x401f9040
mov ebp, dword [0x409644]
mov ecx, eax
mov dword [0x40964c], eax
sub ecx, edi
lea edx, [eax - 0x7ffff000]
mov eax, ecx
mov dword [0x409750], edx
shr eax, 0xc
shl ecx, 0x14
or eax, ecx
mov ecx, dword [0x409640]
xor ebp, ecx
and ebp, edi
mov edi, dword [0x40974c]
sub edx, edi
xor ebp, ecx
mov ecx, edx
sub eax, ebp
mov ebp, dword [0x40963c]
shr ecx, 0xc
shl edx, 0x14
sub eax, ebp
mov ebp, dword [0x409748]
or ecx, edx
mov edx, dword [0x409744]
xor ebp, edx
add eax, 0x74bb0851
and ebp, edi
mov dword [0x409850], eax
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x409740]
sub ecx, ebp
add ecx, 0x74bb0851
cmp eax, ecx
mov dword [0x4098d0], ecx
jne 0x402432
call esi
mov edi, dword [0x40964c]
and eax, 0x3ff00e3c
mov edx, edi
or eax, 0x180c2
and edx, 0x4000
mov ebp, dword [0x409648]
or eax, edx
mov ecx, eax
mov dword [0x409650], eax
sub ecx, edi
lea edx, [eax - 0x40000000]
mov eax, ecx
mov dword [0x409754], edx
shr eax, 0x11
shl ecx, 0xf
or eax, ecx
mov ecx, dword [0x409644]
xor ebp, ecx
and ebp, edi
mov edi, dword [0x409750]
sub edx, edi
xor ebp, ecx
mov ecx, edx
sub eax, ebp
mov ebp, dword [0x409640]
shr ecx, 0x11
shl edx, 0xf
sub eax, ebp
mov ebp, dword [0x40974c]
or ecx, edx
mov edx, dword [0x409748]
xor ebp, edx
add eax, 0xa44f
and ebp, edi
mov dword [0x409854], eax
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x409744]
sub ecx, ebp
add ecx, 0xa44f
cmp eax, ecx
mov dword [0x4098d4], ecx
jne 0x402432
call esi
mov edi, dword [0x409650]
and eax, 0x3cf00e7f
mov ecx, edi
or eax, 0x81100
and ecx, 0x3000000
mov ebp, dword [0x40964c]
or eax, ecx
mov dword [0x409654], eax
lea edx, [eax + 0x7fffdf80]
sub eax, edi
mov ecx, eax
mov dword [0x409758], edx
shl ecx, 0xa
shr eax, 0x16
or ecx, eax
mov eax, dword [0x409648]
xor ebp, eax
and ebp, edi
mov edi, dword [0x409754]
sub edx, edi
xor ebp, eax
mov eax, edx
sub ecx, ebp
mov ebp, dword [0x409644]
shl eax, 0xa
shr edx, 0x16
sub ecx, ebp
mov ebp, dword [0x409750]
or eax, edx
mov edx, dword [0x40974c]
xor ebp, edx
add ecx, 0x76a32842
and ebp, edi
mov dword [0x409858], ecx
xor ebp, edx
sub eax, ebp
mov ebp, dword [0x409748]
sub eax, ebp
add eax, 0x76a32842
mov dword [0x4098d8], eax
xor eax, ecx
cmp eax, 0x8000
jne 0x402432
call esi
mov edi, dword [0x409654]
and eax, 0x3cf01e77
or eax, 0x410fe008
mov ebp, dword [0x409650]
mov ecx, eax
mov dword [0x409658], eax
sub ecx, edi
lea edx, [eax - 0x7f000000]
mov eax, ecx
mov dword [0x40975c], edx
shl eax, 0x19
shr ecx, 7
or eax, ecx
mov ecx, dword [0x40964c]
xor ebp, ecx
and ebp, edi
mov edi, dword [0x409758]
sub edx, edi
xor ebp, ecx
mov ecx, edx
sub eax, ebp
mov ebp, dword [0x409648]
shl ecx, 0x19
shr edx, 7
sub eax, ebp
mov ebp, dword [0x409754]
or ecx, edx
mov edx, dword [0x409750]
xor ebp, edx
sub eax, 0x6b901122
and ebp, edi
mov dword [0x40985c], eax
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x40974c]
sub ecx, ebp
sub ecx, 0x6b901122
cmp eax, ecx
mov dword [0x4098dc], ecx
jne 0x402432
call esi
mov edi, dword [0x409658]
and eax, 0x5cf01e77
or eax, 0xbe188
mov ebp, dword [0x409654]
mov ecx, eax
mov dword [0x40965c], eax
sub ecx, edi
lea edx, [eax - 0x80000000]
mov eax, ecx
mov dword [0x409760], edx
shr eax, 0xc
shl ecx, 0x14
or eax, ecx
mov ecx, dword [0x409650]
xor ebp, ecx
and ebp, edi
mov edi, dword [0x40975c]
sub edx, edi
xor ebp, ecx
mov ecx, edx
sub eax, ebp
mov ebp, dword [0x40964c]
shr ecx, 0xc
shl edx, 0x14
sub eax, ebp
mov ebp, dword [0x409758]
or ecx, edx
mov edx, dword [0x409754]
xor ebp, edx
add eax, 0x2678e6d
and ebp, edi
mov dword [0x409860], eax
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x409750]
sub ecx, ebp
add ecx, 0x2678e6d
cmp eax, ecx
mov dword [0x4098e0], ecx
jne 0x402432
call esi
mov edi, dword [0x40965c]
and eax, 0x5cff7ff7
or eax, 0x21008000
mov ebp, dword [0x409658]
mov dword [0x409660], eax
lea edx, [eax + 0x7fff8008]
sub eax, edi
mov ecx, eax
mov dword [0x409764], edx
shr ecx, 0x11
shl eax, 0xf
or ecx, eax
mov eax, dword [0x409654]
xor ebp, eax
and ebp, edi
mov edi, dword [0x409760]
sub edx, edi
xor ebp, eax
mov eax, edx
sub ecx, ebp
mov ebp, dword [0x409650]
shr eax, 0x11
shl edx, 0xf
sub ecx, ebp
mov ebp, dword [0x40975c]
or eax, edx
mov edx, dword [0x409758]
xor ebp, edx
add ecx, 0x5986bc72
and ebp, edi
mov dword [0x409864], ecx
xor ebp, edx
sub eax, ebp
mov ebp, dword [0x409754]
sub eax, ebp
add eax, 0x5986bc72
mov dword [0x4098e4], eax
xor eax, ecx
cmp eax, 0x80000000
jne 0x402432
call esi
mov edi, dword [0x409660]
and eax, 0x5fffffff
or eax, 0x20000000
mov ebp, dword [0x40965c]
mov ecx, eax
mov dword [0x409664], eax
sub ecx, edi
lea edx, [eax + 0x60000000]
mov eax, ecx
mov dword [0x409768], edx
shl eax, 0xa
shr ecx, 0x16
or eax, ecx
mov ecx, dword [0x409658]
xor ebp, ecx
and ebp, edi
mov edi, dword [0x409764]
sub edx, edi
xor ebp, ecx
mov ecx, edx
sub eax, ebp
mov ebp, dword [0x409654]
shl ecx, 0xa
shr edx, 0x16
sub eax, ebp
mov ebp, dword [0x409760]
or ecx, edx
mov edx, dword [0x40975c]
xor ebp, edx
sub eax, 0x49b40821
and ebp, edi
mov dword [0x409868], eax
xor ebp, edx
sub ecx, ebp
mov ebp, dword [0x409758]
sub ecx, ebp
sub ecx, 0x49b40821
cmp eax, ecx
mov dword [0x4098e8], ecx
jne 0x402432
mov dword [esp + 0x10], 0
call esi
mov ebx, dword [0x409664]
and eax, 0x7ffd7ff7
mov edx, ebx
mov ebp, ebx
and edx, 0x8008
or eax, edx
mov edx, eax
mov dword [0x409668], eax
sub edx, ebx
lea edi, [eax - 0x80000000]
mov ecx, edx
mov dword [0x40976c], edi
shl ecx, 0x1b
shr edx, 5
or ecx, edx
mov edx, dword [0x409660]
xor ebp, edx
and ebp, dword [0x40965c]
xor ebp, edx
mov edx, dword [0x409658]
sub ecx, ebp
mov ebp, dword [0x409768]
sub edi, ebp
sub ecx, edx
mov edx, edi
add ecx, 0x9e1da9e
shl edx, 0x1b
shr edi, 5
or edx, edi
mov edi, dword [0x409764]
xor ebp, edi
mov edi, dword [0x409760]
and ebp, edi
mov edi, dword [0x409764]
xor ebp, edi
mov edi, dword [0x40975c]
sub edx, ebp
mov dword [0x409830], ecx
sub edx, edi
add edx, 0x9e1da9e
cmp ecx, edx
mov dword [0x4098b0], edx
jne 0x4032f3
mov edi, dword [0x409660]
mov ebp, dword [0x40965c]
mov ecx, eax
mov edx, dword [0x409844]
xor ecx, ebx
and ecx, edi
xor ecx, ebx
add ecx, ebp
add edx, ecx
lea ecx, [edx - 0x3fbf4cc0]
add edx, 0x40b340
shr ecx, 0x17
shl edx, 9
or ecx, edx
mov edx, eax
add ecx, eax
and edx, 0x20000000
mov edi, ecx
or edx, 0x20000
and edi, 0xa0020000
mov dword [0x40966c], ecx
cmp edi, edx
jne 0x4032f3
mov ebp, dword [0x40976c]
mov edi, dword [0x409768]
mov edx, ebp
xor edx, edi
mov edi, dword [0x409764]
and edx, edi
mov edi, dword [0x409768]
xor edx, edi
mov edi, dword [0x409760]
add edx, edi
mov edi, dword [0x4098c4]
add edi, edx
lea edx, [edi - 0x3fbf4cc0]
add edi, 0x40b340
shr edx, 0x17
shl edi, 9
or edx, edi
add edx, ebp
mov edi, edx
mov dword [0x409770], edx
xor edi, ecx
cmp edi, 0x80000000
jne 0x4032f3
mov edi, ecx
xor edi, eax
and edi, ebx
xor edi, eax
mov eax, dword [0x409660]
add edi, eax
mov eax, dword [0x409858]
add edi, eax
lea eax, [edi + 0x265e5a51]
add edi, 0x25a51
shr eax, 0x12
shl edi, 0xe
or eax, edi
add eax, ecx
test eax, 0x80020000
mov dword [0x409670], eax
jne 0x4032f3
mov ebx, dword [0x409768]
mov ecx, edx
mov edi, dword [0x4098d8]
xor ecx, ebp
and ecx, ebx
xor ecx, ebp
mov ebp, dword [0x409764]
add ecx, ebp
add edi, ecx
lea ecx, [edi + 0x265e5a51]
add edi, 0x25a51
shr ecx, 0x12
shl edi, 0xe
or ecx, edi
add ecx, edx
sub eax, ecx
mov dword [0x409774], ecx
cmp eax, 0x7ffe0000
jne 0x4032f3
call esi
mov edi, dword [0x409670]
and eax, 0x7fffffff
mov dword [0x409674], eax
mov ebp, dword [0x409668]
lea edx, [eax - 0x80000000]
sub eax, edi
mov ecx, eax
mov dword [0x409778], edx
shr ecx, 0x14
shl eax, 0xc
or ecx, eax
mov eax, dword [0x40966c]
xor edi, eax
mov ebx, dword [0x409664]
and edi, ebp
mov ebp, dword [0x40976c]
xor edi, eax
sub ecx, edi
mov edi, dword [0x409774]
sub edx, edi
sub ecx, ebx
mov eax, edx
mov ebx, dword [0x409768]
shr eax, 0x14
shl edx, 0xc
or eax, edx
mov edx, dword [0x409770]
xor edi, edx
add ecx, 0x16493856
and edi, ebp
mov dword [0x40982c], ecx
xor edi, edx
sub eax, edi
sub eax, ebx
add eax, 0x16493856
cmp ecx, eax
mov dword [0x4098ac], eax
jne 0x4032f3
mov ebx, dword [0x409474]
mov esi, dword [0x409478]
mov eax, dword [0x409470]
mov ebp, dword [0x40946c]
mov edx, ebx
xor edx, esi
and edx, eax
xor edx, esi
add edx, ebp
mov ebp, dword [0x409630]
add ecx, edx
mov edi, ebp
lea edx, [ecx - 0x28955b88]
add ecx, 0x16aa478
shr edx, 0x19
shl ecx, 7
or edx, ecx
mov ecx, ebx
add edx, eax
xor ecx, eax
and ecx, edx
mov dword [0x409628], edx
xor ecx, ebx
mov dword [0x40972c], edx
add ecx, esi
mov esi, dword [0x409830]
add esi, ecx
lea ecx, [esi - 0x173848aa]
add esi, 0x7b756
shr ecx, 0x14
shl esi, 0xc
or ecx, esi
add ecx, edx
sub edi, ecx
mov dword [0x40962c], ecx
mov esi, edi
mov dword [0x409730], ecx
shr esi, 0x11
shl edi, 0xf
or esi, edi
mov edi, edx
xor edi, eax
and edi, ecx
xor edi, eax
sub esi, edi
mov edi, dword [0x409634]
sub esi, ebx
sub esi, 0x242070db
mov dword [0x409834], esi
mov dword [0x4098b4], esi
mov esi, edi
sub esi, ebp
mov ebx, esi
shl ebx, 0xa
shr esi, 0x16
or ebx, esi
mov esi, ecx
xor esi, edx
and esi, ebp
xor esi, edx
sub ebx, esi
sub ebx, eax
mov eax, dword [0x409638]
sub eax, edi
add ebx, 0x3e423112
mov esi, eax
mov dword [0x409838], ebx
shl esi, 0x19
shr eax, 7
or esi, eax
mov eax, ecx
xor eax, ebp
mov dword [0x4098b8], ebx
and eax, edi
mov edi, dword [0x409738]
xor eax, ecx
sub esi, eax
mov eax, dword [0x40973c]
sub esi, edx
add esi, 0xa83f051
mov dword [0x40983c], esi
mov ebp, dword [0x409734]
sub eax, edi
mov edi, eax
shl edi, 0x19
shr eax, 7
or edi, eax
mov eax, ecx
xor eax, ebp
mov ebp, dword [0x409738]
and eax, ebp
xor eax, ecx
sub edi, eax
sub edi, edx
add edi, 0xa83f051
mov edx, edi
mov dword [0x4098bc], edi
xor edx, esi
cmp edx, 0x80000000
jne 0x4032ed
mov edx, dword [0x40963c]
mov eax, dword [0x409638]
mov ebp, dword [0x409630]
sub edx, eax
mov eax, edx
shr eax, 0xc
shl edx, 0x14
or eax, edx
mov edx, dword [0x409634]
xor edx, ebp
mov ebp, dword [0x409638]
and edx, ebp
mov ebp, dword [0x409630]
xor edx, ebp
mov ebp, dword [0x40973c]
sub eax, edx
mov edx, dword [0x409740]
sub edx, ebp
sub eax, ecx
mov ebp, edx
sub eax, 0x4787c62a
shr ebp, 0xc
shl edx, 0x14
or ebp, edx
mov edx, dword [0x409738]
mov dword [esp + 0x14], ebp
mov ebp, dword [0x409734]
xor edx, ebp
mov ebp, dword [0x40973c]
and edx, ebp
mov ebp, dword [0x409734]
xor edx, ebp
mov ebp, dword [esp + 0x14]
sub ebp, edx
mov dword [0x409840], eax
sub ebp, ecx
sub ebp, 0x4787c62a
cmp eax, ebp
mov dword [0x4098c0], ebp
jne 0x4032ed
mov ecx, dword [0x409674]
mov edx, dword [0x409670]
xor ecx, edx
mov edx, dword [0x40966c]
and ecx, edx
mov edx, dword [0x409670]
xor ecx, edx
mov edx, dword [0x409668]
add ecx, eax
add ecx, edx
mov edx, dword [0x409674]
lea eax, [ecx - 0x29d0efa3]
add ecx, 0x62f105d
shr eax, 0x1b
shl ecx, 5
or eax, ecx
mov ecx, edx
add eax, edx
and ecx, 0x20000
xor ecx, eax
mov dword [0x409678], eax
test ecx, 0x80020000
jne 0x4032ed
mov eax, dword [0x409778]
mov ecx, dword [0x409774]
xor eax, ecx
mov ecx, dword [0x409770]
and eax, ecx
mov ecx, dword [0x409774]
xor eax, ecx
mov ecx, dword [0x40976c]
add eax, ebp
lea ebp, [eax + ecx]
mov ecx, dword [0x409778]
lea eax, [ebp - 0x29d0efa3]
add ebp, 0x62f105d
shr eax, 0x1b
shl ebp, 5
or eax, ebp
mov ebp, dword [0x409678]
add eax, ecx
mov dword [0x40977c], eax
xor eax, ebp
cmp eax, 0x80000000
jne 0x4032ed
mov eax, ebp
mov ebp, dword [0x409670]
xor eax, edx
and eax, ebp
mov ebp, dword [0x40966c]
xor eax, edx
add eax, ebp
mov ebp, dword [0x409854]
add ebp, eax
lea eax, [ebp + 0x2441453]
add ebp, 0x441453
shr eax, 0x17
shl ebp, 9
or eax, ebp
mov ebp, dword [0x409678]
add eax, ebp
test eax, 0x80000000
mov dword [0x40967c], eax
jne 0x4032ed
mov eax, dword [0x40977c]
mov ebp, dword [0x409774]
xor eax, ecx
and eax, ebp
mov ebp, dword [0x409770]
xor eax, ecx
add eax, ebp
mov ebp, dword [0x4098d4]
add ebp, eax
lea eax, [ebp + 0x2441453]
add ebp, 0x441453
shr eax, 0x17
shl ebp, 9
or eax, ebp
mov ebp, dword [0x40977c]
add eax, ebp
mov ebp, dword [0x40967c]
mov dword [0x409780], eax
xor eax, ebp
cmp eax, 0x80000000
jne 0x4032ed
mov eax, dword [0x409678]
xor ebp, eax
and ebp, edx
mov edx, dword [0x409868]
xor ebp, eax
mov eax, dword [0x409670]
add ebp, eax
lea eax, [edx + ebp]
mov ebp, dword [0x40967c]
lea edx, [eax - 0x275e197f]
add eax, 0x1e681
shr edx, 0x12
shl eax, 0xe
or edx, eax
add edx, ebp
test edx, 0x80000000
mov dword [0x409680], edx
jne 0x4032ed
mov ebp, dword [0x409780]
mov eax, dword [0x40977c]
xor ebp, eax
and ebp, ecx
mov ecx, dword [0x409780]
xor ebp, eax
mov eax, dword [0x409774]
add ebp, eax
mov eax, dword [0x4098e8]
add eax, ebp
lea ebp, [eax - 0x275e197f]
add eax, 0x1e681
shr ebp, 0x12
shl eax, 0xe
or ebp, eax
add ebp, ecx
cmp edx, ebp
mov dword [0x409784], ebp
jne 0x4032ed
mov eax, dword [0x40967c]
mov ecx, edx
xor ecx, eax
mov eax, dword [0x409678]
and ecx, eax
mov eax, dword [0x40967c]
xor ecx, eax
mov eax, dword [0x409674]
add ecx, esi
mov esi, dword [0x409780]
add ecx, eax
lea eax, [ecx - 0x182c0438]
add ecx, 0xbc8
shr eax, 0xc
shl ecx, 0x14
or eax, ecx
mov ecx, ebp
xor ecx, esi
mov esi, dword [0x40977c]
and ecx, esi
mov esi, dword [0x409780]
xor ecx, esi
mov esi, dword [0x409778]
add ecx, edi
add eax, edx
add esi, ecx
mov dword [0x409684], eax
lea ecx, [esi - 0x182c0438]
add esi, 0xbc8
shr ecx, 0xc
shl esi, 0x14
or ecx, esi
add ecx, ebp
cmp eax, ecx
mov dword [0x409788], ecx
jne 0x4032ed
mov edi, dword [0x40967c]
mov esi, eax
xor esi, edx
and esi, edi
mov edi, dword [0x409678]
xor esi, edx
add esi, edi
mov edi, dword [0x409850]
add esi, edi
lea edi, [esi + 0x1e1cde6]
add esi, 0x21e1cde6
shl edi, 5
shr esi, 0x1b
or edi, esi
mov esi, ecx
add edi, eax
xor esi, ebp
mov dword [0x409688], edi
mov edi, dword [0x409780]
and esi, edi
mov edi, dword [0x40977c]
xor esi, ebp
add esi, edi
mov edi, dword [0x4098d0]
add edi, esi
lea esi, [edi + 0x1e1cde6]
add edi, 0x21e1cde6
shl esi, 5
shr edi, 0x1b
or esi, edi
mov edi, dword [0x409688]
add esi, ecx
cmp edi, esi
mov dword [0x40978c], esi
jne 0x4032ed
mov esi, dword [0x40967c]
xor edi, eax
and edi, edx
xor edi, eax
add edi, esi
mov esi, dword [0x409864]
add edi, esi
lea esi, [edi - 0x3cc8f82a]
add edi, 0x3707d6
shr esi, 0x17
shl edi, 9
or esi, edi
mov edi, dword [0x409688]
add esi, edi
mov edi, dword [0x409780]
mov dword [0x40968c], esi
mov esi, dword [0x40978c]
xor esi, ecx
and esi, ebp
xor esi, ecx
add esi, edi
mov edi, dword [0x4098e4]
add edi, esi
lea esi, [edi - 0x3cc8f82a]
add edi, 0x3707d6
shr esi, 0x17
shl edi, 9
or esi, edi
mov edi, dword [0x40978c]
add esi, edi
mov edi, dword [0x40968c]
cmp edi, esi
mov dword [0x409790], esi
jne 0x4032ed
mov esi, dword [0x409688]
xor edi, esi
and edi, eax
xor edi, esi
mov esi, dword [0x40968c]
add edi, edx
lea eax, [edi + ebx]
lea edx, [eax + 0x10d87]
add eax, 0xf4d50d87
shl edx, 0xe
shr eax, 0x12
or edx, eax
mov eax, dword [0x40978c]
add edx, esi
mov esi, dword [0x409790]
mov edi, esi
mov dword [0x409690], edx
xor edi, eax
and edi, ecx
xor edi, eax
add edi, ebp
add ebx, edi
lea eax, [ebx - 0xb2af279]
add ebx, 0x10d87
shr eax, 0x12
shl ebx, 0xe
or eax, ebx
add eax, esi
cmp edx, eax
mov dword [0x409794], eax
je 0x40330c
mov esi, dword [sym.imp.MSVCRT.dll_rand]
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 0x12c
mov dword [esp + 0x10], eax
jb 0x402abe
jmp 0x40242d
cmp dword [esp + 0x10], 0x12c
jae 0x402427
mov esi, dword [sym.imp.MSVCRT.dll_rand]
mov dword [esp + 0x10], 0
call esi
cdq
mov ecx, 0x1f
mov edi, dword [0x409670]
idiv ecx
mov eax, 1
mov ebp, dword [0x409668]
mov ebx, dword [0x409664]
mov ecx, edx
shl eax, cl
mov ecx, dword [0x409674]
xor ecx, eax
mov dword [0x409674], ecx
lea edx, [ecx - 0x80000000]
sub ecx, edi
mov eax, ecx
mov dword [0x409778], edx
shr eax, 0x14
shl ecx, 0xc
or eax, ecx
mov ecx, dword [0x40966c]
xor edi, ecx
and edi, ebp
mov ebp, dword [0x40976c]
xor edi, ecx
sub eax, edi
mov edi, dword [0x409774]
sub edx, edi
sub eax, ebx
mov ecx, edx
mov ebx, dword [0x409768]
shr ecx, 0x14
shl edx, 0xc
or ecx, edx
mov edx, dword [0x409770]
xor edi, edx
add eax, 0x16493856
and edi, ebp
mov dword [0x40982c], eax
xor edi, edx
sub ecx, edi
sub ecx, ebx
add ecx, 0x16493856
cmp eax, ecx
mov dword [0x4098ac], ecx
jne 0x404c95
mov esi, dword [0x409474]
mov edx, dword [0x409478]
mov ebx, dword [0x409470]
mov ebp, dword [0x40946c]
mov ecx, esi
xor ecx, edx
and ecx, ebx
xor ecx, edx
add ecx, ebp
mov ebp, dword [0x409634]
add eax, ecx
lea ecx, [eax - 0x28955b88]
add eax, 0x16aa478
shr ecx, 0x19
shl eax, 7
or ecx, eax
mov eax, esi
add ecx, ebx
xor eax, ebx
and eax, ecx
mov dword [0x409628], ecx
xor eax, esi
mov dword [0x40972c], ecx
add eax, edx
mov edx, dword [0x409830]
add edx, eax
lea eax, [edx - 0x173848aa]
add edx, 0x7b756
shr eax, 0x14
shl edx, 0xc
or eax, edx
mov edx, dword [0x409630]
add eax, ecx
sub edx, eax
mov dword [0x40962c], eax
mov edi, edx
mov dword [0x409730], eax
shr edi, 0x11
shl edx, 0xf
or edi, edx
mov edx, ecx
xor edx, ebx
and edx, eax
xor edx, ebx
sub edi, edx
mov edx, ebp
sub edi, esi
mov esi, dword [0x409630]
sub edx, esi
sub edi, 0x242070db
mov esi, edx
mov dword [0x409834], edi
shl esi, 0xa
shr edx, 0x16
or esi, edx
mov edx, eax
xor edx, ecx
mov dword [0x4098b4], edi
and edx, dword [0x409630]
xor edx, ecx
sub esi, edx
mov edx, dword [0x409638]
sub esi, ebx
mov ebx, dword [0x409630]
add esi, 0x3e423112
sub edx, ebp
mov dword [0x409838], esi
mov dword [0x4098b8], esi
mov esi, edx
shl esi, 0x19
shr edx, 7
or esi, edx
mov edx, eax
xor edx, ebx
and edx, ebp
xor edx, eax
sub esi, edx
mov edx, dword [0x40973c]
sub esi, ecx
add esi, 0xa83f051
mov dword [0x40983c], esi
mov ebx, dword [0x409738]
mov ebp, dword [0x409734]
sub edx, ebx
mov ebx, edx
shl ebx, 0x19
shr edx, 7
or ebx, edx
mov edx, eax
xor edx, ebp
mov ebp, dword [0x409738]
and edx, ebp
xor edx, eax
sub ebx, edx
sub ebx, ecx
add ebx, 0xa83f051
mov ecx, ebx
mov dword [0x4098bc], ebx
xor ecx, esi
cmp ecx, 0x80000000
jne 0x404c8f
mov edx, dword [0x40963c]
mov ecx, dword [0x409638]
mov ebp, dword [0x409630]
sub edx, ecx
mov ecx, edx
shr ecx, 0xc
shl edx, 0x14
or ecx, edx
mov edx, dword [0x409634]
xor edx, ebp
mov ebp, dword [0x409638]
and edx, ebp
mov ebp, dword [0x409630]
xor edx, ebp
mov ebp, dword [0x40973c]
sub ecx, edx
mov edx, dword [0x409740]
sub edx, ebp
sub ecx, eax
mov ebp, edx
sub ecx, 0x4787c62a
shr ebp, 0xc
shl edx, 0x14
or ebp, edx
mov edx, dword [0x409734]
mov dword [esp + 0x14], ebp
mov ebp, dword [0x409738]
xor ebp, edx
mov edx, dword [0x40973c]
and ebp, edx
mov edx, dword [0x409734]
xor ebp, edx
mov edx, dword [esp + 0x14]
sub edx, ebp
mov dword [0x409840], ecx
sub edx, eax
sub edx, 0x4787c62a
cmp ecx, edx
mov dword [0x4098c0], edx
jne 0x404c8f
mov eax, dword [0x409674]
mov ebp, dword [0x409670]
xor eax, ebp
mov ebp, dword [0x40966c]
and eax, ebp
mov ebp, dword [0x409670]
xor eax, ebp
add eax, ecx
mov ecx, dword [0x409668]
add eax, ecx
lea ebp, [eax - 0x29d0efa3]
add eax, 0x62f105d
shr ebp, 0x1b
shl eax, 5
or ebp, eax
mov eax, dword [0x409674]
add ebp, eax
and eax, 0x20000
xor eax, ebp
mov dword [0x409678], ebp
test eax, 0x80020000
jne 0x404c8f
mov eax, dword [0x409778]
mov ecx, dword [0x409774]
xor eax, ecx
mov ecx, dword [0x409770]
and eax, ecx
mov ecx, dword [0x409774]
xor eax, ecx
mov ecx, dword [0x40976c]
add eax, edx
mov edx, dword [0x409778]
add eax, ecx
lea ecx, [eax - 0x29d0efa3]
add eax, 0x62f105d
shr ecx, 0x1b
shl eax, 5
or ecx, eax
add ecx, edx
mov edx, ecx
mov dword [0x40977c], ecx
xor edx, ebp
cmp edx, 0x80000000
jne 0x404c8f
mov eax, dword [0x409674]
mov edx, ebp
xor edx, eax
and edx, dword [0x409670]
xor edx, eax
mov eax, dword [0x40966c]
add edx, eax
mov eax, dword [0x409854]
add edx, eax
lea eax, [edx + 0x2441453]
add edx, 0x441453
shr eax, 0x17
shl edx, 9
or eax, edx
add eax, ebp
test eax, 0x80000000
mov dword [0x40967c], eax
jne 0x404c8f
mov edx, dword [0x409778]
xor ecx, edx
mov edx, dword [0x409774]
and ecx, edx
mov edx, dword [0x409778]
xor ecx, edx
mov edx, dword [0x409770]
add ecx, edx
mov edx, dword [0x4098d4]
add edx, ecx
lea ecx, [edx + 0x2441453]
add edx, 0x441453
shr ecx, 0x17
shl edx, 9
or ecx, edx
mov edx, dword [0x40977c]
add ecx, edx
mov dword [0x409780], ecx
xor ecx, eax
cmp ecx, 0x80000000
jne 0x404c8f
mov edx, dword [0x409674]
mov ecx, eax
xor ecx, ebp
and ecx, edx
mov edx, dword [0x409670]
xor ecx, ebp
add ecx, edx
mov edx, dword [0x409868]
add ecx, edx
lea edx, [ecx - 0x275e197f]
add ecx, 0x1e681
shr edx, 0x12
shl ecx, 0xe
or edx, ecx
add edx, eax
test edx, 0x80000000
mov dword [0x409680], edx
jne 0x404c8f
mov eax, dword [0x409780]
mov ecx, dword [0x40977c]
xor eax, ecx
mov ecx, dword [0x409778]
and eax, ecx
mov ecx, dword [0x40977c]
xor eax, ecx
mov ecx, dword [0x409774]
add eax, ecx
mov ecx, dword [0x4098e8]
add ecx, eax
lea eax, [ecx - 0x275e197f]
add ecx, 0x1e681
shr eax, 0x12
shl ecx, 0xe
or eax, ecx
mov ecx, dword [0x409780]
add eax, ecx
cmp edx, eax
mov dword [0x409784], eax
jne 0x404c8f
mov eax, dword [0x40967c]
mov ecx, edx
xor ecx, eax
and ecx, ebp
xor ecx, eax
mov eax, dword [0x409674]
add ecx, esi
mov esi, dword [0x409780]
add ecx, eax
lea eax, [ecx - 0x182c0438]
add ecx, 0xbc8
shr eax, 0xc
shl ecx, 0x14
or eax, ecx
mov ecx, dword [0x409784]
xor ecx, esi
mov esi, dword [0x40977c]
and ecx, esi
mov esi, dword [0x409780]
xor ecx, esi
mov esi, dword [0x409778]
add ecx, ebx
mov ebx, dword [0x409784]
add esi, ecx
add eax, edx
mov dword [0x409684], eax
lea ecx, [esi - 0x182c0438]
add esi, 0xbc8
shr ecx, 0xc
shl esi, 0x14
or ecx, esi
add ecx, ebx
cmp eax, ecx
mov dword [0x409788], ecx
jne 0x404c8f
mov ebx, dword [0x40967c]
mov esi, eax
xor esi, edx
and esi, ebx
mov ebx, dword [0x409850]
xor esi, edx
add esi, ebp
mov ebp, dword [0x409784]
add esi, ebx
lea ebx, [esi + 0x1e1cde6]
add esi, 0x21e1cde6
shl ebx, 5
shr esi, 0x1b
or ebx, esi
mov esi, ecx
xor esi, ebp
mov ebp, dword [0x409780]
and esi, ebp
mov ebp, dword [0x409784]
xor esi, ebp
mov ebp, dword [0x40977c]
add esi, ebp
mov ebp, dword [0x4098d0]
add esi, ebp
add ebx, eax
mov dword [0x409688], ebx
lea ebp, [esi + 0x1e1cde6]
add esi, 0x21e1cde6
shl ebp, 5
shr esi, 0x1b
or ebp, esi
add ebp, ecx
cmp ebx, ebp
mov dword [0x40978c], ebp
jne 0x404c8f
mov esi, ebx
xor esi, eax
and esi, edx
mov edx, dword [0x40967c]
xor esi, eax
add esi, edx
mov edx, dword [0x409864]
add esi, edx
lea edx, [esi - 0x3cc8f82a]
add esi, 0x3707d6
shr edx, 0x17
shl esi, 9
or edx, esi
mov esi, dword [0x409784]
add edx, ebx
mov dword [0x40968c], edx
mov edx, ebp
xor edx, ecx
and edx, esi
mov esi, dword [0x409780]
xor edx, ecx
add edx, esi
mov esi, dword [0x4098e4]
add esi, edx
lea edx, [esi - 0x3cc8f82a]
add esi, 0x3707d6
shr edx, 0x17
shl esi, 9
or edx, esi
mov esi, dword [0x40968c]
add edx, ebp
cmp esi, edx
mov dword [0x409790], edx
jne 0x404c8f
mov edx, dword [0x409680]
xor esi, ebx
and esi, eax
xor esi, ebx
add esi, edx
mov edx, dword [0x409838]
add esi, edx
lea edx, [esi + 0x10d87]
add esi, 0xf4d50d87
shl edx, 0xe
shr esi, 0x12
or edx, esi
mov esi, dword [0x40968c]
add edx, esi
mov esi, dword [0x409784]
mov dword [0x409690], edx
mov edx, dword [0x409790]
xor edx, ebp
and edx, ecx
xor edx, ebp
add edx, esi
mov esi, dword [0x409838]
add esi, edx
lea edx, [esi - 0xb2af279]
add esi, 0x10d87
shr edx, 0x12
shl esi, 0xe
or edx, esi
mov esi, dword [0x409790]
add edx, esi
mov esi, dword [0x409690]
cmp esi, edx
mov dword [0x409794], edx
jne 0x404c8f
mov edx, dword [0x40968c]
xor esi, edx
and esi, ebx
xor esi, edx
add esi, eax
mov eax, dword [0x40984c]
add eax, esi
mov esi, dword [0x409690]
lea edx, [eax + 0x455a14ed]
add eax, 0x4ed
shr edx, 0xc
shl eax, 0x14
or edx, eax
mov eax, dword [0x409790]
add edx, esi
mov esi, dword [0x409794]
xor esi, eax
mov dword [0x409694], edx
and esi, ebp
xor esi, eax
add esi, ecx
mov ecx, dword [0x4098cc]
lea eax, [esi + ecx]
mov ecx, dword [0x409794]
lea esi, [eax + 0x455a14ed]
add eax, 0x4ed
shr esi, 0xc
shl eax, 0x14
or esi, eax
add esi, ecx
cmp edx, esi
mov dword [0x409798], esi
jne 0x404c8f
mov ecx, dword [0x409690]
mov eax, edx
xor eax, ecx
mov ecx, dword [0x40968c]
and eax, ecx
mov ecx, dword [0x409690]
xor eax, ecx
mov ecx, dword [0x409860]
add eax, ebx
mov ebx, dword [0x409790]
add ecx, eax
lea eax, [ecx - 0x561c16fb]
add ecx, 0x1e3e905
shr eax, 0x1b
shl ecx, 5
or eax, ecx
mov ecx, dword [0x409794]
xor ecx, esi
add eax, edx
and ecx, ebx
mov ebx, dword [0x409794]
xor ecx, ebx
mov ebx, dword [0x4098e0]
add ecx, ebp
mov dword [0x409698], eax
add ebx, ecx
lea ecx, [ebx - 0x561c16fb]
add ebx, 0x1e3e905
shr ecx, 0x1b
shl ebx, 5
or ecx, ebx
add ecx, esi
cmp eax, ecx
mov dword [0x40979c], ecx
jne 0x404c8f
mov ebp, dword [0x409690]
mov ebx, edx
xor ebx, eax
and ebx, ebp
mov ebp, dword [0x40968c]
xor ebx, edx
add ebx, ebp
lea ebp, [ebx + edi]
lea ebx, [ebp + 0x6fa3f8]
add ebp, 0xfcefa3f8
shl ebx, 9
shr ebp, 0x17
or ebx, ebp
mov ebp, dword [0x409794]
add ebx, eax
mov dword [0x40969c], ebx
mov ebx, ecx
xor ebx, esi
and ebx, ebp
mov ebp, dword [0x409790]
xor ebx, esi
add ebx, ebp
add ebx, edi
lea edi, [ebx + 0x6fa3f8]
add ebx, 0xfcefa3f8
shl edi, 9
shr ebx, 0x17
or edi, ebx
mov ebx, dword [0x40969c]
add edi, ecx
cmp ebx, edi
mov dword [0x4097a0], edi
jne 0x404c8f
mov ebp, dword [0x409690]
xor ebx, eax
and ebx, edx
xor ebx, eax
add ebx, ebp
mov ebp, dword [0x409848]
add ebp, ebx
lea ebx, [ebp + 0x302d9]
add ebp, 0x676f02d9
shl ebx, 0xe
shr ebp, 0x12
or ebx, ebp
mov ebp, dword [0x40969c]
add ebx, ebp
mov ebp, dword [0x409794]
mov dword [0x4096a0], ebx
mov ebx, edi
xor ebx, ecx
and ebx, esi
xor ebx, ecx
add ebx, ebp
mov ebp, dword [0x4098c8]
add ebp, ebx
lea ebx, [ebp + 0x302d9]
add ebp, 0x676f02d9
shl ebx, 0xe
shr ebp, 0x12
or ebx, ebp
mov ebp, dword [0x4096a0]
add ebx, edi
cmp ebp, ebx
mov dword [0x4097a4], ebx
jne 0x404c8f
mov ebx, dword [0x40969c]
xor ebp, ebx
and ebp, eax
xor ebp, ebx
add ebp, edx
mov edx, dword [0x40985c]
lea ebx, [edx + ebp]
mov ebp, dword [0x4096a0]
lea edx, [ebx - 0x72d5b376]
add ebx, 0xc8a
shr edx, 0xc
shl ebx, 0x14
or edx, ebx
add edx, ebp
mov ebp, dword [0x4097a4]
mov ebx, ebp
mov dword [0x4096a4], edx
xor ebx, edi
and ebx, ecx
xor ebx, edi
add ebx, dword [0x4098dc]
add ebx, esi
lea esi, [ebx - 0x72d5b376]
add ebx, 0xc8a
shr esi, 0xc
shl ebx, 0x14
or esi, ebx
add esi, ebp
cmp edx, esi
mov dword [0x4097a8], esi
jne 0x404c8f
mov ebp, dword [0x4096a0]
mov ebx, edx
xor ebx, ebp
mov ebp, dword [0x40969c]
xor ebx, ebp
mov ebp, dword [0x409840]
add ebx, ebp
add eax, ebx
mov ebx, dword [0x4097a4]
lea ebp, [eax - 0x5c6be]
add eax, 0xffa3942
shr ebp, 0x1c
shl eax, 4
or ebp, eax
mov eax, esi
xor eax, ebx
mov ebx, dword [0x4098c0]
xor eax, edi
add ebp, edx
add eax, ebx
mov dword [0x4096a8], ebp
add ecx, eax
lea eax, [ecx - 0x5c6be]
add ecx, 0xffa3942
shr eax, 0x1c
shl ecx, 4
or eax, ecx
add eax, esi
cmp ebp, eax
mov dword [0x4097ac], eax
jne 0x404c8f
mov ebx, dword [0x4096a0]
mov ecx, ebp
xor ecx, edx
xor ecx, ebx
mov ebx, dword [0x40969c]
add ecx, ebx
mov ebx, dword [0x40984c]
add ebx, ecx
lea ecx, [ebx + 0x11f681]
add ebx, 0x8771f681
shl ecx, 0xb
shr ebx, 0x15
or ecx, ebx
mov ebx, dword [0x4097a4]
add ecx, ebp
mov dword [0x4096ac], ecx
mov ecx, eax
xor ecx, esi
xor ecx, ebx
add ecx, edi
mov edi, dword [0x4098cc]
add edi, ecx
lea ecx, [edi + 0x11f681]
add edi, 0x8771f681
shl ecx, 0xb
shr edi, 0x15
or ecx, edi
mov edi, dword [0x4096ac]
add ecx, eax
cmp edi, ecx
mov dword [0x4097b0], ecx
jne 0x404c8f
mov ebx, dword [0x409858]
xor edi, ebp
xor edi, edx
add edi, ebx
mov ebx, dword [0x4096a0]
add ebx, edi
lea edi, [ebx + 0x6d9d6122]
add ebx, 0x6122
shr edi, 0x10
shl ebx, 0x10
or edi, ebx
mov ebx, dword [0x4096ac]
add edi, ebx
mov ebx, ecx
xor ebx, eax
mov dword [0x4096b0], edi
xor ebx, esi
mov esi, dword [0x4098d8]
add ebx, esi
mov esi, dword [0x4097a4]
add esi, ebx
lea ebx, [esi + 0x6d9d6122]
add esi, 0x6122
shr ebx, 0x10
shl esi, 0x10
or ebx, esi
add ebx, ecx
mov esi, ebx
mov dword [0x4097b4], ebx
xor esi, edi
cmp esi, 0x80000000
jne 0x404c8f
mov esi, edi
xor esi, dword [0x4096ac]
xor esi, ebp
add esi, dword [0x409864]
add esi, edx
lea edx, [esi - 0x21ac7f4]
add esi, 0xc
shr edx, 9
shl esi, 0x17
or edx, esi
mov esi, ebx
xor esi, ecx
mov ecx, dword [0x4098e4]
xor esi, eax
add edx, edi
add esi, ecx
mov ecx, dword [0x4097a8]
add ecx, esi
mov dword [0x4096b4], edx
lea esi, [ecx - 0x21ac7f4]
add ecx, 0xc
shr esi, 9
shl ecx, 0x17
or esi, ecx
add esi, ebx
mov ecx, esi
mov dword [0x4097b8], esi
xor ecx, edx
cmp ecx, 0x80000000
jne 0x404c8f
mov ecx, edx
xor ecx, edi
xor ecx, dword [0x4096ac]
add ecx, dword [0x409830]
add ebp, ecx
lea ecx, [ebp + 0x4beea44]
add ebp, 0xa4beea44
shl ecx, 4
shr ebp, 0x1c
or ecx, ebp
mov ebp, dword [0x4097b0]
add ecx, edx
mov dword [0x4096b8], ecx
mov ecx, esi
xor ecx, ebx
xor ecx, ebp
mov ebp, dword [0x4098b0]
add ecx, ebp
add eax, ecx
lea ecx, [eax + 0x4beea44]
add eax, 0xa4beea44
shl ecx, 4
shr eax, 0x1c
or ecx, eax
mov eax, dword [0x4096b8]
add ecx, esi
mov ebp, ecx
mov dword [0x4097bc], ecx
xor ebp, eax
cmp ebp, 0x80000000
jne 0x404c8f
mov ebp, dword [0x40983c]
xor eax, edx
xor eax, edi
xor ecx, esi
add eax, ebp
mov ebp, dword [0x4096ac]
add ebp, eax
xor ecx, ebx
lea eax, [ebp + 0x4bdecfa9]
add ebp, 0x1ecfa9
shr eax, 0x15
shl ebp, 0xb
or eax, ebp
mov ebp, dword [0x4096b8]
add eax, ebp
mov ebp, dword [0x4098bc]
add ecx, ebp
mov ebp, dword [0x4097b0]
add ebp, ecx
mov dword [0x4096bc], eax
lea ecx, [ebp + 0x4bdecfa9]
add ebp, 0x1ecfa9
shr ecx, 0x15
shl ebp, 0xb
or ecx, ebp
mov ebp, dword [0x4097bc]
add ecx, ebp
mov ebp, ecx
mov dword [0x4097c0], ecx
xor ebp, eax
cmp ebp, 0x80000000
jne 0x404c8f
mov ebp, eax
xor ebp, dword [0x4096b8]
xor ebp, edx
add ebp, edi
mov edi, dword [0x409848]
add ebp, edi
lea edi, [ebp - 0x944b4a0]
add ebp, 0x4b60
shr edi, 0x10
shl ebp, 0x10
or edi, ebp
mov ebp, dword [0x4097bc]
add edi, eax
mov dword [0x4096c0], edi
mov edi, ecx
xor edi, ebp
xor edi, esi
add edi, ebx
mov ebx, dword [0x4098c8]
add ebx, edi
lea edi, [ebx - 0x944b4a0]
add ebx, 0x4b60
shr edi, 0x10
shl ebx, 0x10
or edi, ebx
mov ebx, dword [0x4096c0]
add edi, ecx
mov ebp, edi
mov dword [0x4097c4], edi
xor ebp, ebx
cmp ebp, 0x80000000
jne 0x404c8f
mov ebp, dword [0x4096b8]
xor ebx, eax
xor ebx, ebp
mov ebp, dword [0x4097bc]
add ebx, edx
mov edx, dword [0x409854]
add ebx, edx
lea edx, [ebx - 0x41404390]
add ebx, 0x70
shr edx, 9
shl ebx, 0x17
or edx, ebx
mov ebx, dword [0x4096c0]
add edx, ebx
mov ebx, edi
xor ebx, ecx
mov dword [0x4096c4], edx
xor ebx, ebp
add ebx, esi
mov esi, dword [0x4098d4]
add ebx, esi
lea esi, [ebx - 0x41404390]
add ebx, 0x70
shr esi, 9
shl ebx, 0x17
or esi, ebx
add esi, edi
mov ebx, esi
mov dword [0x4097c8], esi
xor ebx, edx
cmp ebx, 0x80000000
jne 0x404c8f
mov ebp, dword [0x4096c0]
mov ebx, edx
xor ebx, ebp
mov ebp, dword [0x409860]
xor ebx, eax
add ebx, ebp
mov ebp, dword [0x4096b8]
add ebp, ebx
lea ebx, [ebp + 0x89b7ec6]
add ebp, 0x289b7ec6
shl ebx, 4
shr ebp, 0x1c
or ebx, ebp
mov ebp, dword [0x4098e0]
add ebx, edx
mov dword [0x4096c8], ebx
mov ebx, esi
xor ebx, edi
xor ebx, ecx
add ebx, ebp
mov ebp, dword [0x4097bc]
add ebp, ebx
lea ebx, [ebp + 0x89b7ec6]
add ebp, 0x289b7ec6
shl ebx, 4
shr ebp, 0x1c
or ebx, ebp
add ebx, esi
mov dword [0x4097cc], ebx
mov ebp, ebx
mov ebx, dword [0x4096c8]
xor ebp, ebx
cmp ebp, 0x80000000
jne 0x404c8f
mov ebp, dword [0x4096c0]
xor ebx, edx
xor ebx, ebp
mov ebp, dword [0x40982c]
add ebx, ebp
mov ebp, dword [0x4098ac]
add eax, ebx
lea ebx, [eax + 0x127fa]
add eax, 0xeaa127fa
shl ebx, 0xb
shr eax, 0x15
or ebx, eax
mov eax, dword [0x4096c8]
add ebx, eax
mov eax, dword [0x4097cc]
xor eax, esi
mov dword [0x4096cc], ebx
xor eax, edi
add eax, ebp
add ecx, eax
lea ebp, [ecx + 0x127fa]
add ecx, 0xeaa127fa
shl ebp, 0xb
shr ecx, 0x15
or ebp, ecx
mov ecx, dword [0x4097cc]
add ebp, ecx
mov ecx, ebp
mov dword [0x4097d0], ebp
xor ecx, ebx
cmp ecx, 0x80000000
jne 0x404c8f
mov ecx, dword [0x4096c8]
mov eax, ebx
xor eax, ecx
mov ecx, dword [0x409838]
xor eax, edx
add eax, ecx
mov ecx, dword [0x4096c0]
add eax, ecx
lea ecx, [eax + 0x3085]
add eax, 0xd4ef3085
shl ecx, 0x10
shr eax, 0x10
or ecx, eax
mov eax, ebp
add ecx, ebx
mov dword [0x4096d0], ecx
mov ecx, dword [0x4097cc]
xor eax, ecx
mov ecx, dword [0x409838]
xor eax, esi
add eax, ecx
add eax, edi
lea edi, [eax + 0x3085]
add eax, 0xd4ef3085
shl edi, 0x10
shr eax, 0x10
or edi, eax
mov eax, dword [0x4096d0]
add edi, ebp
mov ecx, edi
mov dword [0x4097d4], edi
xor ecx, eax
cmp ecx, 0x80000000
jne 0x404c8f
mov ecx, dword [0x4096c8]
xor eax, ebx
xor eax, ecx
mov ecx, dword [0x409844]
add eax, edx
mov edx, dword [0x4096d0]
add ecx, eax
lea eax, [ecx + 0x4881d05]
add ecx, 0x105
shr eax, 9
shl ecx, 0x17
or eax, ecx
mov ecx, edi
xor ecx, ebp
add eax, edx
xor ecx, dword [0x4097cc]
mov dword [0x4096d4], eax
add ecx, esi
mov esi, dword [0x4098c4]
add esi, ecx
lea ecx, [esi + 0x4881d05]
add esi, 0x105
shr ecx, 9
shl esi, 0x17
or ecx, esi
add ecx, edi
mov esi, ecx
mov dword [0x4097d8], ecx
xor esi, eax
cmp esi, 0x80000000
jne 0x404c8f
mov esi, eax
xor esi, edx
mov edx, dword [0x4096c8]
xor esi, ebx
add esi, edx
mov edx, dword [0x409850]
add esi, edx
lea edx, [esi - 0x262b2fc7]
add esi, 0x9d4d039
shr edx, 0x1c
shl esi, 4
or edx, esi
mov esi, ecx
xor esi, edi
mov edi, dword [0x4097cc]
xor esi, ebp
add edx, eax
add esi, edi
mov edi, dword [0x4098d0]
add edi, esi
mov dword [0x4096d8], edx
lea esi, [edi - 0x262b2fc7]
add edi, 0x9d4d039
shr esi, 0x1c
shl edi, 4
or esi, edi
add esi, ecx
mov dword [0x4097dc], esi
xor esi, edx
cmp esi, 0x80000000
jne 0x404c8f
mov edi, dword [0x4096d0]
mov esi, edx
xor esi, eax
xor esi, edi
mov edi, dword [0x40985c]
add esi, edi
mov edi, dword [0x4097dc]
add ebx, esi
xor edi, ecx
lea esi, [ebx + 0x1b99e5]
add ebx, 0xe6db99e5
shl esi, 0xb
shr ebx, 0x15
or esi, ebx
mov ebx, dword [0x4097d4]
xor edi, ebx
mov ebx, dword [0x4098dc]
add edi, ebx
mov ebx, dword [0x4097dc]
add ebp, edi
add esi, edx
mov dword [0x4096dc], esi
lea edi, [ebp + 0x1b99e5]
add ebp, 0xe6db99e5
shl edi, 0xb
shr ebp, 0x15
or edi, ebp
add edi, ebx
mov ebx, edi
mov dword [0x4097e0], edi
xor ebx, esi
cmp ebx, 0x80000000
jne 0x404c8f
mov ebp, dword [0x409868]
mov ebx, esi
xor ebx, edx
xor ebx, eax
add ebx, ebp
mov ebp, dword [0x4096d0]
add ebp, ebx
lea ebx, [ebp + 0x7cf8]
add ebp, 0x1fa27cf8
shl ebx, 0x10
shr ebp, 0x10
or ebx, ebp
mov ebp, dword [0x4097dc]
add ebx, esi
mov dword [0x4096e0], ebx
mov ebx, edi
xor ebx, ebp
mov ebp, dword [0x4098e8]
xor ebx, ecx
add ebx, ebp
mov ebp, dword [0x4097d4]
add ebp, ebx
lea ebx, [ebp + 0x7cf8]
add ebp, 0x1fa27cf8
shl ebx, 0x10
shr ebp, 0x10
or ebx, ebp
add ebx, edi
mov dword [0x4097e4], ebx
mov ebp, ebx
mov ebx, dword [0x4096e0]
xor ebp, ebx
cmp ebp, 0x80000000
jne 0x404c8f
mov ebp, dword [0x409834]
xor ebx, esi
xor ebx, edx
add ebx, ebp
add eax, ebx
lea ebx, [eax - 0x3b53a99b]
add eax, 0x65
shr ebx, 9
shl eax, 0x17
or ebx, eax
mov eax, dword [0x4096e0]
add ebx, eax
mov eax, ebx
mov dword [0x4096e4], ebx
xor eax, esi
test eax, 0x80000000
jne 0x404c8f
mov eax, dword [0x4097e4]
xor eax, edi
xor eax, dword [0x4097dc]
add eax, ecx
lea ecx, [eax + ebp]
lea eax, [ecx - 0x3b53a99b]
add ecx, 0x65
shr eax, 9
shl ecx, 0x17
or eax, ecx
mov ecx, dword [0x4097e4]
add eax, ecx
mov ecx, eax
mov dword [0x4097e8], eax
xor ecx, ebx
cmp ecx, 0x80000000
jne 0x404c8f
mov ebp, dword [0x4096e0]
mov ecx, esi
not ecx
or ecx, ebx
xor ecx, ebp
add ecx, edx
mov edx, dword [0x40982c]
add ecx, edx
mov edx, dword [0x4096e0]
lea ebp, [ecx + 0x292244]
add ecx, 0xf4292244
shl ebp, 6
shr ecx, 0x1a
or ebp, ecx
add ebp, ebx
mov ecx, ebp
mov dword [0x4096e8], ebp
xor ecx, edx
test ecx, 0x80000000
jne 0x404c8f
mov ecx, dword [0x4097e4]
mov edx, edi
not edx
or edx, eax
xor edx, ecx
mov ecx, dword [0x4097dc]
add edx, ecx
mov ecx, dword [0x4098ac]
add ecx, edx
lea edx, [ecx + 0x292244]
add ecx, 0xf4292244
shl edx, 6
shr ecx, 0x1a
or edx, ecx
add edx, eax
mov ecx, edx
mov dword [0x4097ec], edx
xor ecx, ebp
cmp ecx, 0x80000000
jne 0x404c8f
mov ecx, dword [0x4096e0]
not ecx
or ecx, ebp
xor ecx, ebx
add ecx, esi
mov esi, dword [0x409848]
add esi, ecx
lea ecx, [esi + 0x2aff97]
add esi, 0x432aff97
shl ecx, 0xa
shr esi, 0x16
or ecx, esi
add ecx, ebp
mov esi, ecx
mov dword [0x4096ec], ecx
xor esi, ebx
test esi, 0x80000000
je 0x404c8f
mov esi, dword [0x4097e4]
not esi
or esi, edx
xor esi, eax
mov eax, dword [0x4098c8]
add esi, edi
add esi, eax
lea eax, [esi + 0x2aff97]
add esi, 0x432aff97
shl eax, 0xa
shr esi, 0x16
or eax, esi
add eax, edx
mov dword [0x4097f0], eax
xor eax, ecx
cmp eax, 0x80000000
jne 0x404c8f
mov edi, dword [0x4096e0]
mov edx, ebx
mov eax, dword [0x409864]
not edx
or edx, ecx
xor edx, ebp
add edx, edi
add edx, eax
lea eax, [edx - 0x546bdc59]
add edx, 0x23a7
shr eax, 0x11
shl edx, 0xf
or eax, edx
add eax, ecx
mov edx, eax
mov dword [0x4096f0], eax
xor edx, ebp
test edx, 0x80000000
jne 0x404c8f
mov edx, dword [0x4097e8]
mov edi, dword [0x4097f0]
mov esi, dword [0x4097ec]
not edx
or edx, edi
xor edx, esi
mov esi, dword [0x4097e4]
add edx, esi
mov esi, dword [0x4098e4]
add edx, esi
lea esi, [edx - 0x546bdc59]
add edx, 0x23a7
shr esi, 0x11
shl edx, 0xf
or esi, edx
add esi, edi
mov edx, esi
mov dword [0x4097f4], esi
xor edx, eax
cmp edx, 0x80000000
jne 0x404c8f
mov edx, ebp
not edx
or edx, eax
xor edx, ecx
add edx, ebx
mov ebx, dword [0x409840]
add ebx, edx
lea edx, [ebx + 0x39]
add ebx, 0xfc93a039
shl edx, 0x15
shr ebx, 0xb
or edx, ebx
add edx, eax
mov ebx, edx
mov dword [0x4096f4], edx
xor ebx, ecx
test ebx, 0x80000000
jne 0x404c8f
mov ebx, dword [0x4097ec]
not ebx
or ebx, esi
xor ebx, edi
mov edi, dword [0x4097e8]
add ebx, edi
mov edi, dword [0x4098c0]
add edi, ebx
lea ebx, [edi + 0x39]
add edi, 0xfc93a039
shl ebx, 0x15
shr edi, 0xb
or ebx, edi
add ebx, esi
mov edi, ebx
mov dword [0x4097f8], ebx
xor edi, edx
cmp edi, 0x80000000
jne 0x404c8f
mov edi, ecx
not edi
or edi, edx
xor edi, eax
add edi, ebp
mov ebp, dword [0x40985c]
add ebp, edi
lea edi, [ebp + 0x15b59c3]
add ebp, 0x655b59c3
shl edi, 6
shr ebp, 0x1a
or edi, ebp
add edi, edx
mov ebp, edi
mov dword [0x4096f8], edi
xor ebp, eax
test ebp, 0x80000000
jne 0x404c8f
mov ebp, dword [0x4097f0]
not ebp
or ebp, ebx
xor ebp, esi
mov esi, dword [0x4097ec]
add ebp, esi
mov esi, dword [0x4098dc]
add esi, ebp
lea ebp, [esi + 0x15b59c3]
add esi, 0x655b59c3
shl ebp, 6
shr esi, 0x1a
or ebp, esi
add ebp, ebx
mov dword [0x4097fc], ebp
xor ebp, edi
cmp ebp, 0x80000000
jne 0x404c8f
mov esi, eax
mov ebp, dword [0x409838]
not esi
or esi, edi
xor esi, edx
add esi, ecx
lea ecx, [esi + ebp]
lea esi, [ecx + 0xccc92]
add ecx, 0x8f0ccc92
shl esi, 0xa
shr ecx, 0x16
or esi, ecx
add esi, edi
mov ecx, esi
mov dword [0x4096fc], esi
xor ecx, edx
test ecx, 0x80000000
jne 0x404c8f
mov ecx, dword [0x4097f4]
not ecx
or ecx, dword [0x4097fc]
xor ecx, ebx
mov ebx, dword [0x4097f0]
add ecx, ebx
add ecx, ebp
mov ebp, dword [0x4097fc]
lea ebx, [ecx - 0x70f3336e]
add ecx, 0xccc92
shr ebx, 0x16
shl ecx, 0xa
or ebx, ecx
add ebx, ebp
mov ecx, ebx
mov dword [0x409800], ebx
xor ecx, esi
cmp ecx, 0x80000000
jne 0x404c8f
mov ecx, edx
not ecx
or ecx, esi
xor ecx, edi
add ecx, eax
mov eax, dword [0x409854]
add eax, ecx
lea ecx, [eax - 0x100b83]
add eax, 0x1f47d
shr ecx, 0x11
shl eax, 0xf
or ecx, eax
add ecx, esi
mov eax, ecx
mov dword [0x409700], ecx
xor eax, edi
test eax, 0x80000000
jne 0x404c8f
mov eax, dword [0x4097f8]
not eax
or eax, ebx
xor eax, ebp
mov ebp, dword [0x4097f4]
add eax, ebp
mov ebp, dword [0x4098d4]
add eax, ebp
lea ebp, [eax - 0x100b83]
add eax, 0x1f47d
shr ebp, 0x11
shl eax, 0xf
or ebp, eax
add ebp, ebx
mov eax, ebp
mov dword [0x409804], ebp
xor eax, ecx
cmp eax, 0x80000000
jne 0x404c8f
mov eax, edi
not eax
or eax, ecx
xor eax, esi
add eax, edx
mov edx, dword [0x409830]
add eax, edx
lea edx, [eax + 0x5d1]
add eax, 0x85845dd1
shl edx, 0x15
shr eax, 0xb
or edx, eax
add edx, ecx
mov eax, edx
mov dword [0x409704], edx
xor eax, esi
test eax, 0x80000000
jne 0x404c8f
mov eax, dword [0x4097fc]
not eax
or eax, ebp
xor eax, ebx
mov ebx, dword [0x4097f8]
add eax, ebx
mov ebx, dword [0x4098b0]
add ebx, eax
lea eax, [ebx + 0x5d1]
add ebx, 0x85845dd1
shl eax, 0x15
shr ebx, 0xb
or eax, ebx
add eax, ebp
mov dword [0x409808], eax
xor eax, edx
cmp eax, 0x80000000
jne 0x404c8f
mov eax, esi
not eax
or eax, edx
xor eax, ecx
add eax, edi
mov edi, dword [0x40984c]
add edi, eax
lea eax, [edi + 0x3a87e4f]
add edi, 0x6fa87e4f
shl eax, 6
shr edi, 0x1a
or eax, edi
add eax, edx
mov edi, eax
mov dword [0x409708], eax
xor edi, ecx
test edi, 0x80000000
jne 0x404c8f
mov edi, dword [0x409800]
mov ebx, dword [0x409808]
not edi
or edi, ebx
mov ebx, dword [0x4097fc]
xor edi, ebp
add edi, ebx
mov ebx, dword [0x4098cc]
add edi, ebx
lea ebx, [edi + 0x3a87e4f]
add edi, 0x6fa87e4f
shl ebx, 6
shr edi, 0x1a
or ebx, edi
mov edi, dword [0x409808]
add ebx, edi
mov edi, ebx
mov dword [0x40980c], ebx
xor edi, eax
cmp edi, 0x80000000
jne 0x404c8f
mov edi, ecx
not edi
or edi, eax
xor edi, edx
add edi, esi
mov esi, dword [0x409868]
add edi, esi
lea esi, [edi + 0x2ce6e0]
add edi, 0xfe2ce6e0
shl esi, 0xa
shr edi, 0x16
or esi, edi
add esi, eax
mov dword [0x40970c], esi
xor esi, edx
test esi, 0x80000000
jne 0x404c8f
mov edi, dword [0x409808]
mov esi, ebp
not esi
or esi, ebx
xor esi, edi
mov edi, dword [0x409800]
add esi, edi
mov edi, dword [0x4098e8]
add esi, edi
lea edi, [esi + 0x2ce6e0]
add esi, 0xfe2ce6e0
shl edi, 0xa
shr esi, 0x16
or edi, esi
mov esi, dword [0x40970c]
add edi, ebx
mov dword [0x409810], edi
xor edi, esi
cmp edi, 0x80000000
jne 0x404c8f
mov edi, edx
not edi
or edi, esi
xor edi, eax
add edi, ecx
mov ecx, dword [0x409844]
add ecx, edi
lea edi, [ecx - 0x5cfebcec]
add ecx, 0x14314
shr edi, 0x11
shl ecx, 0xf
or edi, ecx
add edi, esi
mov ecx, edi
mov dword [0x409710], edi
xor ecx, eax
test ecx, 0x80000000
jne 0x404c8f
mov ecx, dword [0x409808]
mov esi, dword [0x409810]
not ecx
or ecx, esi
xor ecx, ebx
add ecx, ebp
mov ebp, dword [0x4098c4]
add ebp, ecx
lea ecx, [ebp - 0x5cfebcec]
add ebp, 0x14314
shr ecx, 0x11
shl ebp, 0xf
or ecx, ebp
add ecx, esi
mov esi, ecx
mov dword [0x409814], ecx
xor esi, edi
cmp esi, 0x80000000
jne 0x404c8f
mov ebp, dword [0x40970c]
mov esi, eax
not esi
or esi, edi
xor esi, ebp
add esi, edx
mov edx, dword [0x409860]
add esi, edx
lea edx, [esi + 0x1a1]
add esi, 0x4e0811a1
shl edx, 0x15
shr esi, 0xb
or edx, esi
add edx, edi
test edx, 0x2000000
mov dword [0x409714], edx
jne 0x404c8f
mov ebp, dword [0x409810]
mov esi, ebx
not esi
or esi, ecx
xor esi, ebp
mov ebp, dword [0x409808]
add esi, ebp
mov ebp, dword [0x4098e0]
add ebp, esi
lea esi, [ebp + 0x4e0811a1]
add ebp, 0x1a1
shr esi, 0xb
shl ebp, 0x15
or esi, ebp
add esi, ecx
mov ecx, edx
xor ecx, esi
mov dword [0x409818], esi
cmp ecx, 0x80000000
jne 0x404c8f
mov ecx, dword [0x40970c]
not ecx
or ecx, edx
xor ecx, edi
add ecx, eax
mov eax, dword [0x40983c]
add eax, ecx
lea ecx, [eax + 0x3537e82]
add eax, 0xf7537e82
shl ecx, 6
shr eax, 0x1a
or ecx, eax
mov eax, dword [0x40946c]
add ecx, edx
mov dword [0x409718], ecx
lea ebp, [eax + ecx]
mov eax, dword [0x409810]
not eax
or eax, esi
mov dword [0x409604], ebp
xor eax, dword [0x409814]
add eax, ebx
mov ebx, dword [0x4098bc]
add ebx, eax
lea eax, [ebx - 0x8ac817e]
add ebx, 0x3537e82
shr eax, 0x1a
shl ebx, 6
or eax, ebx
mov ebx, dword [0x40946c]
add eax, esi
add ebx, eax
mov dword [0x40981c], eax
mov dword [0x409608], ebx
xor ebx, ebp
cmp ebx, 0x80000000
jne 0x404c8f
mov ebp, dword [0x40970c]
mov ebx, edi
not ebx
or ebx, ecx
xor ebx, edx
add ebx, ebp
mov ebp, dword [0x409858]
add ebp, ebx
lea ebx, [ebp + 0x3af235]
add ebp, 0xbd3af235
shl ebx, 0xa
shr ebp, 0x16
or ebx, ebp
mov ebp, dword [0x409478]
add ebx, ecx
mov dword [0x40971c], ebx
add ebx, ebp
test ebx, 0x2000000
mov dword [0x40961c], ebx
jne 0x404c8f
mov ebx, dword [0x409814]
mov ebp, dword [0x409810]
not ebx
or ebx, eax
xor ebx, esi
add ebx, ebp
mov ebp, dword [0x4098d8]
add ebx, ebp
lea ebp, [ebx + 0x3af235]
add ebx, 0xbd3af235
shl ebp, 0xa
shr ebx, 0x16
or ebp, ebx
mov ebx, dword [0x409478]
add ebp, eax
mov dword [0x409820], ebp
add ebx, ebp
mov ebp, dword [0x40961c]
mov dword [0x409620], ebx
sub ebp, ebx
cmp ebp, 0x7e000000
jne 0x404c8f
mov ebp, dword [0x40971c]
mov ebx, edx
not ebx
or ebx, ebp
xor ebx, ecx
add ebx, edi
mov edi, dword [0x409834]
add ebx, edi
lea edi, [ebx + 0x1d2bb]
add ebx, 0x2ad7d2bb
shl edi, 0xf
shr ebx, 0x11
or edi, ebx
mov ebx, dword [0x409474]
add edi, ebp
mov dword [0x409720], edi
add edi, ebx
mov ebx, dword [0x40961c]
mov ebp, edi
and ebx, 0x82000000
and ebp, 0x86000000
or ebx, 0x2000000
mov dword [0x409614], edi
cmp ebp, ebx
jne 0x404c8f
mov ebp, dword [0x409820]
mov ebx, esi
not ebx
or ebx, ebp
mov ebp, dword [0x409814]
xor ebx, eax
add ebx, ebp
mov ebp, dword [0x409834]
add ebp, ebx
lea ebx, [ebp + 0x2ad7d2bb]
add ebp, 0x1d2bb
shr ebx, 0x11
shl ebp, 0xf
or ebx, ebp
mov ebp, dword [0x409820]
add ebx, ebp
mov ebp, dword [0x409474]
mov dword [0x409824], ebx
add ebx, ebp
mov ebp, edi
mov dword [0x409618], ebx
sub ebp, ebx
cmp ebp, 0x7e000000
jne 0x404c8f
mov ebx, dword [0x409720]
mov ebp, dword [0x40971c]
not ecx
or ecx, ebx
and edi, 0xf9ffffdf
xor ecx, ebp
add ecx, edx
mov edx, dword [0x409850]
add ecx, edx
lea edx, [ecx - 0x14792c6f]
add ecx, 0x391
shr edx, 0xb
shl ecx, 0x15
or edx, ecx
add edx, ebx
mov ebx, dword [0x409470]
mov dword [0x409724], edx
add edx, ebx
xor edi, edx
mov dword [0x40960c], edx
test edi, 0x86000020
jne 0x404c8f
mov edi, dword [0x409824]
mov ebp, dword [0x409820]
mov ecx, dword [0x4098d0]
not eax
or eax, edi
xor eax, ebp
add eax, esi
add eax, ecx
lea ecx, [eax - 0x14792c6f]
add eax, 0x391
shr ecx, 0xb
shl eax, 0x15
or ecx, eax
add ecx, edi
mov dword [0x409828], ecx
lea eax, [ebx + ecx]
sub edx, eax
mov dword [0x409610], eax
cmp edx, 0x7e000000
je 0x404cae
mov esi, dword [sym.imp.MSVCRT.dll_rand]
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 0x20000000
mov dword [esp + 0x10], eax
jb 0x403328
jmp 0x40242d
cmp dword [esp + 0x10], 0x20000000
jae 0x402427
pop edi
pop esi
pop ebp
pop ebx
add esp, 8
ret