Function at 0x1004f7c0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa8
mov dword [esp + 0x3c], edx
mov dword [esp + 0x24], ecx
lea eax, [ecx + 0x10]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
mov eax, dword [eax]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x10]
mov esi, edx
not esi
mov eax, esi
and eax, 0x80000000
lea ecx, [edx + edx]
sub ecx, eax
add ecx, edx
lea eax, [ecx + esi*2]
lea edi, [ecx + esi*2]
add edi, 0x80000003
not edi
lea ecx, [eax + edi*2]
add ecx, 0x80000003
lea eax, [eax + edi*2]
add eax, 5
mov edi, edx
and edi, 0x7fffffff
lea esi, [esi + esi*2]
or edx, 0x80000000
add edx, esi
lea esi, [edi + edx]
add esi, 2
or esi, edi
mov edi, esi
not edi
lea edx, [esi + edi*2]
add edx, 1
not edx
or edx, 0xc61a40c1
lea ebp, [esi + edi*2]
lea ebx, [edx + ebp]
add ebx, 1
add edx, ebp
add edx, 2
mov ebp, esi
and ebp, 0xc61a40c1
or edi, 0x39e5bf3e
add edi, ebp
or esi, 0xc61a40c1
sub esi, edi
mov edi, 0xfffffffe
sub edi, ebx
add esi, 0x39e5bf3e
mov ebx, edi
and ebx, esi
mov ebp, edx
or ebp, esi
add ebp, ebx
xor edx, esi
not edx
add edx, ebp
or edi, esi
sub edx, edi
mov edi, edx
xor edi, 0xc61a40c1
mov esi, edx
or esi, 0x39e5bf3e
mov ebx, edi
sub ebx, esi
mov esi, edx
add edx, edx
or edx, 0x73cb7e7c
add edx, ebx
not esi
add edx, edi
or esi, 0xc61a40c1
add esi, edx
mov edx, eax
and edx, 0x334bf950
mov edi, eax
and edi, 0xccb406af
sub edx, edi
add ecx, edx
add ecx, 0x80000002
xor eax, 0x334bf950
add eax, ecx
add eax, esi
lea ecx, [eax + eax*4]
add ecx, 0xff0842ef
add eax, eax
add eax, 0x32d01ac6
sub ecx, eax
sub ecx, eax
lea eax, [ecx + 0x150960a7]
mov edx, 0x6af69f58
sub edx, ecx
and edx, 0x61bd6757
and eax, 0x61bd6757
add eax, edx
neg eax
add eax, ecx
add eax, 0x150960a7
imul eax, eax, 0xaa27cb1f
lea ecx, [eax - 0x4b9c3bb3]
and ecx, 0x63cbb45c
add ecx, eax
add ecx, 0xb463c44d
mov edx, 0x4b9c3bb2
sub edx, eax
or edx, 0x9c344ba3
add edx, ecx
imul eax, edx, 0xc2f7f0df
add eax, 0xf07874c9
mov ecx, eax
and ecx, 0x3fe56da4
mov esi, eax
sub esi, ecx
sub esi, ecx
mov edx, eax
or edx, 0x3fe56da4
add edx, esi
xor eax, 0xc01a925b
add eax, edx
add eax, ecx
lea ecx, [eax + eax]
add ecx, 0x7fcadb4a
mov edx, ecx
and edx, 0xce889a06
add eax, edx
add eax, 0x3fe56da5
or ecx, 0x317765f8
sub eax, ecx
add eax, 0x58d64557
cmp eax, dword [esp + 0x3c]
setb byte [esp + 0x1f]
mov esi, dword [esp + 0xc0]
mov edi, esi
not edi
lea edx, [esi + edi*2]
add edx, 1
mov eax, edx
xor eax, 0x467977e6
mov ecx, edx
xor ecx, 0xb9868819
add ecx, eax
mov dword [esp + 0x88], edx
mov eax, edx
and eax, 0x467977e6
add eax, ecx
add eax, 1
mov ecx, esi
and ecx, 0xb9868819
lea ebx, [ecx + ecx*2]
lea ebp, [esi + esi]
mov ecx, ebp
or ecx, 0x8cf2efcc
sub ebx, ecx
add ebx, 0x8cf2efcc
or ebx, eax
mov eax, edi
and eax, 0x58e9c21e
lea ecx, [esi*4]
xor ecx, 0x9c58f784
add ecx, eax
lea eax, [edi + edi]
or eax, 0xb1d3843c
sub ecx, eax
mov eax, ebp
xor eax, 0xb1d3843c
add eax, ecx
mov ecx, ebp
or ecx, 0x4e2c7bc2
sub eax, ecx
mov ecx, esi
and ecx, 0xa7163de1
mov edx, esi
or edx, 0x58e9c21e
add edx, ecx
neg edx
add edx, ecx
add edx, 0x58e9c21d
or edx, eax
not edx
add edx, eax
mov ecx, 0xfffffffe
lea eax, [esi + edi*2]
sub ecx, eax
mov dword [esp + 0x78], ecx
mov eax, edi
and eax, 0xddddc462
mov ecx, ebp
xor ecx, 0x4444773a
add ecx, eax
mov eax, edi
or eax, 0xddddc462
sub ecx, eax
mov eax, edi
or eax, 0x22223b9d
add eax, ecx
add eax, esi
mov ecx, ebp
or ecx, 0x4444773a
sub eax, ecx
mov ecx, esi
and ecx, 0x22223b9d
or ecx, eax
mov dword [esp + 0x74], ecx
mov dword [esp + 0x80], ebp
neg ebp
mov dword [esp + 0x70], ebp
xor ebx, 0x467977e6
mov dword [esp + 0x84], ebx
mov dword [esp + 0x8c], edi
lea eax, [edi + edi*2]
lea eax, [eax + esi*2]
add eax, 2
not eax
mov dword [esp + 0x6c], eax
xor edx, 0x58e9c21e
mov dword [esp + 0x7c], edx
mov eax, esi
neg eax
mov dword [esp + 0x68], eax
lea eax, [esi + esi]
add eax, 0xffffffff
mov dword [esp + 0x64], eax
lea eax, [esi - 1]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x24]
lea eax, [eax + 0x14]
mov dword [esp + 0x5c], eax
mov ecx, 0xd3f681de
mov eax, 0x3eaf7b82
jmp 0x1004fb00
mov ecx, 0xd3f681de
nop word [eax + eax]
cmp ecx, 0x3dec66e
jle 0x1004fb70
cmp ecx, 0x3f9d0606
jle 0x1004fc20
cmp ecx, 0x616de28f
jg 0x1004fc77
cmp ecx, 0x4c5a1842
jle 0x10050044
cmp ecx, 0x527a9345
jg 0x100506e2
cmp ecx, 0x4c5a1843
je 0x10050881
cmp ecx, 0x5054adcf
jne 0x1004fb00
push dword [esp + 0x2c]
call fcn.10058a5a
add esp, 4
mov dword [esp + 4], eax
mov ecx, 0xe1567dd
mov eax, 0x49bff933
mov edx, dword [esp + 0x38]
mov dword [esp + 0x14], edx
jmp 0x1004fb00
cmp ecx, 0xb8233f01
jle 0x1004fbd0
cmp ecx, 0xd629de03
jg 0x1004ff13
cmp ecx, 0xc911e848
jg 0x10050005
cmp ecx, 0xbfb6f6ff
jg 0x10050734
cmp ecx, 0xb8233f02
je 0x1005089c
cmp ecx, 0xb851c9e7
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xcee27f9b
mov ecx, 0x4c5a1843
mov edx, 0x924baa4e
cmovl ecx, edx
jmp 0x1004fb00
cmp ecx, 0xa48eac8e
jle 0x1004ff5e
cmp ecx, 0xb04d2035
jle 0x100502b8
cmp ecx, 0xb3c41279
jg 0x10050772
cmp ecx, 0xb04d2036
je 0x100508b7
cmp ecx, 0xb167a993
jne 0x1004fb00
mov ecx, 0x6e82f1d2
jmp 0x1004fb00
cmp ecx, 0x1b75c0af
jle 0x1004ffba
cmp ecx, 0x2e0ec397
jle 0x100502f7
cmp ecx, 0x2e9f6326
jg 0x100507a5
cmp ecx, 0x2e0ec398
je 0x100508d2
cmp ecx, 0x2e43f542
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x70f732d2
mov ecx, 0xb167a993
mov edx, 0xbfb6f700
cmove ecx, edx
jmp 0x1004fb00
cmp ecx, 0x662b4369
jle 0x10050336
cmp ecx, 0x6e82f1d1
jg 0x100507d9
cmp ecx, 0x662b436a
je 0x100508ed
cmp ecx, 0x6d437e77
jne 0x1004fb00
mov eax, dword [esp + 0x10]
mov ecx, eax
xor ecx, 0xdba0cf9b
add ecx, eax
mov edx, eax
or edx, 0x245f3064
add edx, ecx
mov ecx, eax
not ecx
add ecx, edx
and eax, 0xdba0cf9b
add eax, ecx
add eax, dword [esp + 0x3c]
imul ecx, eax, 0x8cc08adb
lea edx, [ecx + 0x63e52913]
mov eax, 0x9c1ad6ec
sub eax, ecx
and eax, 0xd93d7c40
and edx, 0xd93d7c40
add edx, eax
mov eax, edx
neg eax
add eax, ecx
add eax, 0x16602193
sub ecx, edx
lea edx, [ecx + ecx]
add edx, 0x2cc04326
not edx
and edx, 0x94c826ba
add ecx, edx
add ecx, 0x16602193
mov edx, eax
xor edx, 0xb59beca2
add edx, ecx
mov ecx, eax
or ecx, 0x4a64135d
add ecx, edx
and eax, 0x4a64135d
add eax, ecx
imul eax, eax, 0xc23d9ead
lea ecx, [eax + 0x60052b22]
and ecx, 0x238388c0
add ecx, eax
add ecx, 0x60052b22
mov edx, 0x9ffad4dd
sub edx, eax
or edx, 0x238388c0
add edx, eax
sub ecx, edx
lea eax, [ecx - 0x3c81a263]
add ecx, ecx
add ecx, 0x86fcbb3a
sub ecx, eax
not eax
lea eax, [ecx + eax*2]
add eax, 2
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x50]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x4c]
mov ecx, eax
and ecx, 0xf
lea edx, [ecx + 0x43640880]
mov esi, edx
and esi, 0x4364080f
add ecx, esi
add ecx, 0x43640880
not edx
or edx, 0xbc9bf780
lea esi, [ecx + edx]
lea ebx, [edx + ecx]
add ebx, 0xbc9bf780
mov ecx, eax
not ecx
mov edx, eax
xor edx, 0xf
mov ebp, edx
or ebp, ecx
and ecx, 0xf
mov edi, edx
and edi, eax
or edi, ecx
add edi, ebp
mov ebp, edx
sub ebp, edi
mov ecx, 0xf
sub ecx, ebp
not ebx
lea ebx, [ebx + esi*4]
add ebx, 0xf26fde04
lea ebp, [esi + esi]
add ebp, 0x7937ef02
sub ebx, ebp
add esi, esi
add esi, 0x7937ef00
sub ebx, esi
lea esi, [ebx - 2]
neg edi
add edx, edi
add edx, 0xfffffff0
mov edi, esi
and edi, edx
mov ebp, esi
and ebp, ecx
add ebp, edi
lea edi, [ebx + ebp]
add edi, 0xfffffffe
add edi, edx
or edx, esi
not edx
add edx, edi
or ecx, esi
sub ecx, edx
lea edx, [ecx + 0x6a37f269]
mov esi, edx
xor esi, 0xfffffff1
add esi, ecx
add esi, 0x6a37f269
mov edi, 6
sub edi, ecx
or edi, 0xfffffff1
add edi, esi
and edx, 0xfffffff1
lea esi, [edx + edi]
lea ecx, [edx + edi]
add ecx, 1
mov edx, ecx
or edx, 0x95c80d97
add edx, esi
add edx, 1
add esi, esi
add esi, 2
and esi, 0x2b901b2e
sub edx, esi
mov esi, ecx
xor esi, 0x6a37f268
add esi, edx
and ecx, 0x95c80d97
add ecx, esi
or eax, 0xf
add eax, ecx
imul eax, eax, 0xd485ec47
lea ecx, [eax - 0x19041ad8]
mov edx, ecx
and edx, 0x2a957b38
add eax, edx
add eax, 0xe6fbe528
mov edx, ecx
not edx
add edx, eax
and ecx, 0xd56a84c7
lea eax, [ecx + edx]
add eax, 0x2a957b3a
mov ecx, eax
and ecx, 0x631a6411
mov edx, eax
xor edx, 0x631a6411
add edx, ecx
or eax, 0x9ce59bee
add eax, edx
add eax, 0x631a6412
mov ecx, eax
xor ecx, 0xd56a84c7
and eax, 0xd56a84c7
lea eax, [ecx + eax*2]
imul eax, eax, 0xcda40289
mov ecx, eax
and ecx, 0xa3450e7
xor eax, 0xa3450e7
add eax, ecx
add eax, ecx
neg eax
mov dword [esp + 0x34], eax
cmp dword [esp + 0x34], 0
mov eax, 0x69bc2f38
mov ecx, 0xaac9fda4
cmovs eax, ecx
jmp 0x10050c17
cmp ecx, 0xfbbf9617
jg 0x10050625
cmp ecx, 0xebd67ae9
jle 0x1005080c
cmp ecx, 0xebd67aea
je 0x10050908
cmp ecx, 0xf9f3aaf2
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x69bc2f38
mov ecx, 0x1d009b40
mov edx, 0x1920a1b8
cmovl ecx, edx
jmp 0x1004fb00
cmp ecx, 0x97b0213f
jg 0x10050664
cmp ecx, 0x94d54787
jle 0x10050833
cmp ecx, 0x94d54788
je 0x10050923
cmp ecx, 0x95eb4eb3
jne 0x1004fb00
cmp dword [esp + 0x2c], 0
mov eax, 0x75ed710b
mov ecx, 0x49bff933
cmove eax, ecx
mov ecx, 0xe1567dd
mov dword [esp + 4], 0
mov dword [esp + 0x14], 0xffffffff
jmp 0x1004fb00
cmp ecx, 0xe1567dc
jg 0x100506a3
cmp ecx, 0x3dec66f
je 0x1005093e
cmp ecx, 0xc314d78
je 0x10050959
cmp ecx, 0xe103613
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xa5c1519f
mov ecx, 0x662b436a
mov edx, 0xafd9252a
cmovl ecx, edx
jmp 0x1004fb00
cmp ecx, 0xd3f681dd
jle 0x1005085a
cmp ecx, 0xd3f681de
je 0x10050974
cmp ecx, 0xd46184c4
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x7f7d633a
mov ecx, 0xb167a993
mov edx, 0xa48eac8f
cmove ecx, edx
jmp 0x1004fb00
cmp ecx, 0x3f9d0607
je 0x10050981
cmp ecx, 0x47e6c16a
je 0x1005099c
cmp ecx, 0x48d49d98
jne 0x1004fb00
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x54]
lea edi, [ecx + ecx]
mov dword [esp + 0xc], edi
and edi, 0xcd9fdb8a
mov edx, ecx
not edx
add edi, edx
lea ebx, [edx + edx]
or ebx, 0xcd9fdb8a
sub edi, ebx
lea ebx, [ecx + edx*2]
add ebx, 1
and ebx, esi
sub edi, ebx
lea ebx, [esi + edi*2]
add ebx, 0x3633388e
add edi, 0x9b199c47
mov ebp, esi
not ebp
or ebp, edi
or edi, esi
not edi
add edi, ebx
sub edi, ebp
mov ebx, edi
mov ebp, edi
and ebp, 0x64e663b7
add ebp, edi
and edi, 0x9b199c48
mov eax, edi
xor eax, 0x9b199c48
add eax, ebp
not ebx
and ebx, 0x64e663b7
add ebx, eax
add ebx, edi
or esi, ecx
lea edi, [ebx + esi]
add esi, ebx
add esi, 0x64e663b9
mov eax, ecx
and eax, 0xe11c5b21
mov ebx, edx
or ebx, 0x1ee3a4de
add ebx, eax
mov eax, edx
and eax, 0xe11c5b21
not ebx
add ebx, eax
xor ecx, 0xe11c5b21
mov eax, dword [esp + 0xc]
or eax, 0x3dc749bc
add eax, ecx
add eax, ecx
or edx, 0xe11c5b21
add eax, edx
add eax, 3
or eax, ebx
mov ecx, eax
or ecx, 0xe11c5b21
mov edx, eax
xor edx, 0x1ee3a4de
add edx, ecx
mov ecx, eax
or ecx, 0x1ee3a4de
add ecx, edx
not ecx
add ecx, eax
or esi, ecx
lea eax, [esi + edi]
add eax, 0x64e663b9
add esi, ecx
sub eax, esi
imul eax, eax, 0xc1015e65
lea ecx, [eax - 0x3efea19b]
mov edx, 0x3efea19a
sub edx, eax
and edx, 0x8bdda059
add eax, edx
add eax, 0xc1015e65
mov edx, ecx
xor edx, 0x74225fa6
add edx, eax
or ecx, 0x8bdda059
lea eax, [edx + ecx]
add ecx, edx
add ecx, 0x1a879ab8
mov edx, ecx
not edx
and edx, 0x74225fa6
lea eax, [edx + eax*2]
add eax, 0x350f3570
or ecx, 0x74225fa6
sub eax, ecx
imul eax, eax, 0x1ac7236d
lea ecx, [eax + 0x26ce0f84]
mov edx, ecx
and edx, 0xc315c6b4
add edx, eax
add edx, 0x26ce0f84
mov esi, 0x9931f07b
sub esi, eax
and esi, 0x3cea394b
add esi, edx
xor ecx, 0xc315c6b4
lea eax, [esi + ecx]
add ecx, esi
add ecx, 0x3cea394c
mov edx, ecx
and edx, 0x9d559e9f
add edx, eax
add edx, 0x3cea394c
mov eax, ecx
xor eax, 0x9d559e9f
add eax, edx
or ecx, 0x9d559e9f
sub eax, ecx
add eax, 0x62aa6161
mov ecx, dword [esp + 0x34]
cmp ecx, eax
jb 0x10050216
mov eax, dword [esp + 0x34]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
lea ecx, [eax + 0x4a74873]
xor ecx, 0xfffffffe
add eax, eax
add eax, 0x94e90e6
or eax, 2
add eax, ecx
add eax, 1
mov ecx, eax
and ecx, 0xfb58b78c
mov edx, eax
or edx, 0x4a74873
add edx, ecx
xor eax, 0xfb58b78c
mov esi, 0x3e6a1e36
sub esi, edx
sub esi, eax
add eax, edx
add eax, 0xc195e1c9
and esi, 0x2525a178
mov ecx, eax
and ecx, 0x2525a178
add ecx, esi
sub eax, ecx
lea ecx, [eax + eax]
not ecx
and ecx, 0x7385ab8a
add ecx, eax
mov edx, eax
xor edx, 0xc63d2a3a
add edx, ecx
mov ecx, eax
or ecx, 0x39c2d5c5
add ecx, edx
and eax, 0x39c2d5c5
add eax, ecx
add eax, 0xeb62cbb4
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
cmp eax, 0x1000
mov eax, 0xa046785
mov ecx, 0x16046a62
jmp 0x10050727
cmp ecx, 0xa48eac8f
je 0x10050c29
cmp ecx, 0xafd5e52c
je 0x10050dc2
cmp ecx, 0xafd9252a
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xa0c1bc56
mov ecx, 0xb167a993
mov edx, 0xc911e849
cmove ecx, edx
jmp 0x1004fb00
cmp ecx, 0x1b75c0b0
je 0x10050ddd
cmp ecx, 0x1d009b40
je 0x10050df8
cmp ecx, 0x2710312d
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x2929c7f1
mov ecx, 0xafd5e52c
mov edx, 0x2e9f6327
cmovl ecx, edx
jmp 0x1004fb00
cmp ecx, 0x616de290
je 0x10050e13
cmp ecx, 0x619bf6c6
je 0x10050e32
cmp ecx, 0x6271dcff
jne 0x1004fb00
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [esp + 0x30], eax
push dword [esp + 0x10]
push dword [esp + 0x34]
push dword [esp + 0x20]
call fcn.1005eb60
add esp, 0xc
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0x18]
mov ebp, dword [esp + 0xc0]
push ebp
push dword [esp + 0xc0]
push eax
call fcn.1005eb60
add esp, 0xc
mov edx, dword [esp + 0x10]
mov ecx, edx
mov edi, dword [esp + 0x7c]
xor ecx, edi
add ecx, ecx
sub ecx, edi
mov eax, edx
not eax
mov esi, edi
or esi, eax
add esi, ecx
mov ecx, edx
and ecx, edi
add ecx, esi
add ecx, 1
and ecx, edx
add ecx, edx
lea ebp, [edx + edx]
mov edi, eax
mov esi, dword [esp + 0x88]
xor edi, esi
mov ebx, dword [esp + 0x78]
lea edi, [ebx + edi*2]
add edi, edx
mov ebx, eax
and ebx, esi
lea edi, [edi + ebx*2]
add edi, 2
and edi, eax
add edi, ecx
mov eax, dword [esp + 0xc0]
add eax, edi
mov ecx, edi
mov esi, dword [esp + 0x68]
xor ecx, esi
add ecx, eax
mov eax, edi
or eax, dword [esp + 0x60]
add eax, ecx
not edi
or edi, esi
lea ecx, [eax + edi]
add eax, edi
add eax, 2
mov edi, edx
and edi, 0xddddc462
mov ebx, edi
xor ebx, 0xddddc462
and edx, 0x22223b9d
add edi, edi
sub edx, edi
or ebp, 0x4444773a
add edx, ebp
add edx, 0xbbbb88c6
or edx, ebx
mov esi, edx
mov ebp, dword [esp + 0x74]
and esi, ebp
mov ebx, edx
sub ebx, esi
sub ebx, esi
mov edi, edx
xor edi, ebp
add edi, ebx
not edx
or edx, ebp
add edx, edi
add esi, edx
add esi, 1
mov edx, esi
and edx, 0x40c68311
mov edi, esi
or edi, 0xbf397cee
add edi, edx
mov edx, esi
or edx, 0x40c68311
add edx, edi
sub edx, esi
not esi
and esi, 0xbf397cee
add edx, 1
or edx, esi
mov esi, eax
and esi, 0x6b89a492
add esi, ecx
add esi, 2
mov edi, eax
xor edi, 0x94765b6d
add edi, esi
add ecx, ecx
mov esi, 0xfffffffa
sub esi, ecx
mov ecx, edx
xor ecx, 0x40c68311
or esi, 0x28ecb6da
add esi, edi
and eax, 0x94765b6d
add eax, esi
add eax, 2
xor edx, 0xbf397cee
mov esi, eax
and esi, edx
add esi, ecx
mov edi, eax
or edi, ecx
add edi, esi
or edx, eax
add edx, edi
not eax
or eax, ecx
lea ecx, [edx + eax]
add eax, edx
add eax, 2
mov edx, eax
not edx
and edx, 0x6b89a492
lea ecx, [edx + ecx*2]
add ecx, 4
or eax, 0x6b89a492
sub ecx, eax
lea eax, [ecx - 0x213e3004]
mov edx, eax
not edx
and edx, 0xfffffffe
lea ecx, [edx + ecx*2]
add ecx, 0xbd839ff8
or eax, 0xfffffffe
sub ecx, eax
lea eax, [ecx + 1]
mov edx, eax
xor edx, 0x73382b68
add ecx, edx
add ecx, 1
mov edx, eax
or edx, 0x8cc7d497
add ecx, edx
add ecx, edx
not eax
add eax, ecx
imul eax, eax, 0x58d003d3
lea ecx, [eax - 0x4e5ff85a]
mov edx, ecx
and edx, 0x517afcdf
add eax, edx
add eax, 0xb1a007a6
mov edx, ecx
xor edx, 0x517afcdf
add edx, eax
or ecx, 0x517afcdf
sub ecx, edx
imul eax, ecx, 0x781bb3a5
lea ecx, [eax + 0x49661745]
mov edx, ecx
or edx, 0x66cf9db5
add eax, edx
add eax, 0x49661745
not ecx
or ecx, 0x66cf9db5
lea edx, [eax + ecx]
add eax, ecx
add eax, 0xe8faad52
and eax, 0x9930624a
add eax, edx
add eax, 0xe8faad52
mov ecx, 0x170552ad
sub ecx, edx
or ecx, 0x66cf9db5
add ecx, eax
mov eax, dword [esp + 0x18]
mov byte [eax + ecx + 0x66cf9db6], 0
mov eax, dword [esp + 0x20]
lea ecx, [eax - 0x69ce6986]
xor ecx, 1
add ecx, eax
add ecx, 0x9631967a
mov edx, 0x69ce6985
sub edx, eax
or edx, 1
add edx, ecx
and eax, 1
add eax, edx
add eax, 1
mov ecx, eax
and ecx, 0x69ce6986
mov esi, eax
sub esi, ecx
sub esi, ecx
mov edx, eax
or edx, 0x69ce6986
add edx, esi
xor eax, 0x96319679
add eax, edx
add eax, ecx
add eax, 0x69ce6987
mov dword [esp + 0x44], eax
cmp eax, 0x1000
mov eax, 0x3672aa9c
mov ecx, 0x44a04082
cmovae eax, ecx
mov ecx, 0xe1567dd
mov edx, dword [esp + 0x30]
mov dword [esp + 0x40], edx
jmp 0x1004fb00
cmp ecx, 0xfbbf9618
je 0x10050e4d
cmp ecx, 0xfe2c6eef
je 0x10050e68
cmp ecx, 0x21ade68
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xa046785
mov ecx, 0xb167a993
mov edx, 0x95eb4eb3
cmove ecx, edx
jmp 0x1004fb00
cmp ecx, 0x97b02140
je 0x10051518
cmp ecx, 0x9a7496b2
je 0x10051533
cmp ecx, 0x9c3cb521
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xaac9fda4
mov ecx, 0xb851c9e7
mov edx, 0xe103613
cmovl ecx, edx
jmp 0x1004fb00
cmp ecx, 0xe1567dd
je 0x1004faf2
cmp ecx, 0xec8dcac
je 0x1005154e
cmp ecx, 0x1920a1b8
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x49bff933
mov ecx, 0xb167a993
mov edx, 0x54f30b64
cmove ecx, edx
jmp 0x1004fb00
cmp ecx, 0x527a9346
je 0x10051569
cmp ecx, 0x54f30b64
jne 0x1004fb00
mov eax, dword [esp + 4]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [eax], ecx
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x14]
mov dword [eax], ecx
mov eax, dword [esp + 0x20]
cmp eax, 0x10
mov eax, 0x7f7d633a
mov ecx, 0xcee27f9b
cmovae eax, ecx
mov ecx, 0xe1567dd
jmp 0x1004fb00
cmp ecx, 0xbfb6f700
je 0x10051584
cmp ecx, 0xc4bf2255
jne 0x1004fb00
mov eax, dword [esp + 0x2c]
cmp eax, 0xffffffdd
mov eax, 0x2929c7f1
mov ecx, 0xaac9fda4
cmovb eax, ecx
mov ecx, 0xe1567dd
mov edx, dword [esp + 0x38]
mov dword [esp + 8], edx
jmp 0x1004fb00
cmp ecx, 0xb3c4127a
je 0x10051674
cmp ecx, 0xb4d5afba
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x49bff933
mov ecx, 0xd629de04
mov edx, 0x3f9d0607
cmovl ecx, edx
jmp 0x1004fb00
cmp ecx, 0x2e9f6327
je 0x10051885
cmp ecx, 0x3ee421f6
jne 0x1004fb00
cmp byte [esp + 0x1f], 0
mov eax, 0x2e98787e
mov ecx, 0x7f49182
cmovne eax, ecx
mov ecx, 0xe1567dd
jmp 0x1004fb00
cmp ecx, 0x6e82f1d2
je 0x100518a0
cmp ecx, 0x7e1a512c
jne 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x2e98787e
mov ecx, 0xb167a993
mov edx, 0x6d437e77
cmove ecx, edx
jmp 0x1004fb00
cmp ecx, 0xd629de04
jne 0x100518aa
mov ecx, dword [esp]
cmp ecx, 0x70f732d2
mov ecx, 0xd3225614
mov edx, 0xf9f3aaf2
cmovl ecx, edx
jmp 0x1004fb00
cmp ecx, 0x924baa4e
jne 0x100518c0
mov ecx, dword [esp]
cmp ecx, 0xaac9fda4
mov ecx, 0xb167a993
mov edx, 0xfe2c6eef
cmove ecx, edx
jmp 0x1004fb00
cmp ecx, 0xd3225614
jne 0x100518ce
mov ecx, dword [esp]
cmp ecx, 0x75ed710b
mov ecx, 0xb04d2036
mov edx, 0x2e43f542
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xcee27f9b
mov ecx, 0xb167a993
mov edx, 0x6271dcff
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xa046785
mov ecx, 0x2e0ec398
mov edx, 0xebd67aea
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x7f7d633a
mov ecx, 0xd46184c4
mov edx, 0x97b02140
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x16046a62
mov ecx, 0x2710312d
mov edx, 0x21ade68
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xa5c1519f
mov ecx, 0xb167a993
mov edx, 0xd8739ac1
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x7f49182
mov ecx, 0x619bf6c6
mov edx, 0xfbbf9618
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x3672aa9c
mov ecx, 0xec8dcac
mov edx, 0x7e1a512c
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x2e98787e
mov ecx, 0xb4d5afba
mov edx, 0x9a7496b2
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x44a04082
mov ecx, 0x527a9346
mov edx, 0x1b75c0b0
cmovl ecx, edx
jmp 0x1004fb00
mov dword [esp], eax
mov ecx, 0x3dec66f
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x3eaf7b82
mov ecx, 0xc314d78
mov edx, 0x94d54788
cmovl ecx, edx
jmp 0x1004fb00
mov eax, dword [esp + 0x20]
shr eax, 1
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0x54]
mov eax, ecx
and eax, 0x7fffffff
mov dword [esp + 0xa4], eax
mov ebp, ecx
and ebp, 0x80000000
add eax, eax
mov edx, ebp
sub edx, eax
lea eax, [edx + ecx*2]
mov dword [esp + 8], eax
mov esi, ecx
not esi
mov eax, ecx
xor eax, 0x7fffffff
mov ebx, eax
mov dword [esp + 0x90], eax
mov eax, esi
or eax, 0xd8ee85ff
lea edi, [ecx + eax]
add edi, 1
lea eax, [ecx + ebx]
mov dword [esp + 0xc], eax
or ecx, 0x80000000
mov dword [esp + 0xa0], ecx
lea edx, [ecx + ecx]
mov dword [esp + 0x9c], esi
lea eax, [edx + esi*2]
mov dword [esp + 0x28], eax
or esi, 0x7fffffff
mov dword [esp + 0x98], esi
mov eax, ebp
add eax, esi
mov ebp, dword [esp + 0xa4]
add eax, ebp
add eax, 1
mov edx, eax
or edx, ebx
mov ecx, eax
xor ecx, ebx
and eax, ebx
xor dword [esp + 0xc], 0x80000000
mov ebx, dword [esp + 0xc]
lea esi, [ebx + ebp]
add esi, 1
mov dword [esp + 0x94], esi
mov ebx, dword [esp + 0x90]
sub ebx, ebp
mov esi, dword [esp + 0x28]
add esi, ebp
add esi, 1
mov dword [esp + 0xc], esi
mov esi, dword [esp + 0x28]
add esi, ebp
add esi, 2
mov dword [esp + 0x28], esi
xor ebp, 0x7fffffff
or dword [esp + 8], ebp
add edx, edx
sub ecx, edx
add eax, ecx
mov ebp, dword [esp + 8]
mov ecx, ebp
or ecx, 0x7b846921
add ecx, ebp
mov edx, ebp
or edx, 0x847b96de
add edx, ecx
sub edx, ebp
add edx, eax
xor ebx, 0x80000000
add ebx, dword [esp + 0xa0]
mov esi, dword [esp + 0x98]
mov ecx, 0x7ffffffe
sub ecx, ebx
sub ecx, esi
lea eax, [esi + ebx]
add eax, 1
mov esi, dword [esp + 0x94]
or eax, esi
or ecx, esi
add esi, eax
add ecx, eax
sub esi, ecx
mov eax, dword [esp + 0x9c]
lea ecx, [edx + esi*2]
and eax, 0x27117a00
or edi, eax
mov eax, edi
xor eax, 0x58ee85ff
xor edi, 0xa7117a00
sub edi, eax
sub edi, eax
add edi, eax
add edi, eax
mov eax, edi
not eax
lea eax, [eax + edi*2]
lea edx, [ecx + eax]
lea ecx, [ecx + eax - 0x1822f64f]
mov eax, ecx
not eax
mov esi, eax
and esi, 0xe7dd09af
add edx, esi
add edx, 0xe7dd09b1
xor ecx, 0x1822f650
add ecx, edx
or eax, 0xe7dd09af
sub ecx, eax
mov esi, dword [esp + 0x28]
mov eax, esi
not eax
mov edi, dword [esp + 0xc]
lea eax, [edi + eax*2]
add eax, 2
mov edx, eax
and edx, 0x3a39be0c
not eax
lea edx, [eax + edx*2]
or eax, 0xba39be0c
sub edx, eax
and esi, 0x45c641f3
lea eax, [edi + edi]
add eax, 2
sub esi, eax
mov edi, esi
mov esi, eax
or esi, 0x8b8c83e6
add esi, edi
or eax, 0x74737c18
lea edi, [esi + eax]
add eax, esi
add eax, 2
lea esi, [edx + edi]
add esi, 2
mov edi, edx
or edi, eax
not edi
add edi, esi
lea esi, [ecx + 0x1822f651]
xor edx, eax
lea eax, [edx + edi]
add eax, 1
xor eax, 0x45c641f3
lea edx, [eax - 1]
mov edi, esi
and edi, edx
add ecx, edi
add ecx, 0x1822f651
add ecx, eax
mov eax, edx
xor eax, esi
add eax, ecx
or esi, edx
sub eax, esi
imul eax, eax, 0x2e6687e3
mov ecx, eax
not ecx
mov edx, ecx
or edx, 0x564edd80
add edx, eax
xor eax, 0xa9b1227f
sub eax, edx
or ecx, 0xa9b1227f
add ecx, eax
imul eax, ecx, 0x3da2f5cb
lea ecx, [eax + 0x3da2f5cb]
mov edx, ecx
and edx, 0x6a7adb7f
add eax, edx
add eax, 0x3da2f5cb
not ecx
or ecx, 0x95852480
add eax, ecx
add eax, 0x95852480
add eax, dword [esp + 0x20]
mov eax, 0xffab45ef
mov ecx, 0xaac9fda4
cmovb eax, ecx
mov ecx, 0xe1567dd
mov dword [esp + 8], 0x7fffffff
jmp 0x1004fb00
push dword [esp + 0x10]
push dword [esp + 0x28]
push dword [esp + 0x20]
call fcn.1005eb60
add esp, 0xc
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0x18]
mov ebx, dword [esp + 0xc0]
push ebx
push dword [esp + 0xc0]
push eax
call fcn.1005eb60
add esp, 0xc
mov eax, dword [esp + 0x10]
mov ecx, eax
not ecx
lea edx, [eax + ecx*2]
add edx, 1
mov ebp, dword [esp + 0x8c]
mov ecx, ebp
sub ecx, edx
mov esi, edx
or esi, ebp
add esi, ecx
mov edi, edx
or edi, ebx
add edi, esi
mov ecx, edx
not ecx
or ecx, ebp
sub edi, ecx
lea ecx, [edi + edi]
add ecx, 2
lea esi, [edi*4 + 4]
sub ecx, esi
mov esi, eax
neg esi
mov edi, eax
sub edi, ecx
mov ebx, ecx
xor ebx, esi
lea ebp, [ebx*4]
sub edi, ebp
mov ebp, ecx
or ebp, esi
lea edi, [edi + ebp*2]
lea edi, [edi + ebx*2]
and esi, ecx
add esi, esi
sub edi, esi
mov ecx, edi
and ecx, dword [esp + 0x64]
add ecx, edi
add ecx, dword [esp + 0x80]
not edi
or edi, dword [esp + 0x70]
lea ebx, [ecx + edi]
add edi, ecx
add edi, 1
and edx, dword [esp + 0x84]
lea ecx, [edx + 1]
mov esi, ecx
not esi
and esi, edi
add esi, ebx
add esi, 1
add edx, ebx
add edx, 1
sub esi, edx
and ecx, edi
and eax, dword [esp + 0x6c]
mov edx, eax
and edx, 0x2c6a41df
mov edi, edx
xor edi, 0x2c6a41df
add edi, eax
mov ebx, eax
not ebx
mov ebp, ebx
and ebp, 0xd395be20
lea eax, [ebx + ebp]
add eax, edx
or ebx, 0x2c6a41df
sub eax, ebx
add edi, ebp
add edx, edi
add edx, 1
mov edi, eax
xor edi, edx
mov ebx, eax
or ebx, edx
add ebx, edi
mov edi, edx
not edi
or edi, eax
add edi, ebx
not eax
or eax, edx
lea edx, [edi + eax]
add edi, eax
add edi, 2
or edi, 0x2c6a41df
mov eax, 0xfffffffd
sub eax, edx
or eax, 0x2c6a41df
add eax, edx
sub eax, edi
lea edx, [eax + 3]
add ecx, esi
add ecx, 0x8bf536ee
mov esi, edx
not esi
mov edi, ecx
or edx, ecx
and ecx, esi
add ecx, ecx
sub edi, ecx
add eax, edi
add eax, 3
lea eax, [eax + edx*2]
lea ecx, [eax + esi*2]
mov eax, 0x76c7862d
sub eax, ecx
mov edx, eax
or edx, 0x152db0c0
add edx, ecx
lea ecx, [eax + eax]
or ecx, 0x2a5b6180
sub edx, ecx
mov ecx, eax
xor ecx, 0x152db0c0
add ecx, edx
and eax, 0x152db0c0
add eax, ecx
mov ecx, dword [esp + 0x18]
mov byte [ecx + eax + 0x740ac913], 0
jmp 0x10050e23
mov ecx, dword [esp]
cmp ecx, 0x2929c7f1
mov ecx, 0xb167a993
mov edx, 0x8dc863a4
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x3eaf7b82
mov ecx, 0xb167a993
mov edx, 0x3ee421f6
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x69bc2f38
mov ecx, 0xb167a993
mov edx, 0x47e6c16a
cmove ecx, edx
jmp 0x1004fb00
push dword [esp + 0x44]
push dword [esp + 0x44]
call fcn.10058a47
add esp, 8
mov ecx, 0xe1567dd
mov eax, 0xa5c1519f
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x7f49182
mov ecx, 0xb167a993
mov edx, 0xd757865f
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xffab45ef
mov ecx, 0xb167a993
mov edx, 0x48d49d98
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp + 8]
mov edi, ecx
not edi
mov dword [esp + 0x14], edi
mov edx, ecx
and edx, 0x24
mov esi, edi
or edi, 0x24
or esi, 0xffffffdb
mov dword [esp + 4], esi
lea eax, [edx + esi]
sub eax, edi
mov ebx, ecx
neg ebx
lea edi, [ecx - 1]
mov ebp, eax
and ebp, edi
add ebp, ecx
mov esi, eax
or esi, ebx
add esi, ebp
or edi, eax
add edi, esi
not eax
or eax, ebx
mov esi, ecx
and esi, 0xffffffdb
add esi, ecx
mov ebx, ecx
mov dword [esp + 8], ecx
or ebx, 0xffffffdb
mov ebp, ebx
not ebp
add ebp, esi
mov esi, ecx
or esi, 0x24
sub ebp, esi
mov ecx, edx
xor ecx, 0x24
mov esi, ecx
xor esi, ebp
add esi, ebp
or ebp, ecx
mov ecx, ebp
add ecx, ebp
sub ecx, esi
add ecx, ebp
lea esi, [ecx + ebx]
add ecx, ebx
add ecx, 1
not ecx
lea ecx, [esi + ecx*2 + 1]
mov esi, ecx
not esi
lea ebp, [ecx + esi*2]
lea ebx, [ecx + esi*2 + 1]
lea ecx, [edi + eax]
add eax, edi
add eax, 0x7f9aa3e9
mov esi, 0xfffffffe
sub esi, ebp
and esi, eax
lea eax, [esi + ecx]
add eax, 0x7f9aa3e9
mov esi, 0x80655c16
sub esi, ecx
mov ebp, dword [esp + 0x14]
mov edi, ebp
add eax, ebx
or esi, ebx
add esi, eax
mov ebx, dword [esp + 8]
mov eax, ebx
and eax, 0x45bd9c1d
or edi, 0xba4263e2
add edi, eax
mov eax, ebx
or eax, 0xba4263e2
sub edi, eax
and ebx, 0xba4263e2
or ebx, edi
mov eax, ebx
and eax, 0x3a4263e2
mov ecx, ebx
xor ecx, 0x45bd9c1d
add ecx, eax
not edi
and edi, 0x45bd9c1d
add edi, ecx
xor ebx, 0x3a4263e2
lea eax, [ebx + edi]
add eax, 1
not eax
or eax, 0x80000024
lea ecx, [eax + eax]
not ecx
lea eax, [ecx + eax*4]
add eax, esi
add edx, edx
mov esi, ebp
lea ecx, [edx + ebp*2]
mov edx, ebp
add edx, ebp
or edx, 0x48
add edx, dword [esp + 4]
sub ecx, edx
lea edx, [eax + ecx]
add eax, ecx
add eax, 0x6203ef47
mov ecx, eax
xor ecx, 0x1e616cd4
add ecx, edx
add ecx, 0x6203ef47
mov esi, eax
or esi, 0x1e616cd4
sub ecx, esi
add ecx, edx
add ecx, 0x6203ef47
not eax
or eax, 0x1e616cd4
add eax, ecx
imul ecx, eax, 0x6fd20841
add ecx, 0x63dd4a15
mov eax, ecx
or eax, 0x654bcdde
not ecx
or ecx, 0x9ab43221
sub eax, ecx
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x47853139
add edx, eax
xor eax, 0xb87acec6
add eax, edx
or ecx, 0x47853139
sub eax, ecx
lea ecx, [eax + 0x47853139]
mov edx, ecx
not edx
mov esi, ecx
or esi, 0x9ab43221
add eax, esi
add eax, 0x47853139
and edx, 0x654bcdde
lea eax, [eax + edx*2]
mov edx, ecx
xor edx, 0x9ab43221
add edx, eax
and ecx, 0x9ab43221
add ecx, edx
imul eax, ecx, 0x48ee07c1
lea ecx, [eax + 0x3c2c163]
mov edx, ecx
and edx, 0xc7aae133
mov esi, ecx
and esi, 0x38551ecc
sub edx, esi
add eax, edx
add eax, 0x3c2c163
xor ecx, 0xc7aae133
add eax, ecx
add eax, 0xdd9473d4
push eax
call fcn.10058a5a
add esp, 4
mov ecx, eax
xor ecx, 0xffffffdc
mov edx, eax
or edx, 0x23
mov edi, eax
sub edi, ecx
sub edi, edx
mov esi, 1
sub esi, edi
mov ebx, esi
xor ebx, 0xffffffdd
sub ebx, edi
xor esi, 0x22
add esi, ebx
add esi, 0xffffffde
mov edi, esi
not edi
mov ebx, edx
not ebx
lea ebx, [ebx + ebx*2]
lea ebx, [ebx + edx*2]
add ebx, 2
and ebx, 0x99eecce4
and edx, 0x6611331b
or edx, ebx
xor edx, 0x99eecce4
mov ebx, edi
and ebx, 0xac0824cd
add ebx, edi
and edi, 0x53f7db32
mov ebp, edi
xor ebp, 0x53f7db32
add ebp, ebx
lea ebx, [edx + 1]
and esi, 0xac0824cd
add esi, ebp
lea ebp, [esi + edi]
add esi, edi
add esi, 0xac0824cf
lea edi, [edx + ebp]
add edi, 0xac0824d0
mov ebp, esi
xor ebp, ebx
add ebp, edi
mov edi, 0xfffffffe
sub edi, edx
or edi, esi
add edi, ebp
not esi
or esi, ebx
lea edx, [edi + esi]
add esi, edi
add esi, 2
and esi, 0x53f7db32
add esi, edx
add esi, 2
mov edi, 0xfffffffd
sub edi, edx
or edi, 0x53f7db32
add edi, edx
sub esi, edi
lea edx, [esi + 0x53f7db2f]
mov edi, eax
and edi, 0xffffffdc
mov ebx, eax
and ebx, 0x23
add ebx, ebx
sub ecx, ebx
lea ebx, [eax + eax]
or ebx, 0xffffffb8
add ecx, ebx
add ecx, 0x48
or ecx, edi
lea edi, [esi + esi]
add edi, 0xa7efb65e
mov ebx, edi
xor ebx, 0xaf992a9e
add esi, ebx
add esi, 0x53f7db2f
mov ebx, edx
or ebx, 0xd7cc954f
sub esi, ebx
mov ebx, edx
or ebx, 0x28336ab0
add ebx, esi
not edx
add edx, ebx
and edi, 0xaf992a9e
add edi, edx
lea edx, [edi + ecx]
add ecx, edi
add ecx, 0xd7cc9551
and ecx, 0xd7cc954f
add edx, ecx
add edx, 0xd7cc9551
xor ecx, 0xd7cc954f
lea esi, [edx + ecx]
add ecx, edx
add ecx, 0x5066d562
mov dword [esp + 0x14], eax
mov edi, eax
not edi
lea edx, [eax + edi*2]
lea edi, [eax + edi*2]
add edi, 1
and edi, 0x23
sub edx, edi
mov edi, 0xaf992a9d
sub edi, esi
and edi, 0xf8a57e4f
add esi, edi
add esi, 0x5066d562
mov edi, ecx
xor edi, 0x75a81b0
add edi, esi
or ecx, 0xf8a57e4f
add ecx, edi
lea esi, [edx + ecx]
add esi, 0x25
add ecx, edx
mov edx, 0xffffffda
sub edx, ecx
and edx, 0x75a81b0
lea ecx, [edx + ecx*2]
add ecx, 0x4a
or esi, 0x75a81b0
sub ecx, esi
lea edx, [ecx - 0x31db4f39]
mov esi, edx
and esi, 0xfffffffe
add esi, ecx
add esi, 0xce24b0c7
mov edi, 0xf8a57e50
sub edi, ecx
and edi, 1
add edi, esi
xor edx, 0xfffffffe
lea ecx, [edi + edx]
add edx, edi
add edx, 2
mov esi, edx
and esi, 0xc6ca2f16
add ecx, esi
add ecx, 2
mov esi, edx
xor esi, 0xc6ca2f16
add esi, ecx
or edx, 0xc6ca2f16
sub esi, edx
imul ecx, esi, 0xbcc1313b
lea edx, [ecx - 0x2b321012]
mov esi, edx
and esi, 0xc3f22d84
add ecx, esi
add ecx, 0xd4cdefee
not edx
or edx, 0x3c0dd27b
lea eax, [edx + ecx]
add eax, 0xc3f22d85
mov dword [esp + 4], eax
imul edx, eax, 0x24767ff3
mov ebx, 0xae4db04b
sub ebx, edx
lea esi, [ebx + ebx]
mov edi, esi
mov ebp, ebx
and ebp, 0x1f
or esi, 0xffffffc0
add esi, ebp
mov ebp, ebx
or ebp, 0x1f
or edi, 0x3e
add esi, edi
not edi
lea ecx, [edi + ebp]
add edi, ebp
add edi, 0x9387c0ca
mov ebp, 0x6c783f35
sub ebp, ecx
mov eax, ebp
and eax, 0x6c783f34
add eax, ecx
xor edi, 0x9387c0c9
add edi, eax
or ebp, 0x6c783f36
sub edi, ebp
mov eax, edi
or eax, 0x5a918238
add eax, edi
and edi, 0xa56e7dc7
sub eax, edi
lea ecx, [eax + 0x4adcfb8f]
mov ebp, ecx
not ebp
mov dword [esp + 0xc], edx
lea edi, [edx + 0x51b24fb4]
and ebp, edi
lea eax, [eax + ebp*2]
add eax, 0x4adcfb8f
add eax, edx
add eax, 0x51b24fb4
mov ebp, ecx
xor ebp, edi
sub eax, ebp
mov ebp, ecx
or ebp, edi
add ebp, eax
imul eax, dword [esp + 4], 0xb713001a
add eax, ebp
and ecx, edi
lea edx, [eax + ecx]
mov dword [esp + 4], edx
lea ebp, [ecx + eax]
add ebp, 0xb72ce2d1
lea eax, [ebx + ebx]
add eax, 0xfffffffe
mov ecx, esi
sub esi, eax
not ecx
lea eax, [ecx + ebx*2]
add eax, 0xfffffffe
mov edx, eax
and edx, 0x1e9cdb8f
mov ecx, eax
or ecx, 0x1e9cdb8f
add ecx, edx
or eax, 0xe1632470
add eax, ecx
mov ecx, esi
xor ecx, 0x1e9cdb8f
add ecx, esi
add eax, esi
add eax, 2
or esi, 0x1e9cdb8f
sub ecx, esi
or eax, ecx
lea ecx, [eax + eax]
xor ecx, 0xc2c648e1
not eax
mov edx, eax
or edx, 0x1e9cdb8f
sub ecx, edx
or eax, 0xe1632470
lea edx, [ecx + eax]
add eax, ecx
add eax, 0x1e9cdb90
mov ecx, ebp
or ebp, eax
add edx, ebp
add edx, 0x1e9cdb90
xor ecx, eax
mov esi, dword [esp + 4]
add ecx, esi
add ecx, 0xb72ce2d1
sub ecx, edx
add ecx, esi
mov edx, esi
mov esi, 0x48d31d2e
sub esi, edx
or esi, eax
add esi, ecx
mov eax, ebx
and eax, 0xffffffe0
and edi, 0xffffffe0
add edi, eax
xor ebx, 0x1f
add ebx, edi
mov eax, dword [esp + 0xc]
add eax, 0x14
or eax, 0xffffffe0
sub ebx, eax
lea eax, [esi + ebx]
lea edx, [ebx + esi]
add edx, 0x5ffa7c90
mov ecx, edx
and ecx, 0xa8cd99bc
add ecx, eax
add ecx, 0x5ffa7c90
add eax, eax
add eax, 0xbff4f920
xor eax, 0x519b3378
add eax, ecx
mov esi, edx
or esi, 0x57326643
add esi, eax
mov ecx, edx
xor ecx, 0x57326643
add ecx, esi
sub ecx, edx
add ecx, 0x57326645
imul eax, ecx, 0x348f54ab
imul edx, ecx, 0xd23d52ac
xor edx, 0x24547484
add edx, eax
add eax, eax
or eax, 0x922a3a42
sub edx, eax
imul eax, ecx, 0x691ea956
mov ecx, eax
xor ecx, 0x6dd5c5bc
add ecx, edx
and eax, 0x922a3a42
lea edx, [ecx + eax]
add eax, ecx
add eax, 0x49151d23
mov ecx, eax
or ecx, 0xaaee0393
add ecx, edx
add ecx, 0x49151d23
and eax, 0x5511fc6c
sub ecx, eax
lea eax, [ecx - 0x55dc0727]
mov edx, eax
not edx
and edx, 0xb6eae2de
lea ecx, [edx + ecx*2]
add ecx, 0x5447f1b2
or eax, 0xb6eae2de
sub ecx, eax
imul eax, ecx, 0x17020603
lea ecx, [eax + 0x74cfe29d]
mov edx, ecx
and edx, 0xf901b625
add eax, edx
add eax, 0x74cfe29d
not ecx
or ecx, 0x6fe49da
lea edx, [eax + ecx]
add eax, ecx
add eax, 0xe10938e3
mov ecx, eax
xor ecx, 0x6fe49da
add ecx, edx
add ecx, 0xe10938e3
mov esi, 0x1ef6c71c
sub esi, edx
or esi, 0x6fe49da
add esi, ecx
and eax, 0x6fe49da
lea ecx, [eax + esi]
add ecx, 1
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x14]
mov dword [eax + esi - 3], ecx
mov ecx, 0xe1567dd
mov eax, 0x49bff933
mov edx, dword [esp + 8]
mov dword [esp + 0x14], edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x75ed710b
mov ecx, 0xb167a993
mov edx, 0x5054adcf
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0xffab45ef
mov ecx, 0xb8233f02
mov edx, 0x9c3cb521
cmovl ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x3672aa9c
mov ecx, 0xb167a993
mov edx, 0x616de290
cmove ecx, edx
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x44a04082
mov ecx, 0xb167a993
mov edx, 0xb3c4127a
cmove ecx, edx
jmp 0x1004fb00
mov eax, dword [esp + 0x20]
mov ecx, eax
not ecx
and ecx, 0x16727132
add ecx, eax
or eax, 0xe98d8ecd
mov esi, 0xe98d8ecc
sub esi, ecx
sub esi, eax
add eax, ecx
add eax, 0x16727133
or eax, 0xe98d8ecd
or esi, 0x16727132
sub eax, esi
mov ecx, eax
not ecx
mov edx, eax
or edx, 0xffffffdc
add edx, eax
and ecx, 0x23
lea ecx, [edx + ecx*2]
mov edx, eax
xor edx, 0xffffffdc
add edx, ecx
and eax, 0xffffffdc
add eax, edx
imul eax, eax, 0x1247b22d
lea ecx, [eax - 0x495b8d52]
mov edx, ecx
and edx, 0xb3ece0a6
mov esi, ecx
and esi, 0x4c131f59
sub edx, esi
add eax, edx
add eax, 0xb6a472ae
xor ecx, 0xb3ece0a6
add ecx, eax
imul eax, ecx, 0xf1c16da5
lea ecx, [eax*4 + 0x5d6be7b4]
xor ecx, 0xe5b9881c
add ecx, eax
add eax, eax
add eax, 0x2eb5f3da
mov edx, eax
or edx, 0xf2dcc40e
sub ecx, edx
mov edx, eax
xor edx, 0xd233bf0
add edx, ecx
and eax, 0xf2dcc40e
lea ecx, [edx + eax]
add eax, edx
add eax, 0x90c95bf6
mov edx, eax
or edx, 0xf8bd2b0d
add ecx, edx
add ecx, 0x90c95bf6
and eax, 0x742d4f2
sub ecx, eax
add ecx, 1
mov dword [esp + 0x44], ecx
mov eax, dword [esp + 0x58]
mov dword [esp + 0x40], eax
mov ecx, 0xe1567dd
mov eax, 0x3672aa9c
jmp 0x1004fb00
mov eax, dword [esp + 0x30]
mov eax, dword [eax - 4]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x30]
mov edx, eax
neg edx
mov esi, edx
and esi, 4
add esi, eax
mov ecx, edx
xor ecx, 4
add ecx, esi
or edx, 4
sub ecx, edx
mov edx, eax
or edx, 0xfffffffc
mov esi, eax
not esi
mov edi, esi
and edi, 0xfffffffc
add edi, eax
or esi, 3
add esi, edi
mov edi, eax
and edi, 0xfffffffc
mov ebx, eax
xor ebx, 3
add ebx, edi
lea edi, [edx + edx]
xor eax, 0xfffffffc
add eax, ebx
lea ebx, [edx + edx]
add ebx, 2
sub esi, edx
sub eax, edx
not edx
lea edx, [edx + edi*2]
add edx, 4
sub edx, ebx
lea edi, [ecx + edx]
add ecx, edx
add ecx, 0xb6948dd5
mov edx, ecx
and edx, 0xfffffffc
add edx, edi
add edx, 0xb6948dd5
mov edi, ecx
xor edi, 0xfffffffc
add edi, edx
or ecx, 0xfffffffc
sub edi, ecx
lea ecx, [edi + 3]
mov edx, ecx
or edx, 0x496b7227
add edx, edi
add edx, 3
mov edi, ecx
or edi, 0xb6948dd8
add edi, edx
sub ecx, edi
add esi, 0xfffffffd
mov edx, esi
xor edx, eax
and eax, esi
not eax
sub eax, edx
lea edx, [ecx + eax]
add eax, ecx
add eax, 0xb6948dd9
lea ecx, [edx*4 - 0x25adc8a0]
sub ecx, eax
lea eax, [edx + edx]
add eax, 0x6d291bb0
sub ecx, eax
lea eax, [edx + edx]
add eax, 0x6d291bb2
sub ecx, eax
lea eax, [ecx - 0x6113295c]
mov edx, eax
xor edx, 0x4bc3848e
add edx, ecx
mov esi, 0x6113295b
sub esi, ecx
or esi, 0x4bc3848e
add esi, edx
and eax, 0x4bc3848e
add eax, esi
add eax, 0x765cd89
mov ecx, eax
and ecx, 0x6113295f
mov esi, eax
sub esi, ecx
sub esi, ecx
mov edx, eax
or edx, 0x6113295f
add edx, esi
xor eax, 0x9eecd6a0
add eax, edx
add eax, ecx
lea ecx, [eax + eax]
add ecx, 0xc22652c0
mov edx, ecx
and edx, 0x9787091c
add eax, edx
add eax, 0x61132960
or ecx, 0x6878f6e2
sub ecx, eax
add ecx, 0x4bc3848f
not ecx
sub ecx, dword [esp + 0x58]
lea eax, [ecx + 0x5ebea06b]
mov edx, eax
and edx, 0x5ebea06a
add ecx, edx
add ecx, 0x5ebea06b
mov edx, eax
not edx
add edx, ecx
and eax, 0xa1415f95
add eax, edx
add eax, 0xa1415f96
imul ecx, eax, 0xcfbeed0f
mov edx, ecx
xor edx, 0x74b17625
add edx, ecx
not ecx
add ecx, edx
imul eax, eax, 0x9f7dda1e
and eax, 0xe962ec4a
add eax, ecx
imul eax, eax, 0x183261ef
lea ecx, [eax + 0x3406d09d]
mov edx, ecx
not edx
and edx, 0xd777794b
lea edx, [edx + eax*2]
add edx, 0x680da13a
or ecx, 0xd777794b
sub edx, ecx
lea eax, [edx + 0x288886b4]
mov ecx, eax
not ecx
mov esi, eax
and esi, 0xf7b912
add edx, esi
add edx, 0x288886b4
and eax, 0xff0846ed
mov esi, eax
xor esi, 0xff0846ed
add esi, edx
and ecx, 0xf7b912
add ecx, esi
add eax, ecx
add eax, 0xf7b914
cmp eax, 0x20
mov eax, 0xa0c1bc56
mov ecx, 0x70f732d2
cmovb eax, ecx
mov ecx, 0xe1567dd
jmp 0x1004fb00
mov ecx, dword [esp]
cmp ecx, 0x16046a62
mov ecx, 0xb167a993
mov edx, 0xc4bf2255
cmove ecx, edx
jmp 0x1004fb00
mov ecx, 0xe1567dd
jmp 0x1004fb00
cmp ecx, 0xd8739ac1
je 0x100518df
cmp ecx, 0xd757865f
jne 0x1004fb00
jmp 0x100518f4
cmp ecx, 0x8dc863a4
jne 0x1004fb00
jmp 0x100518f9
cmp ecx, 0xc911e849
jne 0x1004fb00
call fcn.1005a9fd
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x24]
mov dword [eax], ecx
add esp, 0xa8
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.1002d310
call fcn.10035b70
int3