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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x108
mov edx, dword [esp + 0x134]
mov ebx, dword [esp + 0x12c]
mov eax, dword [esp + 0x120]
mov ecx, dword [0x606180]
xor ecx, esp
mov dword [esp + 0x104], ecx
mov dword [esp + 0xfc], eax
mov eax, ebx
and eax, 7
mov esi, ebx
shr esi, 3
mov ecx, edx
xor ecx, 0xfffffff8
and ecx, edx
mov dword [esp + 0xc4], ecx
test ebx, ebx
mov ecx, 0x818f15be
mov edi, 0x31c81ce9
cmove edi, ecx
mov dword [esp + 0xc0], edi
mov ecx, 0xa6130085
mov edi, 0x5c38f578
cmove edi, ecx
mov dword [esp + 0xbc], edi
mov ecx, 0x7d583203
mov edi, 0xc1ec2ed4
cmove edi, ecx
mov dword [esp + 0xb8], edi
mov ecx, dword [esp + 0x124]
mov dword [esp + 0x100], ecx
mov ecx, ebx
neg cl
mov edi, 0xffffffff
shrx ecx, edi, ecx
mov dword [esp + 0x34], ecx
mov ecx, edx
neg cl
shrx ecx, edi, ecx
mov dword [esp + 0xb4], ecx
add esi, dword [esp + 0x128]
mov dword [esp + 0x74], esi
shr edx, 3
mov dword [esp + 0x70], edx
mov cl, 8
sub cl, al
test eax, eax
mov edx, 0xc69729ef
mov esi, 0x7902127b
cmove esi, edx
mov dword [esp + 0xb0], esi
mov edx, 0xff
shlx eax, edx, eax
mov dword [esp + 0xac], eax
shrx eax, edx, ecx
mov dword [esp + 0xa8], eax
mov eax, 0xc91a8c89
jmp 0x49c460
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x89d17d7e
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, edi
nop word cs:[eax + eax]
cmp eax, 0xf6e874aa
jle 0x49c4d0
cmp eax, 0x498eadc8
jg 0x49c550
cmp eax, 0x1d1f029d
jle 0x49c617
cmp eax, 0x31c81ce8
jle 0x49c791
cmp eax, 0x40a43b22
jg 0x49cb6c
cmp eax, 0x35b45bae
jle 0x49d10b
cmp eax, 0x35b45baf
je 0x49d960
cmp eax, 0x37131340
je 0x49d98b
cmp eax, 0x38afdd16
jne 0x49c460
cmp byte [esp + 0x32], 0
mov eax, 0x6a4a5611
mov ecx, 0x910604a6
cmovne eax, ecx
jmp 0x49c460
cmp eax, 0xb8aeedbe
jg 0x49c5c0
cmp eax, 0x9b554fee
jg 0x49c66e
cmp eax, 0x8fe88d55
jle 0x49c80f
cmp eax, 0x939c4ca7
jg 0x49cbbb
cmp eax, 0x910604a5
jle 0x49d1ae
cmp eax, 0x910604a6
je 0x49d9d5
cmp eax, 0x9132debb
je 0x49da07
cmp eax, 0x918d2a46
jne 0x49c460
movzx ecx, byte [esp + 0xa]
mov eax, ecx
xor al, 0xfe
test al, cl
mov eax, 0x75ec0cfe
mov ecx, 0x5e677a0a
cmove eax, ecx
jmp 0x49c460
cmp eax, 0x673d8aa2
jg 0x49c6c8
cmp eax, 0x5b52aa18
jle 0x49c889
cmp eax, 0x5fea3a22
jg 0x49cc0a
cmp eax, 0x5c82bb20
jle 0x49d1e1
cmp eax, 0x5c82bb21
je 0x49da2a
cmp eax, 0x5e677a0a
je 0x49da5e
cmp eax, 0x5f64f912
jne 0x49c460
cmp byte [esp + 0x30], 0
mov eax, 0xddb70e24
mov ecx, 0xd33e7485
cmovne eax, ecx
jmp 0x49c460
cmp eax, 0xcd909c2b
jg 0x49c73d
cmp eax, 0xc3089419
jle 0x49c8f4
cmp eax, 0xc91a8c88
jg 0x49ccf2
cmp eax, 0xc765011f
jle 0x49d22e
cmp eax, 0xc7650120
je 0x49da8b
cmp eax, 0xc79eff0a
je 0x49dabd
cmp eax, 0xc87158a8
jne 0x49c460
mov eax, 0x8d3a56a8
jmp 0x49c460
cmp eax, 0x102ff90f
jle 0x49c9da
cmp eax, 0x18def388
jg 0x49cd4e
cmp eax, 0x1620be78
jle 0x49d276
cmp eax, 0x1620be79
je 0x49dac7
cmp eax, 0x17559496
je 0x49daeb
cmp eax, 0x17ffbe23
jne 0x49c460
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x60], eax
mov eax, 0x72dddcd1
jmp 0x49c460
cmp eax, 0xaef83155
jle 0x49ca53
cmp eax, 0xb38f51d6
jg 0x49cd86
cmp eax, 0xb07f89eb
jle 0x49d29e
cmp eax, 0xb07f89ec
je 0x49db60
cmp eax, 0xb15ca5de
je 0x49db6a
cmp eax, 0xb323a604
jne 0x49c460
mov eax, dword [esp + 0x100]
and eax, 7
mov dword [esp + 0x50], eax
mov eax, 0x2bc76525
jmp 0x49c460
cmp eax, 0x760075a6
jle 0x49ca9f
cmp eax, 0x7abf18f8
jg 0x49ce2f
cmp eax, 0x7902127a
jle 0x49d346
cmp eax, 0x7902127b
je 0x49db74
cmp eax, 0x79d4c59c
je 0x49dbce
cmp eax, 0x7a293ba6
jne 0x49c460
mov eax, dword [esi]
not eax
mov ecx, dword [esp + 0x1c]
not ecx
or ecx, eax
not ecx
mov eax, dword [esp + 0x60]
shlx eax, ecx, eax
mov dword [esp + 0xec], eax
mov eax, 0x18ecb1f1
mov ecx, dword [esp + 0xec]
mov dword [esp + 0x78], ecx
jmp 0x49c460
cmp eax, 0xda41c90c
jle 0x49cb03
cmp eax, 0xf0d1604d
jg 0x49cebe
cmp eax, 0xe22c051c
jle 0x49d3c2
cmp eax, 0xe22c051d
je 0x49dbfe
cmp eax, 0xe9b9b444
je 0x49dc32
cmp eax, 0xed5abbf6
jne 0x49c460
mov dword [esp + 0x20], 1
mov eax, 0x37131340
jmp 0x49c460
cmp eax, 0x22021422
jg 0x49cf20
cmp eax, 0x20fb12f2
jle 0x49d3e4
cmp eax, 0x20fb12f3
je 0x49d94e
cmp eax, 0x2135e78d
je 0x49dc65
cmp eax, 0x21c15957
jne 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x105aa73d
mov ebx, 0xca90c45d
cmove eax, ebx
cmp dword [0x60b1d0], 0xa
setl dl
mov edi, 0x105aa73d
cmovge eax, edi
xor dl, cl
cmovne eax, ebx
mov dword [esp + 0x20], 1
jmp 0x49c460
cmp eax, 0x85abcc59
jle 0x49cf4b
cmp eax, 0x86dfb13f
jle 0x49d404
cmp eax, 0x86dfb140
je 0x49dcdb
cmp eax, 0x89d17d7e
je 0x49dcf2
cmp eax, 0x8d3a56a8
jne 0x49c460
movzx eax, byte [esp + 0xb]
not al
or al, 0xfe
cmp al, 0xff
setne byte [esp + 0x2b]
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xc87158a8
mov ebx, 0xaaa52d84
cmove eax, ebx
cmp dword [0x60b1d0], 0xa
mov edx, 0xc87158a8
jmp 0x49ebfb
cmp eax, 0x4fc4a081
jle 0x49cfb7
cmp eax, 0x553d9d86
jle 0x49d424
cmp eax, 0x553d9d87
je 0x49dcfc
cmp eax, 0x56aa6bf2
je 0x49dd06
cmp eax, 0x5b21575b
jne 0x49c460
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x4b5c10b4
mov edi, 0xcb2b5648
jmp 0x49eaab
cmp eax, 0xbf06ed1e
jle 0x49cfe2
cmp eax, 0xc0a16d49
jle 0x49d45e
cmp eax, 0xc0a16d4a
je 0x49dd38
cmp eax, 0xc10b7408
je 0x49dd85
cmp eax, 0xc1ec2ed4
jne 0x49c460
mov eax, dword [esp + 0x11c]
mov eax, dword [eax + 4]
sub eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x128]
mov ecx, dword [ecx]
mov edx, dword [esp + 0x34]
xor edx, ecx
andn ecx, edx, ecx
shlx ecx, ecx, eax
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp]
mov eax, dword [ebp]
not eax
mov edx, dword [esp + 0xa0]
not edx
or edx, eax
mov eax, ecx
not eax
mov ebx, eax
and ebx, 0x320e58c0
and ecx, 0xcdf1a73f
or ecx, ebx
mov ebx, edx
not ebx
or eax, edx
and edx, 0x320e58c0
and ebx, 0xcdf1a73f
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov ecx, eax
not ecx
mov edi, dword [esp + 0x98]
mov edx, edi
not edx
mov ebx, ecx
and ebx, 0x945274b6
and eax, 0x6bad8b49
or eax, ebx
or ecx, edx
and edx, 0x945274b6
mov ebx, edi
and ebx, 0x6bad8b49
or ebx, edx
xor ebx, eax
not ecx
or ecx, ebx
mov dword [ebp], ecx
jmp 0x49ceae
cmp eax, 0x5758c3
jle 0x49d02e
cmp eax, 0x40b3e9f
jle 0x49d4e4
cmp eax, 0x40b3ea0
je 0x49dd9c
cmp eax, 0x4df8be5
je 0x49dda6
cmp eax, 0xc71cbfc
jne 0x49c460
mov eax, dword [esp + 0x80]
mov dword [esp + 0xa4], eax
mov eax, dword [0x60b1d4]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x17ffbe23
mov edi, 0x72dddcd1
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x17ffbe23
jmp 0x49c44a
cmp eax, 0xa5376a5e
jle 0x49d066
cmp eax, 0xa98057ef
jle 0x49d520
cmp eax, 0xa98057f0
je 0x49ddda
cmp eax, 0xaaa52d84
je 0x49de0e
cmp eax, 0xacb6f5cd
jne 0x49c460
mov eax, 0x18ecb1f1
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x78], ecx
jmp 0x49c460
cmp eax, 0x72dddcd0
jle 0x49d08c
cmp eax, 0x73468ad4
jle 0x49d540
cmp eax, 0x73468ad5
je 0x49de25
cmp eax, 0x7455c294
je 0x49de3c
cmp eax, 0x75ec0cfe
jne 0x49c460
mov eax, dword [esp + 0x100]
sub eax, dword [esp + 0x134]
mov dword [esp + 0xe0], eax
mov eax, 0xc71cbfc
mov ecx, dword [esp + 0xe0]
mov dword [esp + 0x80], ecx
jmp 0x49c460
cmp eax, 0xd2ba2887
jle 0x49d0e0
cmp eax, 0xd3991f99
jle 0x49d5d0
cmp eax, 0xd3991f9a
je 0x49de7d
cmp eax, 0xd5409755
je 0x49deb1
cmp eax, 0xd771665d
jne 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xb15ca5de
mov edi, 0xf3d0e66d
jmp 0x49e821
cmp eax, 0x45bfc60d
jle 0x49d61a
cmp eax, 0x45bfc60e
je 0x49dfa2
cmp eax, 0x4645069b
je 0x49e025
cmp eax, 0x480205c8
jne 0x49c460
mov eax, dword [esp + 0xc]
mov dword [esp + 0xf4], eax
mov eax, 0x7d3517fb
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0x8c], ecx
jmp 0x49c460
cmp eax, 0x985262ff
jle 0x49d681
cmp eax, 0x98526300
je 0x49e02f
cmp eax, 0x9a775e6a
je 0x49e046
cmp eax, 0x9b02a68b
jne 0x49c460
mov eax, dword [esp + 0x40]
shlx eax, dword [esi], eax
or eax, ebp
mov ecx, dword [esp]
mov dword [ecx], eax
mov eax, dword [esp + 0x44]
shrx ebp, dword [esi], eax
mov eax, 0x17559496
jmp 0x49c460
cmp eax, 0x64b05ca7
jle 0x49d6d8
cmp eax, 0x64b05ca8
je 0x49e0d4
cmp eax, 0x659693cc
je 0x49e122
cmp eax, 0x66d198ac
jne 0x49c460
mov eax, dword [esp + 0x5c]
shlx eax, dword [esi], eax
mov dword [esp + 4], ebp
mov ebp, dword [esp]
mov edx, dword [ebp]
not edx
mov ecx, dword [esp + 0x48]
not ecx
or ecx, edx
mov edx, ecx
not edx
mov ebx, ecx
and ebx, 0x9a0f9cdc
and edx, 0x65f06323
or edx, ebx
mov ebx, eax
not ebx
or ecx, ebx
and ebx, 0x9a0f9cdc
and eax, 0x65f06323
or eax, ebx
xor eax, edx
mov edx, dword [ebp + 4]
not ecx
or ecx, eax
mov dword [ebp], ecx
mov eax, dword [esp + 0x4c]
shrx eax, dword [esi], eax
not edx
mov ecx, dword [esp + 0x88]
not ecx
or ecx, edx
not ecx
or ecx, eax
mov dword [ebp + 4], ecx
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x73165eeb
mov edi, 0x4e5a693c
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
add ebp, 4
mov dword [esp], ebp
mov ebp, dword [esp + 4]
jmp 0x49c460
cmp eax, 0xcb2b5647
jle 0x49d6f8
cmp eax, 0xcb2b5648
je 0x49e191
cmp eax, 0xcb542a6c
je 0x49e19b
cmp eax, 0xcbaa775f
jne 0x49c460
cmp esi, dword [esp + 0x128]
setne byte [esp + 0x30]
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x89d17d7e
mov edi, 0x5f64f912
jmp 0x49c43b
cmp eax, 0x1a8f23cd
jle 0x49d718
cmp eax, 0x1a8f23ce
je 0x49e1a5
cmp eax, 0x1c251e63
je 0x49e1fa
cmp eax, 0x1cf12804
jne 0x49c460
mov eax, dword [esp + 0xc0]
jmp 0x49c460
cmp eax, 0xb5695280
jle 0x49d761
cmp eax, 0xb5695281
je 0x49e21e
cmp eax, 0xb6d56755
je 0x49e250
cmp eax, 0xb83004ea
jne 0x49c460
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x54]
mov eax, edx
not eax
mov ebx, eax
and ebx, 0x7fee598d
and edx, 0x8011a672
or edx, ebx
mov ebx, ecx
not ebx
or eax, ebx
and ebx, 0x7fee598d
and ecx, 0x8011a672
or ecx, ebx
xor ecx, edx
not eax
or eax, ecx
mov edx, dword [esp]
mov ecx, dword [edx]
not ecx
not eax
or eax, ecx
not eax
or eax, dword [esp + 0x68]
mov dword [edx], eax
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x2135e78d
mov edi, 0x760075a7
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x2135e78d
jmp 0x49c44a
cmp eax, 0x7b7e1a49
jle 0x49d781
cmp eax, 0x7b7e1a4a
je 0x49e25a
cmp eax, 0x7d3517fb
je 0x49e2e4
cmp eax, 0x7d583203
jne 0x49c460
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp]
mov ecx, dword [ebp]
not ecx
mov eax, dword [esp + 0xa0]
not eax
or eax, ecx
mov ecx, eax
not ecx
mov edi, dword [esp + 0x98]
mov edx, edi
not edx
mov ebx, eax
and ebx, 0xcef9bf8a
and ecx, 0x31064075
or ecx, ebx
or eax, edx
and edx, 0xcef9bf8a
mov ebx, edi
and ebx, 0x31064075
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov dword [ebp], eax
mov ebp, esi
mov esi, dword [esp + 4]
mov eax, 0x1d1f029e
jmp 0x49c460
cmp eax, 0xf3d0e66c
jle 0x49d7c9
cmp eax, 0xf3d0e66d
je 0x49e305
cmp eax, 0xf6856719
je 0x49e30f
cmp eax, 0xf68f230b
jne 0x49c460
mov eax, dword [esi]
not eax
mov ecx, dword [esp + 0x6c]
not ecx
or ecx, eax
not ecx
mov eax, dword [esp + 0x9c]
shrx eax, ecx, eax
mov dword [esp + 0xd4], eax
mov eax, 0x939c4ca8
mov ecx, dword [esp + 0xd4]
mov dword [esp + 0x7c], ecx
jmp 0x49c460
cmp eax, 0x2bc76524
jg 0x49d812
cmp eax, 0x22021423
je 0x49e334
cmp eax, 0x22e4d57b
jne 0x49ef62
mov eax, 0x60a1557a
jmp 0x49c460
cmp eax, 0x82136762
jg 0x49d83d
cmp eax, 0x804c4fbf
je 0x49e383
cmp eax, 0x818f15be
jne 0x49c460
mov edi, dword [esp]
mov ecx, dword [edi]
not ecx
mov eax, dword [esp + 0xc]
not eax
or eax, ecx
mov ecx, eax
not ecx
mov edx, ebp
not edx
mov ebx, eax
and ebx, 0x682cddc8
and ecx, 0x97d32237
or ecx, ebx
or eax, edx
and edx, 0x682cddc8
mov ebx, ebp
and ebx, 0x97d32237
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov dword [edi], eax
mov eax, 0x804c4fbf
jmp 0x49c460
cmp eax, 0x4df4dc88
jg 0x49d868
cmp eax, 0x498eadc9
je 0x49e38d
cmp eax, 0x4b5c10b4
jne 0x49c460
mov eax, 0x5b21575b
jmp 0x49c460
cmp eax, 0xbe38e80d
jg 0x49d888
cmp eax, 0xb8aeedbf
je 0x49e3a2
cmp eax, 0xb8e2b8fb
jne 0x49c460
mov eax, dword [esp + 0x100]
sub eax, dword [esp + 0x50]
shr eax, 3
add eax, esi
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x70]
mov ecx, dword [esp]
add eax, ecx
mov dword [esp + 0x18], eax
mov eax, 0x659693cc
jmp 0x49c460
cmp eax, 0xfd117e7e
jg 0x49d8b3
cmp eax, 0xf6e874ab
je 0x49e3c6
cmp eax, 0xfbc42a54
jne 0x49c460
cmp byte [esp + 0x2e], 0
mov eax, 0x1c251e63
mov ecx, 0x7b6bdcbf
cmovne eax, ecx
jmp 0x49c460
cmp eax, 0x9e6e3834
jg 0x49d8ee
cmp eax, 0x9b554fef
je 0x49e3fa
cmp eax, 0x9c0d7323
je 0x49d1a1
jmp 0x49c460
cmp eax, 0x6ee9fe0f
jg 0x49d90e
cmp eax, 0x673d8aa3
je 0x49e404
cmp eax, 0x6a4a5611
jne 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xb15ca5de
mov edi, 0xd771665d
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xb15ca5de
jmp 0x49c44a
cmp eax, 0xcfbaeab2
jg 0x49d92e
cmp eax, 0xcd909c2c
je 0x49e415
cmp eax, 0xcd9a7519
jne 0x49c460
mov eax, 0x4506ed3a
jmp 0x49c460
cmp eax, 0x31c81ce9
je 0x49e449
cmp eax, 0x32c0472a
jne 0x49c460
mov edi, dword [esp + 0x100]
sub edi, dword [esp + 0x134]
mov eax, 0xffffffff
shrx ecx, eax, edi
mov eax, ecx
not eax
and eax, 0x1e977f0
mov dword [esp + 0x48], ecx
mov ebx, ecx
and ebx, 0xfe16880f
or ebx, eax
mov eax, dword [esi]
not eax
mov ecx, dword [esp + 0x1c]
not ecx
or ecx, eax
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp]
mov eax, dword [ebp]
mov edx, dword [esp + 0x38]
xor edx, eax
andn eax, edx, eax
not ecx
shrx ecx, ecx, edi
or eax, ecx
mov ecx, 0x20
mov dword [esp + 0x4c], edi
sub ecx, edi
mov dword [esp + 0x5c], ecx
xor ebx, 0xfe16880f
mov dword [esp + 0x88], ebx
mov dword [ebp], eax
mov ebp, esi
mov esi, dword [esp + 4]
add esi, 4
mov eax, 0x54395906
jmp 0x49c460
cmp eax, 0x8fe88d56
je 0x49e47d
cmp eax, 0x8feb5367
jne 0x49c460
mov eax, dword [esp + 0x44]
cmp eax, dword [esp + 0x12c]
mov eax, 0x5fea3a23
mov ecx, 0x1cf12804
cmova eax, ecx
jmp 0x49c460
cmp eax, 0x5b52aa19
je 0x49e4b0
cmp eax, 0x5c38f578
jne 0x49c460
mov eax, dword [esi]
mov ecx, dword [esp + 0x34]
xor ecx, eax
andn eax, ecx, eax
mov ecx, dword [esp + 0x5c]
shlx eax, eax, ecx
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x12c]
mov eax, 0xc09039b8
mov ecx, 0x1620be79
cmova eax, ecx
jmp 0x49c460
cmp eax, 0xc308941a
je 0x49e4eb
cmp eax, 0xc69729ef
jne 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x105aa73d
mov edi, 0x21c15957
jmp 0x49e821
cmp eax, 0x102ff910
je 0x49e502
cmp eax, 0x105aa73d
jne 0x49c460
mov dword [esp + 0x20], 1
mov eax, 0x21c15957
jmp 0x49c460
cmp eax, 0xaef83156
je 0x49e535
cmp eax, 0xaf137117
jne 0x49c460
mov ebx, dword [esp + 0x48]
mov eax, ebx
not eax
mov edi, dword [esp + 0xc]
mov ecx, edi
not ecx
mov edx, eax
and edx, 0x3b89b7ec
and ebx, 0xc4764813
or ebx, edx
or eax, ecx
and ecx, 0x3b89b7ec
mov edx, edi
and edx, 0xc4764813
or edx, ecx
xor edx, ebx
not eax
or eax, edx
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp]
mov ecx, dword [ebp]
xor eax, ecx
andn ecx, eax, ecx
mov eax, ecx
not eax
mov edi, dword [esp + 0x64]
mov edx, edi
not edx
mov ebx, eax
and ebx, 0xcf56dddd
and ecx, 0x30a92222
or ecx, ebx
or eax, edx
and edx, 0xcf56dddd
mov ebx, edi
and ebx, 0x30a92222
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov dword [ebp], eax
mov ebp, esi
mov esi, dword [esp + 4]
mov eax, 0x7b7e1a4a
jmp 0x49c460
cmp eax, 0x760075a7
je 0x49e53f
cmp eax, 0x78eeef79
jne 0x49c460
mov edx, dword [esp + 0x11c]
mov eax, dword [edx + 4]
mov ecx, 0xffffffff
shlx ecx, ecx, eax
mov dword [esp + 0xc], ecx
cmp eax, 1
mov eax, 0
sbb eax, eax
shl eax, 2
add eax, dword [edx]
cmp dword [esp], eax
sete byte [esp + 0xb]
mov eax, dword [esp + 0x134]
cmp dword [esp + 0x100], eax
seta byte [esp + 0xa]
cmp esi, dword [esp + 0x128]
mov eax, 0xe9b9b444
mov ecx, 0x79d4c59c
cmove eax, ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 0x38], ecx
jmp 0x49c460
cmp eax, 0xda41c90d
je 0x49e549
cmp eax, 0xddb70e24
jne 0x49c460
mov eax, dword [esp + 0xbc]
jmp 0x49c460
cmp eax, 0x1d1f029e
je 0x49d94e
cmp eax, 0x1fd2ee22
jne 0x49c460
mov eax, 0xd2ba2888
jmp 0x49c460
cmp eax, 0x85abcc5a
je 0x49e576
cmp eax, 0x86582f9d
jne 0x49c460
mov eax, 0x4df8be5
jmp 0x49c460
cmp eax, 0x4fc4a082
je 0x49e5d6
cmp eax, 0x54395906
jne 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x89d17d7e
mov edi, 0xcbaa775f
jmp 0x49c43b
cmp eax, 0xbf06ed1f
je 0x49e609
cmp eax, 0xc09039b8
jne 0x49c460
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp]
mov ecx, dword [ebp]
not ecx
mov eax, dword [esp + 0x48]
not eax
or eax, ecx
mov ecx, eax
not ecx
mov edi, dword [esp + 0x64]
mov edx, edi
not edx
mov ebx, eax
and ebx, 0xd31c2bfe
and ecx, 0x2ce3d401
or ecx, ebx
or eax, edx
and edx, 0xd31c2bfe
mov ebx, edi
and ebx, 0x2ce3d401
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov dword [ebp], eax
mov ebp, esi
mov esi, dword [esp + 4]
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x12c]
mov eax, 0x9632f2a9
mov ecx, 0x5c82bb21
cmove eax, ecx
jmp 0x49c460
cmp eax, 0x5758c4
je 0x49e693
cmp eax, 0x20166e5
jne 0x49c460
mov eax, dword [esp + 0xb4]
mov dword [esp + 0xc8], eax
mov eax, 0x78eeef79
mov ecx, dword [esp + 0xc8]
mov dword [esp + 0x94], ecx
jmp 0x49c460
cmp eax, 0xa5376a5f
je 0x49e6f4
cmp eax, 0xa6130085
jne 0x49c460
mov eax, 0xd2ba2888
jmp 0x49c460
cmp eax, 0x72dddcd1
je 0x49e793
cmp eax, 0x73165eeb
jne 0x49c460
mov eax, dword [esp + 0x5c]
shlx eax, dword [esi], eax
mov edi, dword [esp]
mov ecx, dword [edi]
mov edx, dword [edi + 4]
mov ebx, dword [esp + 0x48]
xor ebx, ecx
andn ecx, ebx, ecx
or ecx, eax
mov dword [edi], ecx
mov eax, dword [esp + 0x4c]
shrx eax, dword [esi], eax
not edx
mov ecx, dword [esp + 0x88]
not ecx
or ecx, edx
mov edx, ecx
not edx
mov ebx, ecx
and ebx, 0x99fc73a8
and edx, 0x66038c57
or edx, ebx
mov ebx, eax
not ebx
or ecx, ebx
and ebx, 0x99fc73a8
and eax, 0x66038c57
or eax, ebx
xor eax, edx
not ecx
or ecx, eax
mov dword [edi + 4], ecx
mov eax, esi
lea esi, [edi + 4]
mov dword [esp], esi
mov esi, eax
mov eax, 0x66d198ac
jmp 0x49c460
cmp eax, 0xd2ba2888
je 0x49e7f4
cmp eax, 0xd33e7485
jne 0x49c460
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x73165eeb
mov edi, 0x66d198ac
jmp 0x49eaab
cmp eax, 0x40a43b23
je 0x49e836
cmp eax, 0x4506ed3a
jne 0x49c460
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xcd9a7519
mov edi, 0x86dfb140
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
cmp esi, dword [esp + 0x128]
setne byte [esp + 0x31]
jmp 0x49c460
cmp eax, 0x939c4ca8
je 0x49e850
cmp eax, 0x9632f2a9
jne 0x49c460
mov eax, dword [esi]
mov ecx, dword [esp + 0x34]
xor ecx, eax
andn eax, ecx, eax
mov edi, dword [esp]
mov ecx, dword [edi + 4]
not ecx
mov edx, dword [esp + 0xc]
not edx
or edx, ecx
mov ecx, dword [esp + 0x4c]
shrx eax, eax, ecx
not edx
or edx, eax
mov dword [edi + 4], edx
mov ecx, esi
lea esi, [edi + 4]
mov eax, 0x5c82bb21
mov dword [esp], esi
mov esi, ecx
jmp 0x49c460
cmp eax, 0x5fea3a23
je 0x49e875
cmp eax, 0x60a1557a
jne 0x49c460
mov eax, 0x22be0752
jmp 0x49c460
cmp eax, 0xc91a8c89
je 0x49e8a8
cmp eax, 0xca90c45d
jne 0x49c460
mov eax, 0x498eadc9
jmp 0x49c460
cmp eax, 0x18def389
je 0x49e931
cmp eax, 0x18ecb1f1
jne 0x49c460
mov eax, dword [esp + 0x11c]
cmp dword [eax + 4], 0
mov eax, dword [esp + 0x38]
mov dword [esp + 0xf0], eax
mov eax, 0x480205c8
mov ecx, 0x9e6e3835
cmove eax, ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x98], ecx
jmp 0x49c460
cmp eax, 0xb38f51d7
je 0x49e985
cmp eax, 0xb5514aa2
jne 0x49c460
mov eax, 0xbe38e80e
jmp 0x49c460
cmp eax, 0x7abf18f9
je 0x49ea72
cmp eax, 0x7b6bdcbf
jne 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x1a8f23ce
mov edi, 0x45bfc60e
jmp 0x49e821
cmp eax, 0xf0d1604e
je 0x49ea7c
cmp eax, 0xf157a710
jne 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xaef83156
mov edi, 0x82a2f44b
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xaef83156
jmp 0x49c44a
cmp eax, 0x2bc76525
je 0x49eac1
cmp eax, 0x2d9bf5fb
jne 0x49c460
mov dword [esp + 0x94], 0
mov eax, 0x78eeef79
jmp 0x49c460
cmp eax, 0x82136763
je 0x49eb0f
cmp eax, 0x82a2f44b
jne 0x49c460
mov dword [esp + 0x90], 0
mov eax, 0xc0a16d4a
jmp 0x49c460
cmp eax, 0x4df4dc89
je 0x49eb24
cmp eax, 0x4e5a693c
jne 0x49c460
mov eax, 0x9c0d7323
jmp 0x49c460
cmp eax, 0xbe38e80e
je 0x49eb36
cmp eax, 0xbea498a9
jne 0x49c460
mov eax, 0x939c4ca8
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0x7c], ecx
jmp 0x49c460
cmp eax, 0xfd117e7f
je 0x49eb6a
cmp eax, 0xffd47c81
jne 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x673d8aa3
mov edi, 0x5b52aa19
jmp 0x49e4d7
cmp eax, 0x9e6e3835
je 0x49ebcd
cmp eax, 0xa0219871
jne 0x49c460
mov eax, 0x4fc4a082
jmp 0x49c460
cmp eax, 0x6ee9fe10
je 0x49ec0b
cmp eax, 0x7058902b
jne 0x49c460
mov eax, 0x4fc4a082
jmp 0x49c460
cmp eax, 0xcfbaeab3
je 0x49ec38
cmp eax, 0xd25bada5
jne 0x49c460
mov eax, 0x804c4fbf
jmp 0x49c460
mov eax, 0x60a1557a
mov dword [esp + 0x20], 1
jmp 0x49c460
movzx eax, byte [esp + 0xa]
not al
or al, 0xfe
cmp al, 0xff
mov eax, 0xf68f230b
mov ecx, 0x8fe88d56
cmove eax, ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x9c], ecx
jmp 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xed5abbf6
mov edi, 0x22e4d57b
cmovne ebx, edi
test eax, edx
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
mov dword [esp + 0x20], 1
jmp 0x49c460
mov eax, dword [esp + 0xc]
not eax
mov edi, dword [esp]
mov ecx, dword [edi + 4]
mov edx, ecx
xor edx, eax
and edx, ecx
xor eax, ebp
andn eax, eax, ebp
or eax, edx
mov dword [edi + 4], eax
mov eax, esi
lea esi, [edi + 4]
mov dword [esp], esi
mov esi, eax
mov eax, 0x6a4a5611
jmp 0x49c460
mov eax, dword [esp + 0xc]
mov dword [esp + 0xdc], eax
mov eax, 0xc0a16d4a
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x90], ecx
jmp 0x49c460
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xb6d56755
mov edi, 0xe22c051d
jmp 0x49eaab
mov eax, dword [esp + 0x134]
sub eax, dword [esp + 0x100]
mov dword [esp + 0xe4], eax
mov eax, 0xc71cbfc
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x80], ecx
jmp 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xcfbaeab3
mov edi, 0x64b05ca8
jmp 0x49e821
mov eax, 0x18def389
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xaf137117
mov edi, 0x7b7e1a4a
jmp 0x49e2d0
mov eax, dword [esp + 0x40]
shlx ecx, dword [esi], eax
mov eax, ecx
not eax
mov edx, eax
and edx, 0x1b94a4e5
and ecx, 0xe46b5b1a
or ecx, edx
mov edx, ebp
not edx
or eax, edx
and edx, 0x1b94a4e5
and ebp, 0xe46b5b1a
or ebp, edx
xor ebp, ecx
not eax
or eax, ebp
mov ecx, dword [esp]
mov dword [ecx], eax
mov eax, dword [esp + 0x44]
shrx ebp, dword [esi], eax
cmp eax, dword [esp + 0x12c]
setne byte [esp + 0x32]
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x9b02a68b
mov edi, 0x38afdd16
jmp 0x49e894
mov eax, 0xa98057f0
jmp 0x49c460
mov eax, 0xd771665d
jmp 0x49c460
mov edi, dword [esp + 0x18]
movzx eax, byte [edi]
mov ecx, dword [esp + 0xac]
xor eax, ecx
andn eax, eax, ecx
mov ecx, dword [esp + 0x74]
movzx ecx, byte [ecx]
mov edx, dword [esp + 0xa8]
xor ecx, edx
andn edx, ecx, edx
mov ecx, edx
not ecx
mov ebx, ecx
and ebx, 1
and edx, 0xfffffffe
or edx, ebx
mov ebx, eax
not ebx
or ecx, ebx
and ebx, 1
and eax, 0xfe
or eax, ebx
xor eax, edx
not ecx
or ecx, eax
mov byte [edi], cl
mov eax, 0xc69729ef
jmp 0x49c460
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x1c]
xor eax, ecx
andn eax, eax, ecx
mov dword [esp + 0x6c], eax
movzx ecx, byte [esp + 0xa]
mov eax, ecx
xor al, 0xfe
test al, cl
mov eax, 0xda41c90d
mov ecx, 0x6ee9fe10
cmove eax, ecx
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xb6d56755
mov edi, 0x4645069b
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xb6d56755
jmp 0x49c44a
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xc87158a8
mov edi, 0x8d3a56a8
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xc87158a8
jmp 0x49c44a
mov eax, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
mov eax, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
mov eax, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
or eax, dword [esp + 0x54]
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp]
mov ecx, dword [ebp]
xor eax, ecx
andn ecx, eax, ecx
mov eax, ecx
not eax
mov edi, dword [esp + 0x68]
mov edx, edi
not edx
mov ebx, eax
and ebx, 0x8c4de3c1
and ecx, 0x73b21c3e
or ecx, ebx
or eax, edx
and edx, 0x8c4de3c1
mov ebx, edi
and ebx, 0x73b21c3e
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov dword [ebp], eax
mov ebp, esi
mov esi, dword [esp + 4]
mov eax, 0xb83004ea
jmp 0x49c460
cmp byte [esp + 0x31], 0
mov eax, 0x8feb5367
mov ecx, 0x22021423
cmovne eax, ecx
jmp 0x49c460
mov eax, 0xcbaa775f
jmp 0x49c460
mov eax, 0xfd117e7f
jmp 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xaef83156
mov edi, 0xf157a710
jmp 0x49e821
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x2135e78d
mov edi, 0xb83004ea
cmovne ebx, edi
test eax, edx
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
mov ecx, dword [esp + 0x90]
mov dword [esp + 0x54], ecx
cmovge eax, ebx
jmp 0x49c460
cmp byte [esp + 0x2c], 0
mov eax, 0x7a293ba6
mov ecx, 0xf6e874ab
cmovne eax, ecx
jmp 0x49c460
mov eax, 0xb8aeedbf
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x86582f9d
mov edi, 0x2d9bf5fb
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x86582f9d
jmp 0x49c44a
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x4b5c10b4
mov ebx, 0x5b21575b
cmove eax, ebx
cmp dword [0x60b1d0], 0xa
mov edx, 0x4b5c10b4
jmp 0x49ebfb
cmp byte [esp + 0x2b], 0
mov eax, 0x40b3ea0
mov ecx, 0x918d2a46
cmovne eax, ecx
jmp 0x49c460
cmp byte [esp + 0x2a], 0
mov eax, 0x20166e5
mov ecx, 0xb5695281
cmovne eax, ecx
jmp 0x49c460
mov eax, dword [esi]
mov ecx, dword [esp + 0x1c]
xor ecx, eax
andn eax, ecx, eax
mov ecx, dword [esp + 0x60]
shrx eax, eax, ecx
mov dword [esp + 0xe8], eax
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x7abf18f9
mov edi, 0xacb6f5cd
jmp 0x49e3e6
mov eax, dword [0x60b1d4]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xd5409755
mov edi, 0xb38f51d7
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xd5409755
jmp 0x49c44a
mov dword [esp + 4], ebp
mov eax, dword [0x60b158]
mov ecx, dword [0x60b15c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov esi, 0xe5bab884
mov ebx, 0xa94f74e4
cmovne esi, ebx
test eax, edx
sete byte [esp + 0x24]
mov eax, esi
cmove eax, ebx
cmp ecx, 0xa
setl byte [esp + 0x10]
mov ebp, dword [esp + 0xfc]
cmovge eax, esi
mov ecx, dword [esp + 0x128]
sub ecx, ebp
mov edx, dword [esp + 0x12c]
lea ecx, [edx + ecx*8]
sub ecx, dword [esp + 0x100]
mov edx, 0x1a7f4e30
nop word cs:[eax + eax]
cmp edx, 0x1a7f4e2f
jg 0x49df60
cmp edx, 0xa94f74e4
je 0x49ec5c
cmp edx, 0xe5bab884
jne 0x49df30
mov edx, 0x745f0b6a
jmp 0x49df30
cmp edx, 0x745f0b6a
je 0x49df9e
cmp edx, 0x1a7f4e30
jne 0x49df30
movzx ebx, byte [esp + 0x24]
movzx edx, byte [esp + 0x10]
mov bh, dl
xor bh, bl
test dl, dl
mov edx, 0xe5bab884
mov edi, 0x745f0b6a
cmovne edx, edi
test bl, bl
mov esi, 0xe5bab884
cmove edx, esi
test bh, bh
cmovne edx, edi
jmp 0x49df30
mov edx, eax
jmp 0x49df30
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp + 0x18]
movzx eax, byte [ebp]
mov cl, 8
mov ebx, dword [esp + 0x50]
sub cl, bl
mov edx, 0xff
shrx ecx, edx, ecx
xor eax, ecx
andn ecx, eax, ecx
mov edi, dword [esp + 0x3c]
movzx eax, byte [edi]
shlx edx, edx, ebx
not edx
not eax
or eax, edx
not eax
or eax, ecx
mov byte [ebp], al
inc edi
mov dword [esp + 0x3c], edi
inc ebp
mov dword [esp + 0x18], ebp
mov ebp, esi
mov esi, dword [esp + 4]
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x1a8f23ce
mov edi, 0xcb542a6c
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x1a8f23ce
jmp 0x49c44a
mov eax, 0xa98057f0
jmp 0x49c460
cmp byte [esp + 0x2d], 0
mov eax, 0x4df4dc89
mov ecx, 0x102ff910
cmovne eax, ecx
jmp 0x49c460
mov eax, dword [esi]
mov ecx, dword [esp + 0x34]
xor ecx, eax
andn eax, ecx, eax
mov ecx, dword [esp + 0x40]
shlx eax, eax, ecx
mov edi, dword [esp]
mov ecx, dword [edi]
mov edx, dword [esp + 0xc]
xor edx, ecx
andn ecx, edx, ecx
or ecx, eax
mov eax, ecx
not eax
mov edx, ebp
not edx
mov ebx, eax
and ebx, 0xf8f2c360
and ecx, 0x70d3c9f
or ecx, ebx
or eax, edx
and edx, 0xf8f2c360
mov ebx, ebp
and ebx, 0x70d3c9f
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov dword [edi], eax
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x5758c4
mov ebx, 0xd25bada5
cmove eax, ebx
cmp dword [0x60b1d0], 0xa
mov edx, 0x5758c4
jmp 0x49ebfb
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x130]
mov dword [ecx], eax
mov eax, dword [esp + 0x134]
mov dword [ecx + 4], eax
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xcfbaeab3
mov edi, 0x9b554fef
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xcfbaeab3
jmp 0x49c44a
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xb8e2b8fb
mov edi, 0xfbc42a54
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
mov ecx, dword [esp + 0x100]
cmovge eax, edx
mov edx, dword [esp + 0x50]
sub ecx, edx
shr ecx, 3
add ecx, esi
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x70]
mov edi, dword [esp]
add ecx, edi
mov dword [esp + 0x18], ecx
test edx, edx
setne byte [esp + 0x2e]
jmp 0x49c460
mov eax, 0xa6130085
jmp 0x49c460
mov eax, 0x1c251e63
jmp 0x49c460
mov dword [esp + 4], ebp
mov ebp, dword [esp + 0x18]
movzx eax, byte [ebp]
mov cl, 8
mov ebx, dword [esp + 0x50]
sub cl, bl
mov edx, 0xff
shrx ecx, edx, ecx
xor eax, ecx
andn eax, eax, ecx
mov edi, dword [esp + 0x3c]
movzx ecx, byte [edi]
shlx edx, edx, ebx
xor ecx, edx
andn ecx, ecx, edx
or ecx, eax
mov byte [ebp], cl
inc edi
mov dword [esp + 0x3c], edi
inc ebp
mov dword [esp + 0x18], ebp
mov ebp, dword [esp + 4]
mov eax, 0x45bfc60e
jmp 0x49c460
push dword [esp + 0x18]
push dword [esp + 0x78]
push dword [esp + 0x44]
call fcn.0049ef90
add esp, 0xc
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xb0]
jmp 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x86582f9d
mov edi, 0x4df8be5
jmp 0x49e821
mov eax, 0xe22c051d
jmp 0x49c460
mov eax, dword [esp + 0x48]
or eax, dword [esp + 0xc]
mov dword [esp + 4], esi
mov esi, ebp
mov ebp, dword [esp]
mov ecx, dword [ebp]
not ecx
not eax
or eax, ecx
mov ecx, eax
not ecx
mov edi, dword [esp + 0x64]
mov edx, edi
not edx
mov ebx, eax
and ebx, 0x2378fda2
and ecx, 0xdc87025d
or ecx, ebx
or eax, edx
and edx, 0x2378fda2
mov ebx, edi
and ebx, 0xdc87025d
or ebx, edx
xor ebx, ecx
not eax
or eax, ebx
mov dword [ebp], eax
mov ebp, esi
mov esi, dword [esp + 4]
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xaf137117
mov edi, 0xb07f89ec
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xaf137117
jmp 0x49c44a
mov eax, dword [esp + 0xf0]
or eax, dword [esp + 0x8c]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0xb8]
jmp 0x49c460
mov eax, 0x1fd2ee22
jmp 0x49c460
mov eax, dword [esp + 0x11c]
cmp dword [eax + 4], 0
mov eax, dword [esp + 0x38]
mov dword [esp + 0x58], eax
mov eax, 0x9132debb
mov ecx, 0x56aa6bf2
cmove eax, ecx
jmp 0x49c460
mov eax, dword [esp + 0x40]
shlx ecx, dword [esi], eax
mov eax, ecx
not eax
mov edx, eax
and edx, 0x84f3a429
and ecx, 0x7b0c5bd6
or ecx, edx
mov edx, ebp
not edx
or eax, edx
and edx, 0x84f3a429
and ebp, 0x7b0c5bd6
or ebp, edx
xor ebp, ecx
not eax
or eax, ebp
mov ecx, dword [esp]
mov dword [ecx], eax
mov eax, dword [esp + 0x44]
shrx ebp, dword [esi], eax
mov eax, 0xffd47c81
jmp 0x49c460
mov eax, 0x1fd2ee22
jmp 0x49c460
mov eax, dword [esp + 0x20]
mov dword [esp + 0xf8], eax
mov eax, 0x40a43b23
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xb323a604
mov edi, 0x2bc76525
jmp 0x49eafb
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x7abf18f9
mov edi, 0x7455c294
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x7abf18f9
jmp 0x49c44a
mov eax, 0x22be0752
jmp 0x49c460
add esi, 4
add dword [esp], 4
mov eax, 0x5b52aa19
jmp 0x49c460
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xc79eff0a
mov edi, 0x18def389
jmp 0x49eaab
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x5758c4
mov edi, 0x9a775e6a
jmp 0x49eaab
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x553d9d87
mov ebx, 0xfd117e7f
cmove eax, ebx
cmp dword [0x60b1d0], 0xa
mov edx, 0x553d9d87
jmp 0x49ebfb
add esi, 4
add dword [esp], 4
mov eax, dword [0x60b1d4]
lea ecx, [eax - 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x673d8aa3
mov edi, 0xa0219871
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x673d8aa3
jmp 0x49c44a
cmp byte [esp + 0x2f], 0
mov eax, 0xf0d1604e
mov ecx, 0x32c0472a
cmovne eax, ecx
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xb8e2b8fb
mov edi, 0x659693cc
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xb8e2b8fb
jmp 0x49c44a
mov eax, 0xf157a710
jmp 0x49c460
mov eax, 0x20fb12f3
jmp 0x49c460
mov eax, dword [esp + 0x100]
sub eax, dword [esp + 0x134]
mov dword [esp + 0xcc], eax
mov eax, 0x35b45baf
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x84], ecx
jmp 0x49c460
mov edi, dword [esp + 0x134]
sub edi, dword [esp + 0x100]
mov eax, dword [esi]
not eax
mov ecx, dword [esp + 0x1c]
not ecx
or ecx, eax
mov ebx, dword [esp]
mov eax, dword [ebx]
mov edx, dword [esp + 0x38]
xor edx, eax
andn eax, edx, eax
mov edx, 0x20
not ecx
shlx ecx, ecx, edi
or eax, ecx
mov dword [ebx], eax
mov eax, edi
neg eax
shrx ebp, dword [esi], eax
mov dword [esp + 0x40], edi
sub edx, edi
mov dword [esp + 0x44], edx
add esi, 4
add ebx, 4
mov dword [esp], ebx
mov eax, 0xa5376a5f
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xcd9a7519
mov edi, 0x4506ed3a
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xcd9a7519
jmp 0x49c44a
mov edi, dword [esp]
mov eax, dword [edi]
mov edx, dword [edi + 4]
mov ecx, dword [esp + 0x38]
xor ecx, eax
andn eax, ecx, eax
or eax, dword [esp + 0x68]
mov dword [edi], eax
mov eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x11c]
sub eax, dword [ecx + 4]
mov ecx, dword [esi]
mov ebx, dword [esp + 0x6c]
xor ebx, ecx
andn ecx, ebx, ecx
shrx eax, ecx, eax
not edx
mov ecx, dword [esp + 0xc]
not ecx
or ecx, edx
mov edx, ecx
not edx
mov ebx, ecx
and ebx, 0x7267e817
and edx, 0x8d9817e8
or edx, ebx
mov ebx, eax
not ebx
or ecx, ebx
and ebx, 0x7267e817
and eax, 0x8d9817e8
or eax, ebx
xor eax, edx
not ecx
or ecx, eax
mov dword [edi + 4], ecx
mov ecx, esi
lea esi, [edi + 4]
mov eax, 0x20fb12f3
mov dword [esp], esi
mov esi, ecx
jmp 0x49c460
mov eax, dword [esi]
mov ecx, dword [esp + 0x34]
xor ecx, eax
andn eax, ecx, eax
mov ecx, dword [esp + 0x40]
shlx edx, eax, ecx
mov edi, dword [esp]
mov eax, dword [edi]
mov ecx, dword [esp + 0xc]
xor ecx, eax
andn eax, ecx, eax
mov ecx, edx
not ecx
mov ebx, ecx
and ebx, 0x8ab86d67
and edx, 0x75479298
or edx, ebx
mov ebx, eax
not ebx
or ecx, ebx
and ebx, 0x8ab86d67
and eax, 0x75479298
or eax, ebx
xor eax, edx
not ecx
or ecx, ebp
or ecx, eax
mov dword [edi], ecx
mov eax, 0x9a775e6a
jmp 0x49c460
mov ebx, dword [esp + 0x134]
sub ebx, dword [esp + 0x100]
mov eax, dword [esi]
not eax
mov ecx, dword [esp + 0x1c]
not ecx
or ecx, eax
not ecx
shlx eax, ecx, ebx
mov ebp, dword [esp]
mov ecx, dword [ebp]
mov edx, dword [esp + 0x38]
xor edx, ecx
andn ecx, edx, ecx
or ecx, eax
mov dword [ebp], ecx
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x85abcc5a
mov edi, 0x7058902b
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
mov ecx, 0x20
sub ecx, ebx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x40], ebx
mov ecx, ebx
neg ecx
shrx ecx, dword [esi], ecx
add esi, 4
add ebp, 4
mov dword [esp], ebp
mov ebp, ecx
jmp 0x49c460
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x17ffbe23
mov edi, 0xc10b7408
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
mov ecx, dword [esp + 0xa4]
mov dword [esp + 0x60], ecx
cmovge eax, edx
movzx edx, byte [esp + 0xa]
mov ecx, edx
xor cl, 0xfe
test cl, dl
setne byte [esp + 0x2c]
jmp 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xed5abbf6
mov edi, 0x37131340
cmovne ebx, edi
test eax, edx
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, ebx
jmp 0x49c460
cmp dword [esp + 0xf8], 0
mov eax, 0x60a1557a
mov ecx, 0xcd909c2c
cmove eax, ecx
jmp 0x49c460
movzx ecx, byte [esp + 0xb]
mov eax, ecx
xor al, 0xfe
test al, cl
mov eax, 0xf6856719
mov ecx, 0xbf06ed1f
cmove eax, ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x68], ecx
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0x9b02a68b
mov edi, 0x17559496
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0x9b02a68b
jmp 0x49c44a
lea eax, [esp + 0xfc]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x128]
mov dword [esp + 0x14], eax
mov eax, 0xe78d909
nop word cs:[eax + eax]
cmp eax, 0x8a5788af
je 0x49ed7c
cmp eax, 0x748074d2
je 0x49e912
cmp eax, 0xe78d909
jne 0x49e8e0
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x14]
mov eax, 0x8a5788af
mov ecx, 0x748074d2
cmove eax, ecx
xor ecx, ecx
jmp 0x49e8e0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x12c]
cmp dword [eax + 4], ecx
sete byte [esp + 0x33]
mov eax, 0x8a5788af
movzx ecx, byte [esp + 0x33]
jmp 0x49e8e0
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0xc79eff0a
mov edi, 0xc308941a
cmovne ebx, edi
test eax, edx
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
movzx ecx, byte [esp + 0xa]
not cl
cmovge eax, ebx
or cl, 0xfe
cmp cl, 0xff
setne byte [esp + 0x2f]
jmp 0x49c460
mov dword [esp + 4], ebp
mov edx, dword [0x60b158]
mov ecx, dword [0x60b15c]
lea eax, [edx - 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0xe5bab884
mov esi, 0xa94f74e4
cmovne edx, esi
cmp eax, 0xffffffff
sete byte [esp + 0x24]
mov eax, edx
cmove eax, esi
cmp ecx, 0xa
setl byte [esp + 0x10]
mov ebp, dword [esp + 0xfc]
cmovge eax, edx
mov ecx, dword [esp + 0x128]
sub ecx, ebp
mov edx, dword [esp + 0x12c]
lea ecx, [edx + ecx*8]
sub ecx, dword [esp + 0x100]
mov edx, 0x1a7f4e30
nop dword [eax]
cmp edx, 0x1a7f4e2f
jg 0x49ea30
cmp edx, 0xa94f74e4
je 0x49ed91
cmp edx, 0xe5bab884
jne 0x49ea00
mov edx, 0x745f0b6a
jmp 0x49ea00
cmp edx, 0x745f0b6a
je 0x49ea6e
cmp edx, 0x1a7f4e30
jne 0x49ea00
movzx ebx, byte [esp + 0x24]
movzx edx, byte [esp + 0x10]
mov bh, bl
xor bh, dl
test dl, dl
mov edx, 0xe5bab884
mov edi, 0x745f0b6a
cmovne edx, edi
test bl, bl
mov esi, 0xe5bab884
cmove edx, esi
test bh, bh
cmovne edx, edi
jmp 0x49ea00
mov edx, eax
jmp 0x49ea00
mov eax, 0x7455c294
jmp 0x49c460
mov edx, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x85abcc5a
mov edi, 0xa5376a5f
cmovne edx, edi
cmp eax, 0xffffffff
mov eax, edx
cmove eax, edi
cmp ecx, 0xa
cmovge eax, edx
jmp 0x49c460
mov eax, dword [esp + 0x100]
and eax, 7
mov dword [esp + 0x50], eax
cmp eax, dword [esp + 0xc4]
sete byte [esp + 0x2d]
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xb323a604
mov edi, 0x98526300
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xb323a604
jmp 0x49c44a
mov dword [esp + 0x8c], 0
mov eax, 0x7d3517fb
jmp 0x49c460
mov eax, 0x498eadc9
mov dword [esp + 0x20], 0
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0xb5514aa2
mov edi, 0x82136763
cmove eax, edi
cmp dword [0x60b1d0], 0xa
mov edx, 0xb5514aa2
jmp 0x49c44a
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov ebx, 0x553d9d87
mov edi, 0xbea498a9
cmovne ebx, edi
test eax, edx
mov eax, ebx
cmove eax, edi
cmp ecx, 0xa
mov ecx, dword [esi]
not ecx
cmovge eax, ebx
mov edx, dword [esp + 0x6c]
not edx
or edx, ecx
not edx
mov ecx, dword [esp + 0x9c]
shlx ecx, edx, ecx
mov dword [esp + 0xd8], ecx
jmp 0x49c460
mov eax, dword [0x60b1d4]
lea ecx, [eax + 1]
imul ecx, eax
mov eax, ecx
xor eax, 0xfffffffe
test eax, ecx
sete cl
mov eax, 0xb5514aa2
mov ebx, 0xbe38e80e
cmove eax, ebx
cmp dword [0x60b1d0], 0xa
mov edx, 0xb5514aa2
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x49c460
mov eax, dword [esp + 0x134]
sub eax, dword [esp + 0x100]
mov dword [esp + 0xd0], eax
mov eax, 0x35b45baf
mov ecx, dword [esp + 0xd0]
mov dword [esp + 0x84], ecx
jmp 0x49c460
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x130]
mov dword [ecx], eax
mov eax, dword [esp + 0x134]
mov dword [ecx + 4], eax
mov eax, 0x64b05ca8
jmp 0x49c460
mov dword [esp + 0x14], ecx
mov esi, dword [esp + 0x14]
mov eax, dword [0x60b148]
mov ecx, dword [0x60b14c]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete byte [esp + 0x10]
cmp ecx, 0xa
setl byte [esp + 0x14]
mov eax, 0xb15a83f6
nop
cmp eax, 0x25338328
jle 0x49ecb0
cmp eax, 0x25338329
je 0x49ed21
cmp eax, 0x7820a4a5
jne 0x49ec90
jmp 0x49eebd
cmp eax, 0xb15a83f6
je 0x49ed4b
cmp eax, 0x1151e786
jne 0x49ec90
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x130]
mov dword [ecx], eax
mov eax, dword [esp + 0x134]
mov dword [ecx + 4], eax
push esi
call fcn.0049c060
mov eax, dword [0x60b148]
lea ecx, [eax + 1]
imul ecx, eax
not ecx
or ecx, 0xfffffffe
cmp ecx, 0xffffffff
sete cl
mov eax, 0x25338329
mov ebx, 0x7820a4a5
cmove eax, ebx
cmp dword [0x60b14c], 0xa
mov edx, 0x25338329
cmovge eax, edx
setl dl
xor dl, cl
cmovne eax, ebx
jmp 0x49ec90
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x130]
mov dword [ecx], eax
mov eax, dword [esp + 0x134]
mov dword [ecx + 4], eax
push esi
call fcn.0049c060
mov eax, 0x1151e786
jmp 0x49ec90
movzx ecx, byte [esp + 0x10]
movzx eax, byte [esp + 0x14]
mov edx, eax
xor dl, cl
test al, al
mov eax, 0x25338329
mov ebx, 0x1151e786
cmovne eax, ebx
test cl, cl
mov ecx, 0x25338329
cmove eax, ecx
test dl, dl
cmovne eax, ebx
jmp 0x49ec90
test cl, 1
mov eax, 0xd3991f9a
mov ecx, 0xc7650120
cmovne eax, ecx
jmp 0x49c460
mov dword [esp + 0x14], ecx
mov esi, dword [esp + 0x14]
mov eax, dword [0x60b148]
mov ecx, dword [0x60b14c]
lea edx, [eax + 1]
imul edx, eax
not edx
or edx, 0xfffffffe
cmp edx, 0xffffffff
sete byte [esp + 0x10]
cmp ecx, 0xa
setl byte [esp + 0x14]
mov eax, 0xb15a83f6
nop word cs:[eax + eax]
cmp eax, 0x25338328
jle 0x49edf0
cmp eax, 0x25338329
je 0x49ee67
cmp eax, 0x7820a4a5
jne 0x49edd0
jmp 0x49eeed
cmp eax, 0xb15a83f6
je 0x49ee91
cmp eax, 0x1151e786
jne 0x49edd0
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x130]
mov dword [ecx], eax
mov eax, dword [esp + 0x134]
mov dword [ecx + 4], eax
push esi
call fcn.0049c060
mov edx, dword [0x60b148]
mov ecx, dword [0x60b14c]
lea eax, [edx + 1]
imul eax, edx
not eax
or eax, 0xfffffffe
cmp eax, 0xffffffff
sete dl
cmp ecx, 0xa
setl dh
xor dh, dl
mov edx, 0x25338329
mov ebx, 0x7820a4a5
cmovne edx, ebx
cmp eax, 0xffffffff
mov eax, edx
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, edx
jmp 0x49edd0
mov ecx, dword [esp + 0x11c]
mov eax, dword [esp + 0x130]
mov dword [ecx], eax
mov eax, dword [esp + 0x134]
mov dword [ecx + 4], eax
push esi
call fcn.0049c060
mov eax, 0x1151e786
jmp 0x49edd0
movzx ecx, byte [esp + 0x10]
movzx eax, byte [esp + 0x14]
mov edx, ecx
xor dl, al
mov edx, 0x25338329
mov ebx, 0x1151e786
cmovne edx, ebx
test al, al
mov eax, edx
cmovne eax, ebx
test cl, cl
cmove eax, edx
jmp 0x49edd0
movzx eax, byte [esp + 0x100]
mov ecx, 0xffffffff
shlx eax, ecx, eax
mov dword [esp + 0x1c], eax
mov esi, dword [esp + 0x130]
mov dword [esp], esi
mov eax, 0xb38f51d7
mov esi, ebp
mov ebp, dword [esp + 4]
jmp 0x49c460
mov eax, dword [0x60b1d4]
mov ecx, dword [0x60b1d0]
lea edx, [eax + 1]
imul edx, eax
mov eax, edx
xor eax, 0xfffffffe
test eax, edx
sete bl
cmp ecx, 0xa
setl bh
xor bh, bl
mov esi, 0xd5409755
mov ebx, 0x73468ad5
cmovne esi, ebx
test eax, edx
mov eax, esi
cmove eax, ebx
cmp ecx, 0xa
cmovge eax, esi
cmp dword [esp + 0x134], 0
movzx ecx, byte [esp + 0x100]
mov edx, 0xffffffff
shlx ecx, edx, ecx
mov dword [esp + 0x1c], ecx
sete byte [esp + 0x2a]
mov esi, dword [esp + 0x130]
mov dword [esp], esi
mov esi, ebp
mov ebp, dword [esp + 4]
jmp 0x49c460
cmp eax, 0x22be0752
jne 0x49c460
mov ecx, dword [esp + 0x104]
xor ecx, esp
call fcn.005ce735
mov eax, dword [esp + 0x11c]
add esp, 0x108
pop esi
pop edi
pop ebx
pop ebp
ret