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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x94
mov dword [esp + 0x24], ecx
lea eax, [ecx + 0x10]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
mov eax, dword [eax]
mov dword [esp + 4], eax
mov eax, 0x7fffffff
sub eax, dword [esp + 4]
mov dword [esp + 0x38], edx
imul eax, eax, 0x7bccf64f
add eax, 0x3e47b2c3
mov esi, eax
and esi, 0xbd3acb6f
mov edi, eax
xor edi, 0x42c53490
add edi, esi
mov esi, eax
xor esi, 0xbd3acb6f
add esi, edi
and eax, 0x42c53490
add eax, esi
imul eax, eax, 0x799a60af
add eax, 0x4f400d62
cmp eax, edx
setb byte [esp + 0xf]
mov ecx, dword [esp + 0xa8]
mov ebp, ecx
not ebp
lea edx, [ecx + ecx]
lea esi, [ecx + ecx*2]
sub edx, esi
mov ebx, ecx
and ebx, 0xbc3793d8
add ebx, ecx
mov esi, ebp
and esi, 0x43c86c27
add ebx, esi
mov edi, ecx
or edi, 0x43c86c27
sub ebx, edi
or ebx, esi
mov esi, ebp
add esi, ebp
and esi, 0x65c452f8
mov edi, ecx
xor edi, 0x32e2297c
add edi, esi
mov esi, ecx
xor esi, 0xcd1dd683
add esi, edi
mov edi, ecx
or edi, 0xcd1dd683
lea eax, [edi + esi]
add eax, 2
mov esi, ecx
and esi, 0xcd1dd683
or esi, eax
mov edi, eax
or edi, 0xcd1dd683
sub esi, edi
not eax
or eax, 0xcd1dd683
add eax, esi
mov dword [esp + 0x84], ebp
lea esi, [ecx + ebp*2]
add esi, 1
mov dword [esp + 0x78], esi
not esi
mov dword [esp + 0x74], esi
lea edx, [edx + ecx*2]
mov dword [esp + 0x70], edx
not edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x80], ebx
not ebx
mov dword [esp + 0x68], ebx
not eax
mov dword [esp + 0x7c], eax
mov esi, dword [esp + 0x38]
mov edx, esi
not edx
lea eax, [edx + edx]
not eax
sub esi, eax
mov dword [esp + 0x60], esi
mov dword [esp + 0x64], edx
add eax, edx
mov dword [esp + 0x5c], eax
lea eax, [ecx + 1]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x24]
lea eax, [eax + 0x14]
mov dword [esp + 0x54], eax
mov ecx, 0xcaf8a317
mov eax, 0x200c9537
jmp 0x10034ac0
mov ecx, 0xcaf8a317
nop
cmp ecx, 0x3f024e3
jle 0x10034da0
cmp ecx, 0x54c29e7d
jg 0x10034e70
cmp ecx, 0x32aa74c1
jg 0x10034ed8
cmp ecx, 0x129d169d
jle 0x10035043
cmp ecx, 0x204e194d
jg 0x100351eb
cmp ecx, 0x129d169e
je 0x1003559b
cmp ecx, 0x1f07487d
jne 0x10034ac0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x4c]
mov edx, ecx
xor edx, 0x5af48fb6
lea edx, [edx + ecx*2]
not ecx
mov esi, ecx
and esi, 0xa50b7049
add esi, edx
or ecx, 0x5af48fb6
lea edx, [esi + ecx]
add ecx, esi
add ecx, 0xa50b704c
mov esi, eax
not esi
and esi, ecx
lea ecx, [esi + edx]
add ecx, 0xa50b704c
add ecx, eax
mov esi, 0x5af48fb3
sub esi, edx
or esi, eax
lea eax, [ecx + esi]
add ecx, esi
add ecx, 1
mov edx, 0x7ffffffe
sub edx, eax
and edx, 0x5af48fb6
lea edx, [edx + eax*2]
add edx, 2
or ecx, 0xa50b7049
add ecx, edx
sub ecx, eax
imul eax, ecx, 0xbc795f7d
lea edx, [eax - 0x403b4a22]
mov ecx, edx
and ecx, 0x7592e450
add eax, ecx
add eax, 0xbfc4b5de
mov ecx, edx
xor ecx, 0x7592e450
add ecx, eax
or edx, 0x7592e450
sub ecx, edx
lea eax, [ecx - 0x7592e451]
mov edx, eax
not edx
lea esi, [ecx + ecx]
add esi, 0x14da375e
and edx, 0xfab05efb
lea edx, [edx + edx*2]
lea ecx, [edx + ecx*2]
add ecx, 0x14da375e
xor esi, 0xa9f4208
add esi, ecx
and eax, 0x54fa104
add eax, esi
imul eax, eax, 0x1a9151d5
add eax, 0x6181ca38
mov ecx, dword [esp + 0x30]
cmp ecx, eax
jb 0x10034bf7
mov eax, dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
mov ecx, eax
and ecx, 1
mov edx, ecx
xor edx, 0x32b5f03f
lea ecx, [edx + ecx*2]
lea edx, [eax + ecx]
add edx, 0x9a941f82
add ecx, eax
mov esi, edx
not esi
mov edi, esi
and edi, 0x32b5f03f
add ecx, edi
add ecx, 0x9a941f82
and esi, 0xcd4a0fc0
add esi, ecx
lea ecx, [esi + edx]
add edx, esi
add edx, 0x32b5f041
mov esi, eax
not esi
lea esi, [esi + esi*2]
lea edi, [esi + eax*2]
lea esi, [esi + eax*2 + 2]
lea ebx, [edi + edi + 5]
mov ebp, esi
not ebp
lea edi, [edi*2 + 5]
add edi, ebp
mov ebp, ebx
sub ebp, esi
lea edi, [edi + ebp*2]
sub esi, ebx
lea esi, [edi + esi*2]
or edx, 0x4e6765cd
mov edi, 0xcd4a0fbe
sub edi, ecx
or edi, 0x4e6765cd
add edi, edx
sub ecx, edi
lea edx, [ecx + esi]
add ecx, esi
add ecx, 0x32b5f040
add edx, edx
add edx, 0x656be080
or edx, 0x9ccecb9b
xor ecx, 0xb1989a32
mov esi, 0x7e9146e9
sub esi, edx
sub esi, ecx
mov edi, eax
and edi, 0x4d580a29
xor eax, 0xb2a7f5d6
lea eax, [eax + edi*2]
not edi
lea ebx, [eax + edi*2]
lea eax, [eax + edi*2]
add eax, 2
mov edi, eax
xor edi, 0x4d580a29
add edi, ebx
add edi, 2
mov ebx, eax
not ebx
and ebx, 0xb2a7f5d6
add ebx, edi
or eax, 0xb2a7f5d6
sub ebx, eax
mov eax, ebx
not eax
lea eax, [ebx + eax*2]
add eax, 1
mov edi, eax
or edi, 0xfffffffe
xor eax, 1
lea ebx, [edi + eax]
add eax, edi
add eax, 2
and eax, esi
add ecx, edx
add ecx, 0x816eb916
mov edx, 0xfffffffd
sub edx, ebx
and edx, ecx
sub edx, eax
lea eax, [edx + ebx*2]
add eax, 4
imul eax, eax, 0x97b02ebd
lea ecx, [eax + 0x52df66c2]
mov edx, ecx
and edx, 0xe019d49d
add eax, eax
add eax, 0xa5becd84
sub edx, eax
mov eax, ecx
xor eax, 0xe019d49d
add eax, edx
or ecx, 0x1fe62b62
add ecx, eax
imul eax, ecx, 0x1035436b
lea ecx, [eax + 0x625c7b75]
mov edx, ecx
and edx, 0x7306bceb
add eax, edx
add eax, 0x625c7b75
mov esi, ecx
xor esi, 0x8cf94314
add esi, eax
xor ecx, 0x7306bceb
add ecx, esi
not edx
lea eax, [edx + ecx]
add eax, 0xadd8c7f8
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
cmp eax, 0x1000
mov eax, 0x8400a1dc
mov ecx, 0xe140ccca
jmp 0x10035748
cmp ecx, 0xc5ca287b
jle 0x10034e10
cmp ecx, 0xe502c9e5
jg 0x10034f23
cmp ecx, 0xcd1692e9
jle 0x10035082
cmp ecx, 0xe0fbae97
jg 0x1003521e
cmp ecx, 0xcd1692ea
je 0x100356e5
cmp ecx, 0xd32b0c0a
jne 0x10034ac0
mov eax, dword [esp + 0x28]
cmp eax, 0xffffffdd
mov eax, 0x3b90af6f
mov ecx, 0x181c0b1e
cmovb eax, ecx
mov ecx, 0x73818b36
mov edx, dword [esp + 0x34]
mov dword [esp + 0x20], edx
jmp 0x10034ac0
cmp ecx, 0xa2620b7c
jle 0x10034f6e
cmp ecx, 0xba5a4734
jg 0x10035004
cmp ecx, 0xafcd5264
jg 0x1003545a
cmp ecx, 0xa2620b7d
je 0x10035700
cmp ecx, 0xa26a83ff
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x60d600f0
mov ecx, 0xa07d038e
mov edx, 0xbb1c1c55
cmove ecx, edx
jmp 0x10034ac0
cmp ecx, 0x60a00c83
jle 0x10034fb9
cmp ecx, 0x73818b35
jle 0x100350c1
cmp ecx, 0x7cfa8522
jg 0x1003548d
cmp ecx, 0x73818b36
je 0x10034aba
cmp ecx, 0x78a81d28
jne 0x10034ac0
cmp dword [esp + 0x28], 0
mov eax, 0x389d1c3d
mov ecx, 0x7ec350af
cmove eax, ecx
mov ecx, 0x73818b36
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0xffffffff
jmp 0x10034ac0
cmp ecx, 0x44e8fca5
jle 0x10035100
cmp ecx, 0x4c794248
jg 0x100354c0
cmp ecx, 0x44e8fca6
je 0x1003571b
cmp ecx, 0x46d7cf57
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x181c0b1e
mov ecx, 0xba5a4735
mov edx, 0xd4df5e
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0xface89c2
jle 0x1003513f
cmp ecx, 0xfce117d1
jle 0x100354f3
cmp ecx, 0xfce117d2
je 0x10035755
cmp ecx, 0xd4df5e
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x17d8569d
mov ecx, 0xa07d038e
mov edx, 0x3c52eb60
cmove ecx, edx
jmp 0x10034ac0
cmp ecx, 0x99ae01aa
jg 0x1003517e
cmp ecx, 0x8fb22116
jg 0x1003551a
cmp ecx, 0x8bb9306a
je 0x10035770
cmp ecx, 0x8c6f9ccc
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x389d1c3d
mov ecx, 0xed3658fc
mov edx, 0xa2620b7d
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0x5ace6ad0
jg 0x100351ac
cmp ecx, 0x55bb00d6
jle 0x10035541
cmp ecx, 0x55bb00d7
je 0x1003578b
cmp ecx, 0x56eb05ce
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x9f83f4c6
mov ecx, 0xcb8356ec
mov edx, 0xafcd5265
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0xbc61f0fb
jle 0x10035574
cmp ecx, 0xbc61f0fc
je 0x100359b7
cmp ecx, 0xbc7292cf
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x17d8569d
mov ecx, 0x46d7cf57
mov edx, 0xcd1692ea
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0x3f024e4
je 0x100359d2
cmp ecx, 0xdeea803
je 0x100359ed
cmp ecx, 0xe982adb
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x637530b2
mov ecx, 0x25d2f718
mov edx, 0x731226bd
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0xc5ca287c
je 0x10035a08
cmp ecx, 0xcaf8a317
je 0x10035a12
cmp ecx, 0xcb8356ec
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0xbe61f268
mov ecx, 0x3f024e4
mov edx, 0xe502c9e6
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0x60a00c84
je 0x10035a1f
cmp ecx, 0x72c1ea73
je 0x10035a3b
cmp ecx, 0x731226bd
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x60d600f0
mov ecx, 0xa26a83ff
mov edx, 0xdeea803
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0x32aa74c2
je 0x10035cb6
cmp ecx, 0x3c52eb60
je 0x10035cd1
cmp ecx, 0x3f53b45c
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x7ec350af
mov ecx, 0x99ae01ab
mov edx, 0xbc61f0fc
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0xe502c9e6
je 0x10035fcf
cmp ecx, 0xed3658fc
je 0x10035fea
cmp ecx, 0xf30ce5f5
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0xc48a2d00
mov ecx, 0x204e194e
mov edx, 0x56eb05ce
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0x99ae01ab
je 0x10036005
cmp ecx, 0x9ef5d131
je 0x10036020
cmp ecx, 0xa07d038e
jne 0x10034ac0
mov ecx, 0xc5ca287c
jmp 0x10034ac0
cmp ecx, 0x5ace6ad1
je 0x1003603b
cmp ecx, 0x5e0e8df4
je 0x10036056
cmp ecx, 0x5f14c743
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x200c9537
mov ecx, 0xa07d038e
mov edx, 0x60a00c84
cmove ecx, edx
jmp 0x10034ac0
cmp ecx, 0x204e194e
je 0x1003659e
cmp ecx, 0x25d2f718
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x75b5be30
mov ecx, 0x3f53b45c
mov edx, 0x7d602b04
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0xe0fbae98
je 0x100365b9
cmp ecx, 0xe2dc9c27
jne 0x10034ac0
mov eax, dword [esp + 0x2c]
mov eax, dword [eax - 4]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x2c]
lea ecx, [eax + eax*2]
not eax
lea edx, [ecx + eax*2]
lea eax, [ecx + eax*2]
add eax, 2
and eax, 0x8c42ae9c
add eax, edx
mov ecx, 0xfffffffd
sub ecx, edx
or ecx, 0x73bd5163
add ecx, eax
imul ecx, ecx, 0xc243e9b7
lea edx, [ecx + 0x26368aa9]
lea eax, [ecx + 0x3dbc1649]
xor eax, 0x1ff485c
lea esi, [ecx + eax]
add esi, 0x26368aa9
lea eax, [ecx + ecx]
add eax, 0x7b782c92
xor eax, 0xfc016f46
add eax, esi
sub eax, edx
mov edx, 0xc243e9b6
sub edx, ecx
add edx, edx
or edx, 0x3fe90b8
sub eax, edx
imul eax, eax, 0xca704407
mov ecx, 0x2a4f6299
sub ecx, eax
mov edx, ecx
and edx, 0x8f1f5496
add edx, eax
or ecx, 0x70e0ab69
sub edx, ecx
lea eax, [edx - 0x488e0bc8]
mov ecx, eax
and ecx, 0x291dde4b
add ecx, edx
add ecx, 0xb771f438
mov edx, eax
xor edx, 0x291dde4b
add edx, ecx
or eax, 0x291dde4b
sub edx, eax
add edx, 0xd6e221b5
mov eax, dword [esp + 0x50]
mov ecx, eax
neg ecx
mov esi, edx
or esi, 0xef356405
mov edi, edx
xor edi, 0xef356405
add edi, esi
mov esi, edx
xor esi, 0x10ca9bfa
add esi, edi
and edx, 0xef356405
add edx, esi
add edx, 1
lea esi, [eax - 1]
and esi, edx
not eax
add eax, esi
and ecx, edx
add ecx, eax
imul eax, ecx, 0xa1219b33
lea ecx, [eax - 0x63b558cc]
mov edx, 0x63b558cb
sub edx, eax
and edx, 0x12f49553
add eax, edx
add eax, 0x9c4aa734
or ecx, 0xed0b6aac
lea edx, [eax + ecx]
lea esi, [ecx + eax]
add esi, 0xed0b6aad
add eax, ecx
add eax, 0xed0b6aae
mov ecx, eax
or ecx, 0x3b750175
sub esi, ecx
lea edi, [esi + edx]
add edi, 0xed0b6aad
lea ecx, [esi + edx]
add ecx, 0x63f56d9a
and eax, 0x3b750175
mov edx, eax
not edx
add edx, edi
add edx, 0x76ea02ed
mov esi, edx
xor esi, 0x12f49553
lea esi, [esi + edx*2]
not edx
and edx, 0xed0b6aac
add edx, esi
sub eax, ecx
or eax, 0x12f49553
add eax, edx
imul eax, eax, 0xc277d7fb
lea ecx, [eax - 0x2c4432a9]
mov edx, 0x2c4432a8
sub edx, eax
mov esi, edx
and esi, 0xd943fa7e
lea eax, [esi + eax*2]
add eax, 0xa7779aae
or ecx, 0x26bc0581
add ecx, eax
lea eax, [ecx + edx]
lea esi, [edx + ecx]
add esi, 0xd943fa7e
add ecx, edx
add ecx, 0xd943fa80
mov edx, ecx
not edx
or ecx, 0x18ab4f49
sub esi, ecx
add eax, esi
add eax, 0xd943fa7e
or edx, 0xe754b0b6
lea ecx, [eax + edx]
add eax, edx
add eax, 0x31569e97
mov edx, eax
and edx, 0x26bc0581
add ecx, edx
add ecx, 0x31569e97
mov edx, eax
xor edx, 0x26bc0581
add edx, ecx
or eax, 0x26bc0581
sub edx, eax
add edx, 0x26bc0582
cmp edx, 0x20
mov eax, 0x60d600f0
mov ecx, 0xf953db23
cmovb eax, ecx
mov ecx, 0x73818b36
jmp 0x10034ac0
cmp ecx, 0xafcd5265
je 0x100367c1
cmp ecx, 0xb0f50595
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x8400a1dc
mov ecx, 0xa07d038e
mov edx, 0x78a81d28
cmove ecx, edx
jmp 0x10034ac0
cmp ecx, 0x7cfa8523
je 0x100367dc
cmp ecx, 0x7d602b04
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x637530b2
mov ecx, 0xa07d038e
mov edx, 0x55bb00d7
cmove ecx, edx
jmp 0x10034ac0
cmp ecx, 0x4c794249
je 0x100367f7
cmp ecx, 0x5284511f
jne 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x389d1c3d
mov ecx, 0xa07d038e
mov edx, 0x54c29e7e
cmove ecx, edx
jmp 0x10034ac0
cmp ecx, 0xfc18d1e8
jne 0x10036816
mov ecx, dword [esp]
cmp ecx, 0x282f66a8
mov ecx, 0xa07d038e
mov edx, 0xface89c3
cmove ecx, edx
jmp 0x10034ac0
cmp ecx, 0x905ce09d
jne 0x10036823
mov ecx, dword [esp]
cmp ecx, 0x200c9537
mov ecx, 0xfce117d2
mov edx, 0xf30ce5f5
cmovl ecx, edx
jmp 0x10034ac0
cmp ecx, 0x54c29e7e
jne 0x10036831
push dword [esp + 0x28]
call fcn.10058fc8
add esp, 4
mov dword [esp + 0x1c], eax
mov ecx, 0x73818b36
mov eax, 0x7ec350af
mov edx, dword [esp + 0x34]
mov dword [esp + 0x18], edx
jmp 0x10034ac0
cmp ecx, 0xba5a4735
jne 0x1003683f
mov ecx, dword [esp]
cmp ecx, 0x181c0b1e
mov ecx, 0xa07d038e
mov edx, 0x5e0e8df4
cmove ecx, edx
jmp 0x10034ac0
mov eax, dword [esp + 0x14]
shr eax, 1
mov dword [esp + 0x4c], eax
mov edx, dword [esp + 0x4c]
mov esi, edx
not esi
mov ecx, esi
or ecx, 0x80000000
lea eax, [ecx + edx*2]
lea ecx, [ecx + edx*2]
add ecx, 1
mov edi, esi
and edi, 0x4924c5a5
add edi, edx
mov ebx, edx
xor ebx, 0xb6db3a5a
add ebx, edi
or esi, 0xb6db3a5a
add esi, ebx
mov edi, edx
or edi, 0xb6db3a5a
sub esi, edi
add esi, 1
xor edx, 0x4924c5a5
add edx, edi
add edx, 1
or edx, esi
mov esi, edx
and esi, 0xbc439961
xor esi, 0xcbbce7bf
and edx, 0x43bc669e
lea edi, [esi + edx]
add edi, edi
add edi, 0x788732c4
xor edi, 0x5304434
xor edx, 0xfd67dde5
add edx, edi
sub edx, esi
mov esi, 0x3c439960
sub esi, edx
add edx, 0x43bc669f
and esi, 0x43bc669e
mov edi, edx
xor edi, 0xbc439961
or edx, 0xbc439961
add edx, esi
add edx, edi
lea edi, [edx + eax*2]
add edi, 2
mov esi, 0xfffffffe
sub esi, edx
mov edx, 0xfffffffe
sub edx, eax
or edx, esi
add edx, edi
mov edi, ecx
or edi, esi
xor esi, ecx
not esi
add esi, edi
sub esi, edx
lea eax, [eax + esi*2]
add eax, 0xfffffffc
add esi, 0xfffffffe
sub eax, esi
lea ecx, [eax + eax*2]
add ecx, 6
add eax, eax
add eax, 4
sub eax, ecx
imul eax, eax, 0x4aada43d
lea ecx, [eax - 0x69e83ea0]
and ecx, 0xa9c854a
add ecx, eax
mov edx, 0x79e83e9f
sub edx, eax
or edx, 0xf5637ab5
add edx, ecx
imul eax, edx, 0x7ae51315
lea ecx, [eax + 0x76d28027]
mov edx, ecx
and edx, 0xfbed6d12
add eax, edx
add eax, 0x76d28027
or ecx, 0x41292ed
sub eax, ecx
add eax, 0x82525db
cmp eax, dword [esp + 0x14]
mov eax, 0xc48a2d00
mov ecx, 0x181c0b1e
cmovb eax, ecx
jmp 0x100359a5
mov ecx, dword [esp]
cmp ecx, 0xf953db23
mov ecx, 0xa07d038e
mov edx, 0x72c1ea73
cmove ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x282f66a8
mov ecx, 0xfc18d1e8
mov edx, 0x5f14c743
cmovl ecx, edx
jmp 0x10034ac0
mov eax, dword [esp + 0x1c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov dword [eax], ecx
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x18]
mov dword [eax], ecx
mov eax, dword [esp + 0x14]
cmp eax, 0x10
mov eax, 0xbe61f268
mov ecx, 0x17d8569d
cmovae eax, ecx
mov ecx, 0x73818b36
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x59a43c34
mov ecx, 0xe982adb
mov edx, 0x8c6f9ccc
cmovl ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0xe140ccca
mov ecx, 0x32aa74c2
mov edx, 0x9ef5d131
cmovl ecx, edx
jmp 0x10034ac0
mov eax, dword [esp + 4]
mov ecx, eax
mov ebx, dword [esp + 0x38]
xor ecx, ebx
lea esi, [eax + ecx*2]
mov ecx, eax
not ecx
mov edx, ecx
or edx, ebx
add edx, esi
mov esi, eax
or esi, ebx
sub edx, esi
add edx, 1
mov esi, edx
or esi, ecx
xor edx, eax
add edx, esi
mov esi, edx
not esi
add esi, eax
mov edi, esi
xor edi, 0x3a8a7be6
add edi, esi
or esi, 0xc5758419
add esi, edi
sub edx, eax
or edx, 0x3a8a7be6
lea edi, [esi + edx]
add edx, esi
add edx, 0x3a8a7be8
mov esi, 0xc5758417
sub esi, edi
and esi, ebx
or edx, dword [esp + 0x64]
add edx, esi
lea esi, [ebx + edi]
add esi, 0x3a8a7be8
not edx
add edx, esi
mov esi, edx
and esi, 0xc5758419
lea edi, [edx + edx]
sub edi, esi
mov esi, edx
xor esi, 0x3a8a7be6
add esi, edi
or edx, 0x3a8a7be6
sub esi, edx
mov edi, dword [esp + 0x5c]
mov edx, edi
and edx, ecx
add edx, edi
or ecx, edi
add ecx, eax
sub edx, ecx
or eax, dword [esp + 0x60]
add eax, edx
lea ecx, [eax + eax]
add ecx, 1
sub ecx, eax
lea eax, [esi + ecx]
add eax, 0xc575841a
lea ecx, [eax + eax*2]
mov edx, eax
not edx
add edx, ecx
sub edx, eax
imul eax, edx, 0x988bf60d
lea ecx, [eax - 0x3b680aa2]
mov edx, ecx
and edx, 0x60bcc0ac
add eax, edx
add eax, 0xc497f55e
or ecx, 0x9f433f53
sub eax, ecx
add eax, 0x3e867ea7
imul ecx, eax, 0xb287b73b
imul eax, eax, 0x9af0918a
add ecx, 0x1d5431f2
mov edx, ecx
or edx, 0x9e9d6b07
add edx, eax
or ecx, 0x616294f8
lea eax, [ecx + edx]
add eax, 0x26ba3115
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
mov eax, dword [eax]
mov dword [esp + 0x14], eax
mov ebx, dword [esp + 0x44]
mov eax, ebx
xor eax, 0xf
add eax, ebx
mov ecx, ebx
or ecx, 0xf
sub eax, ecx
mov edi, ebx
not edi
mov ecx, edi
or ecx, 0xfffffff0
add eax, ecx
add eax, 0x10
and eax, ebx
mov edx, eax
neg edx
mov esi, edx
and esi, 0xa46c25ba
add eax, esi
mov ebp, edx
xor ebp, 0xa46c25ba
sub ebp, eax
xor edx, 0x5b93da45
add edx, ebp
lea eax, [esi + edx]
add eax, 0xa46c25bb
mov edx, eax
and edx, edi
add edx, ebx
and eax, ebx
lea esi, [edx + eax]
add edx, eax
add edx, 0x5b93da46
mov ebp, edi
and ebp, 0xf
or edi, 0xf
add edi, ebx
sub ebp, edi
mov eax, ebx
mov edi, ebx
and edi, 0xfffffff0
add edi, ebx
xor ebx, 0xfffffff0
add ebx, edi
or eax, 0xfffffff0
lea edi, [eax + ebp]
add edi, 0xf
not eax
add eax, ebx
lea ebx, [eax + ecx]
add eax, ecx
add eax, 2
mov ecx, 0xfffffffd
sub ecx, ebx
and ecx, edi
mov ebx, edi
or ebx, eax
add ebx, ecx
not edi
or edi, eax
add edi, ebx
mov eax, edx
and eax, edi
add eax, esi
add eax, 0x5b93da46
add eax, edi
mov ecx, edx
xor ecx, edi
add ecx, eax
or edi, edx
sub edi, ecx
lea eax, [edi - 0x23a80e63]
lea ecx, [edi + edi]
add ecx, 0xb8afe33a
mov edx, ecx
and edx, 0xb8afe33a
sub edx, ecx
xor eax, 0xdc57f19d
add eax, edx
add eax, 1
mov dword [esp + 0x30], eax
cmp dword [esp + 0x30], 0
mov eax, 0x59a43c34
mov ecx, 0x181c0b1e
cmovs eax, ecx
mov ecx, 0x73818b36
mov dword [esp + 0x20], 0x7fffffff
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x75b5be30
mov ecx, 0xa07d038e
mov edx, 0xe2dc9c27
cmove ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0xbe61f268
mov ecx, 0xa07d038e
mov edx, 0xe0fbae98
cmove ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x59a43c34
mov ecx, 0xa07d038e
mov edx, 0x129d169e
cmove ecx, edx
jmp 0x10034ac0
mov ecx, 0x73818b36
jmp 0x10034ac0
mov dword [esp], eax
mov ecx, 0x905ce09d
jmp 0x10034ac0
cmp byte [esp + 0xf], 0
mov eax, 0x637530b2
mov ecx, 0x9f83f4c6
cmovne eax, ecx
mov ecx, 0x73818b36
jmp 0x10034ac0
mov ecx, dword [esp + 0x14]
lea edi, [ecx + ecx]
mov dword [esp + 0x10], edi
sub edi, ecx
mov esi, 0xa6e4f9f4
sub esi, edi
sub esi, edi
lea edx, [edi + 0x2c8d8305]
mov ebx, edx
and ebx, 0xd3727d1e
lea ebx, [ebx + ebx*2]
add ebx, edi
add ebx, 0x2c8d8305
add edi, edi
add edi, 0x591b060a
xor edi, 0xa6e4fa3c
add edi, ebx
mov ebx, edx
xor ebx, 0x2c8d82e1
add ebx, edi
or edx, 0xd3727d1e
sub ebx, edx
or esi, 0x591b05c2
add esi, ebx
mov edx, ecx
not edx
mov edi, edx
and edi, 0xb86775b8
mov ebx, edx
and ebx, 0x47988a47
add ebx, ecx
sub edi, ebx
mov ebx, ecx
or ebx, 0x47988a47
add ebx, edi
mov edi, ecx
and edi, 0x47988a47
or edi, ebx
mov ebx, edi
or ebx, 0xb867759c
or edi, 0x47988a63
sub ebx, edi
lea edi, [esi + ebx]
add ebx, esi
add ebx, 0x148986d5
add edi, ebx
mov esi, ebx
not esi
or esi, 0xf97e7f50
add esi, edi
and ebx, 0xf97e7f50
sub esi, ebx
lea ebx, [edx + edx]
and ebx, 0x48
mov edi, ecx
xor edi, 0xffffffdb
add edi, ebx
mov ebx, edx
or ebx, 0x24
sub edi, ebx
mov ebp, ecx
and ebp, 0xffffffdb
mov ebx, edi
not ebx
and ebx, ebp
mov eax, edi
or eax, ebp
add eax, ebx
add esi, 0x1b0b0786
not ebp
or ebp, edi
add ebp, eax
mov eax, ebp
add eax, ebp
lea edi, [ebp + 4]
add edi, ebp
mov ebx, 0xfffffffb
sub ebx, eax
and ebx, esi
sub ebx, eax
and edi, esi
lea eax, [ebx + edi]
lea esi, [ebx + edi]
add esi, 0xfffffffc
mov edi, esi
not edi
and edi, 0xffffffdb
add eax, edi
add eax, 0xfffffffc
or esi, 0x24
lea edi, [eax + esi]
lea ebp, [esi + eax]
add ebp, 0x26
lea eax, [ecx + edx*2]
mov esi, eax
not esi
lea ebx, [esi + eax*2]
lea esi, [esi + eax*2]
add esi, 2
mov eax, ebp
and eax, 0x4551db13
add eax, edi
add eax, 0x26
mov edi, ebp
xor edi, 0x4551db13
add edi, eax
or ebp, 0x4551db13
sub edi, ebp
lea eax, [edi + ebx]
add eax, 0xbaae24ee
add edi, 0xbaae24ec
mov ebx, edi
or ebx, esi
not ebx
lea ebx, [ebx + ebx*2]
lea eax, [ebx + eax*2]
mov ebx, edi
xor ebx, esi
lea eax, [eax + ebx*2]
and edi, esi
lea esi, [eax + edi]
add edi, eax
add edi, 0x4551db17
mov ebp, edi
xor ebp, 0xe16e7e09
add ebp, esi
and edx, 0xc7c8d282
mov eax, dword [esp + 0x10]
and eax, 0x706e5afa
mov esi, ecx
xor esi, 0x38372d7d
add esi, eax
or ecx, 0x38372d7d
sub esi, ecx
mov eax, esi
not eax
and eax, edx
add eax, eax
mov ecx, edx
sub ecx, eax
sub ecx, esi
mov eax, edx
xor eax, esi
add eax, ecx
or esi, edx
add esi, eax
mov eax, esi
xor eax, 0x38372d7d
add esi, esi
xor esi, 0x8f91a504
lea ecx, [eax + esi]
add eax, esi
add eax, 1
add ecx, ecx
add ecx, 2
mov edx, ecx
and edx, 0x48
mov esi, eax
and esi, 0x7fffffdb
add edx, esi
sub edx, ecx
or eax, 0x24
add eax, edx
add eax, esi
mov ecx, edi
not ecx
and ecx, 0x1e9181f6
add ecx, ebp
and edi, 0xe16e7e09
add edi, ecx
lea ecx, [edi + eax*2]
lea eax, [edi + eax*2]
add eax, 0x63e35cc9
mov edx, eax
not edx
and edx, 0x1e9181f6
lea ecx, [edx + ecx*2]
add ecx, 0xc7c6b992
or eax, 0x1e9181f6
sub ecx, eax
imul eax, ecx, 0x6d247cf7
lea ecx, [eax + 0x2f520780]
mov edx, ecx
not edx
xor ecx, 0xc8cfc9be
lea eax, [ecx + eax*2]
add eax, 0x5ea40f00
and edx, 0x37303641
lea eax, [eax + edx*2]
imul eax, eax, 0xde0904c7
add eax, 0x7d797dc9
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x3c], eax
mov ecx, 0x73818b36
mov eax, 0x8680478b
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0xe140ccca
mov ecx, 0xa07d038e
mov edx, 0xd32b0c0a
cmove ecx, edx
jmp 0x10034ac0
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
push dword [esp + 4]
push dword [esp + 0x30]
push dword [esp + 0x10]
call fcn.1005f0d0
add esp, 0xc
mov eax, dword [esp + 4]
add eax, dword [esp + 8]
mov ebp, dword [esp + 0xa8]
push ebp
push 0
push eax
call fcn.1005a020
add esp, 0xc
mov ecx, dword [esp + 4]
mov eax, ecx
not eax
mov edx, dword [esp + 0x70]
or edx, eax
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x6c]
and esi, ecx
lea edx, [edx + esi*2]
lea esi, [edx + edx]
sub esi, edx
lea edi, [esi + esi*2]
add edi, 3
mov edx, edi
and edx, 0x46fe71e7
or edi, 0x46fe71e7
add edi, edx
lea esi, [ecx + edi]
add esi, 0x72031c32
add edi, ecx
mov edx, esi
not edx
mov ebx, esi
xor ebx, 0xb9018e18
sub ebx, edi
or esi, 0x46fe71e7
add esi, ebx
or edx, 0xb9018e18
add edx, esi
sub edx, ebp
add edx, 0x46fe71e9
mov edi, ecx
xor edi, ebp
lea esi, [edi + edi]
lea esi, [esi + esi*2]
shl edi, 2
sub esi, edi
mov edi, edx
and edi, esi
add edi, edi
sub edi, edx
lea ebx, [esi + esi*2]
sub edi, ebx
mov ebx, edx
xor ebx, esi
lea ebx, [edi + ebx*2]
not edx
or edx, esi
lea edi, [ebx + edx*2]
lea edx, [ebx + edx*2]
add edx, 2
mov esi, ecx
and esi, 0xbc3793d8
add esi, ecx
mov ebx, eax
and ebx, 0x43c86c27
add esi, ebx
mov ebp, ecx
or ebp, 0x43c86c27
sub esi, ebp
or esi, ebx
mov ebx, esi
mov eax, dword [esp + 0x80]
xor ebx, eax
add ebx, ebx
sub ebx, esi
mov ebp, esi
or ebp, dword [esp + 0x68]
add ebp, ebx
and esi, eax
lea ebx, [esi + ebp]
add ebp, esi
add ebp, 1
mov esi, ebp
and esi, 0x39d3486c
add esi, ebx
add esi, 1
add ebx, ebx
add ebx, 2
not ebx
and ebx, 0x73a690d8
add ebx, esi
mov esi, ebp
xor ebp, 0xc62cb793
lea eax, [ebx + ebp]
add ebx, ebp
add ebx, 0xc62cb795
mov ebp, 0x39d3486a
sub ebp, eax
not esi
and esi, 0xc62cb793
or esi, ebx
and ebx, 0x39d3486c
and ebp, 0x39d3486c
add ebp, ebx
xor esi, 0xc62cb793
lea eax, [esi + ebp]
add esi, ebp
add esi, 0xc62cb795
mov ebx, edx
xor ebx, 0x43adf20c
add edi, ebx
add edi, 2
mov ebx, edx
or ebx, 0xbc520df3
add ebx, edi
not edx
or edx, 0x43adf20c
mov ebp, 0xbc520df1
sub ebp, ebx
sub ebp, edx
lea edi, [edx + ebx]
add edi, 0x43adf20e
mov edx, 0x39d3486a
sub edx, eax
and ebp, esi
or edx, edi
add edx, ebp
add edi, esi
not edx
add edx, edi
mov eax, edx
and eax, 0xbc520df3
lea esi, [edx + edx]
sub esi, eax
mov eax, edx
xor eax, 0x43adf20c
add eax, esi
or edx, 0x43adf20c
or ecx, dword [esp + 0x7c]
add ecx, edx
sub eax, ecx
lea ecx, [eax - 0x343e5446]
add eax, eax
add eax, 0x97835774
sub eax, ecx
lea ecx, [eax - 0xf6f9dc6]
mov esi, dword [esp + 0x10]
or esi, dword [esp + 0xa8]
lea edx, [esi + esi]
mov edi, esi
neg edx
mov esi, ecx
and esi, edx
add eax, esi
add eax, 0xf090623a
lea eax, [eax + edi*2]
mov esi, ecx
xor esi, edx
add esi, eax
or edx, ecx
sub esi, edx
imul eax, esi, 0x9a2df479
mov ecx, eax
not ecx
and ecx, 0xf11a8060
add ecx, eax
or eax, 0xee57f9f
lea edx, [ecx + eax]
add eax, ecx
add eax, 0xf11a8061
mov ecx, eax
not ecx
add edx, edx
add edx, 0xe23500c2
or eax, 0xe5334f86
sub edx, eax
or ecx, 0x1accb079
add ecx, edx
imul eax, ecx, 0xc13e35c9
mov ecx, dword [esp + 8]
mov byte [eax + ecx + 0x5ccfb89f], 0
mov eax, dword [esp + 0x14]
lea ecx, [eax + eax]
add ecx, 1
sub ecx, eax
imul edx, ecx, 0xd0be68d
lea ecx, [edx - 0x6d929017]
mov esi, ecx
xor esi, 0xa2a6f120
add esi, edx
lea eax, [edx + edx]
add eax, 0x24dadfd2
xor eax, 0xbab21dbe
add eax, esi
or ecx, 0x5d590edf
mov esi, 0x6d929016
sub esi, edx
or esi, 0xa2a6f120
add esi, ecx
sub eax, esi
add eax, 0xefc67ec9
imul ecx, eax, 0xfd02b3bb
imul edx, eax, 0xfa056776
and edx, 0x266e4fa4
imul eax, eax, 0x5fa988a
add eax, edx
xor ecx, 0x933727d2
add eax, ecx
add eax, 1
mov dword [esp + 0x10], eax
cmp eax, 0x1000
mov eax, 0x8680478b
mov ecx, 0x75b5be30
cmovae eax, ecx
mov ecx, 0x73818b36
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x3c], edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x9f83f4c6
mov ecx, 0xa07d038e
mov edx, 0x55b692b8
cmove ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x3b90af6f
mov ecx, 0x5ace6ad1
mov edx, 0x5284511f
cmovl ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x7ec350af
mov ecx, 0xa07d038e
mov edx, 0x44e8fca6
cmove ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0xc48a2d00
mov ecx, 0xa07d038e
mov edx, 0x1f07487d
cmove ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x3b90af6f
mov ecx, 0xa07d038e
mov edx, 0x8fb22117
cmove ecx, edx
jmp 0x10034ac0
mov esi, dword [esp + 0x20]
mov eax, esi
not eax
mov ecx, eax
and ecx, 0xffffffdb
or eax, 0xffffffdb
add eax, esi
sub ecx, eax
mov eax, esi
or eax, 0x24
lea edx, [ecx + eax]
add eax, ecx
add eax, 0xffffffdb
lea ecx, [edx + edx]
add ecx, 0xffffffb7
sub ecx, eax
lea eax, [esi + ecx]
lea edx, [esi + ecx]
add edx, 0x48
lea ecx, [esi + 1]
mov edi, esi
mov esi, edx
and esi, 0xb726b228
add eax, esi
add eax, 0x48
or edx, 0x48d94dd7
sub eax, edx
lea edx, [eax + edi]
add edx, 0x91b29bb0
add eax, 0x91b29baf
mov esi, eax
xor esi, ecx
add edx, esi
not esi
lea edx, [edx + esi*2]
mov dword [esp + 0x20], edi
add edx, edi
not eax
add edx, eax
or eax, ecx
add eax, eax
sub edx, eax
mov eax, edi
and eax, 0x24
add edx, 0xfccee11a
mov ecx, edx
and ecx, eax
not eax
add ecx, eax
and eax, edx
add eax, ecx
mov ecx, eax
or ecx, 0xba57d110
mov edx, eax
xor edx, 0xba57d110
add edx, ecx
mov ecx, eax
xor ecx, 0x45a82eef
add ecx, edx
and eax, 0xba57d110
add eax, ecx
imul eax, eax, 0x8bd5bb69
lea ecx, [eax - 0x742a4497]
mov edx, ecx
not edx
and edx, 0x97104c9a
add eax, edx
add eax, 0x8bd5bb69
or ecx, 0x68efb365
add ecx, eax
imul ecx, ecx, 0xbd6284d9
lea eax, [ecx + 0x441e2e4f]
mov edx, eax
or edx, 0x609ebbfc
neg edx
add edx, ecx
add edx, 0x86bba976
lea esi, [ecx + edx]
add esi, 0x86bba976
add ecx, edx
add ecx, 0xc2be2b21
and eax, 0x609ebbfc
mov edx, eax
not edx
add edx, esi
add edx, 0x3c0281ab
mov esi, edx
xor esi, 0x7944568a
lea esi, [esi + edx*2]
not edx
and edx, 0x86bba975
add edx, esi
sub eax, ecx
or eax, 0x7944568a
lea ecx, [edx + eax]
add eax, edx
add eax, 0x7944568c
and eax, 0x9f614403
add eax, ecx
add eax, 0x7944568c
mov edx, 0x86bba973
sub edx, ecx
or edx, 0x609ebbfc
add eax, edx
add eax, 0x9f614405
push eax
call fcn.10058fc8
add esp, 4
mov dword [esp + 0x18], eax
mov edx, eax
and edx, 0x3bf72679
add edx, edx
lea ecx, [eax + eax]
sub ecx, edx
mov edx, eax
xor edx, 0x4408d986
add edx, ecx
imul ecx, edx, 0x13f9aba7
lea eax, [ecx - 0x1545f095]
mov edx, eax
and edx, 0xb2494e6
add edx, edx
sub edx, ecx
mov ecx, eax
or ecx, 0x8b2494e6
add ecx, edx
and eax, 0x74db6b19
add eax, ecx
imul eax, eax, 0x41044c17
add eax, 0x850d257a
mov ecx, eax
and ecx, 0x56ef9dfe
or eax, 0x56ef9dfe
lea edx, [ecx + eax]
add eax, ecx
add eax, 0xfb06cf43
mov ecx, eax
xor ecx, 0x56ef9dfe
add ecx, edx
mov edx, eax
not edx
and edx, 0xa9106201
add edx, ecx
and eax, 0x56ef9dfe
lea edi, [edx + eax]
lea ecx, [eax + edx]
add ecx, 0x51f66d42
mov edx, ecx
xor edx, 0x1f
mov dword [esp + 0x90], edx
mov eax, edx
and eax, ecx
add eax, edx
mov edx, ecx
mov ebx, ecx
or edx, 0x1f
mov dword [esp + 0x1c], edx
mov ecx, edx
not ecx
lea esi, [eax + ecx*2]
mov ebp, ebx
mov edx, ebx
not ebp
lea ecx, [edi + edi]
add ecx, 0xa3ecdac4
and ecx, 0xffffffc0
mov eax, ebp
or eax, 0xffffffe0
add eax, ecx
lea ebx, [edi + edi]
add ebx, 0xa3ecda84
or ebx, 0x3e
sub ebx, eax
lea eax, [esi + edx]
add eax, 0x21
mov ecx, eax
and ecx, 0x749f9fa2
add ecx, ecx
sub eax, ecx
add esi, edx
lea edi, [esi + esi]
add edi, 0x42
xor edi, 0x16c0c0ba
add edi, eax
mov eax, 0xffffffde
sub eax, esi
add eax, eax
or eax, 0xe93f3f44
sub edi, eax
lea eax, [ebx + 1]
lea ecx, [edi + ebx*2]
add ecx, 0x5ddedee8
add edi, 0x5ddedee6
mov esi, edi
or esi, eax
not esi
add esi, ecx
not edi
or edi, eax
sub edi, esi
lea eax, [edi + 0x749f9fa2]
lea ecx, [edi + edi]
add ecx, 0xe93f3f44
mov esi, eax
or esi, 0x20
sub esi, ecx
or eax, 0xffffffdf
lea edi, [esi + eax]
add esi, eax
add esi, 0xffffffe1
mov eax, ebp
mov dword [esp + 0x8c], ebp
mov ebx, ebp
and ebx, 0x9846e7c3
add ebx, ebp
mov ebp, edx
and edx, 0x67b9183c
add ebx, edx
or eax, 0x67b9183c
sub ebx, eax
mov eax, ebx
xor eax, edx
sub eax, ebx
mov ecx, ebx
or ecx, edx
add ecx, eax
mov eax, edx
not eax
or eax, ebx
add eax, ecx
and ebx, edx
lea ecx, [ebx + eax]
add ecx, 1
add ebx, eax
lea eax, [ebx + ebx]
add eax, 2
xor eax, 0x4f723046
xor ecx, 0x1846e7dc
add ecx, eax
mov eax, esi
not eax
lea edx, [ecx + ecx]
add edx, 2
and eax, edx
add edi, eax
add edi, 0xffffffe1
lea eax, [ecx + ecx]
add edi, edi
add eax, eax
add eax, 4
sub edi, eax
xor esi, edx
sub edi, esi
mov dword [esp + 0x88], edi
mov edx, ebp
mov eax, ebp
xor eax, 0xffffffe0
mov ebx, dword [esp + 0x1c]
add eax, ebx
mov esi, dword [esp + 0x90]
lea ecx, [eax + esi]
lea edi, [esi + eax]
add edi, 2
mov esi, ebp
mov eax, ebp
and esi, 0x1f
mov edx, esi
not edx
lea ebp, [edx + ecx]
add ebp, 2
sub esi, edi
and ebp, eax
and esi, eax
or eax, 0xffffffe0
add eax, ebx
mov edi, dword [esp + 0x8c]
mov ecx, edi
or ecx, 0x1f
lea edx, [eax + ecx]
add eax, ecx
add eax, 2
mov ecx, 0xfffffffd
sub ecx, edx
add esi, ebp
add esi, edi
mov edx, edi
and edx, 0xffffffe0
and ebx, eax
or eax, edx
or ecx, edx
add ecx, ebx
mov edx, ecx
not edx
add edx, eax
sub ecx, eax
mov eax, ecx
and eax, 0x31fe4d5d
add eax, ecx
mov ebx, ecx
or ebx, 0x31fe4d5d
sub eax, ebx
mov ebx, ecx
xor ebx, 0x31fe4d5d
add ebx, eax
not ecx
or ecx, 0x31fe4d5d
lea eax, [ecx + ebx]
add eax, 1
mov ecx, edx
and ecx, 0xce01b2a2
mov ebx, edx
xor ebx, 0x31fe4d5d
lea ecx, [ebx + ecx*2]
mov ebx, edx
xor edx, 0xce01b2a2
add edx, ecx
not ebx
or ebx, 0x31fe4d5d
lea ecx, [ebx + edx]
add ecx, 2
or ecx, eax
xor ecx, 0x31fe4d5d
lea eax, [ecx + 1]
mov edx, 0xfffffffe
sub edx, ecx
mov edi, dword [esp + 0x88]
add ecx, edi
add ecx, 0x6285fab3
lea ebx, [edi + 0x6285fab2]
or edx, ebx
xor ebx, eax
sub ecx, ebx
not ebx
add ebx, ecx
add edx, edx
sub ebx, edx
mov ecx, 0x9d7a054d
sub ecx, edi
or ecx, eax
add ecx, ecx
sub ebx, ecx
lea eax, [ebx - 3]
mov ecx, eax
or eax, 0x9d7a054e
mov edx, ebx
sub edx, eax
not ecx
add edx, ebx
or ecx, 0x6285fab1
lea eax, [esi + ebp]
add esi, ebp
add esi, 1
mov edi, esi
not edi
add edi, edi
sub edi, esi
lea esi, [edi + eax*2]
add esi, 2
lea eax, [edi + eax*2]
add eax, 3
lea edi, [edx + ecx]
add ecx, edx
add ecx, 0xf64cb71e
and ecx, eax
lea eax, [ecx + esi]
add eax, 1
add eax, edi
not ecx
add ecx, eax
imul eax, ecx, 0x57399919
lea ecx, [eax - 0x5ffe1f28]
mov edx, ecx
and edx, 0x351815a1
add eax, edx
add eax, 0xa001e0d8
or ecx, 0xcae7ea5e
sub eax, ecx
lea ecx, [eax - 0x6a302b43]
mov edx, ecx
xor edx, 0xe2cb1253
add edx, eax
add edx, 0x95cfd4bd
add eax, eax
add eax, 0x2b9fa97a
xor eax, 0x3a69db58
add eax, edx
not ecx
add eax, ecx
add ecx, ecx
or ecx, 0xc59624a6
sub eax, ecx
add eax, 0xc59624a7
imul ecx, eax, 0xeb354cd7
imul eax, eax, 0x29956652
add ecx, 0x2faf636
mov edx, ecx
or edx, 0x487471cc
add edx, eax
or ecx, 0xb78b8e33
lea eax, [edx + ecx]
add ecx, edx
add ecx, 0xaa8d15
not ecx
and ecx, 0xb78b8e33
lea edx, [ecx + eax]
add edx, 0xaa8d15
mov ecx, 0xff5572ea
sub ecx, eax
or ecx, 0x487471cc
sub edx, ecx
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x18]
mov dword [edx - 4], eax
mov ecx, 0x73818b36
mov eax, 0x7ec350af
mov edx, dword [esp + 0x20]
mov dword [esp + 0x18], edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0xf953db23
mov ecx, 0xbc7292cf
mov edx, 0x8bb9306a
cmovl ecx, edx
jmp 0x10034ac0
push dword [esp + 4]
push dword [esp + 0x28]
push dword [esp + 0x10]
call fcn.1005f0d0
add esp, 0xc
mov eax, dword [esp + 4]
add eax, dword [esp + 8]
mov ecx, dword [esp + 0xa8]
push ecx
mov ebx, ecx
push 0
push eax
call fcn.1005a020
add esp, 0xc
mov eax, dword [esp + 4]
mov ecx, eax
or ecx, 0xe7b9e69d
add ecx, eax
mov edx, eax
xor edx, 0x18461962
add edx, ecx
mov ecx, eax
or ecx, 0x18461962
sub edx, ecx
lea esi, [edx + 0x308c32c5]
mov ecx, esi
not ecx
mov edi, ecx
and edi, 0x18461962
lea edx, [edi + edx*2]
add edx, 0x6118658a
xor esi, 0xe7b9e69d
add esi, edx
or ecx, 0xe7b9e69d
add ecx, esi
add ecx, ebx
add ecx, eax
mov esi, eax
not esi
mov edx, esi
and edx, ebx
mov ebp, ebx
mov ebx, dword [esp + 0x84]
lea edx, [ebx + edx*2]
mov edi, esi
or edi, ebx
sub edx, edi
mov edi, esi
xor edi, ebp
mov ebx, eax
xor ebx, ebp
add ebx, edi
mov edi, dword [esp + 0x58]
lea edi, [edi + ebx*2]
add edi, eax
mov ebp, dword [esp + 0x78]
and esi, ebp
mov ebx, eax
xor ebx, ebp
add ebx, esi
mov esi, eax
or esi, dword [esp + 0x74]
lea ebp, [ebx + esi]
add ebx, esi
add ebx, 1
mov esi, ebx
and esi, eax
add ebp, esi
add ebp, 1
or ebx, eax
sub ebp, ebx
lea ebx, [eax + ebp]
add ebp, eax
add ebp, 1
or eax, dword [esp + 0xa8]
add eax, eax
sub edi, eax
mov eax, 0x3846195e
sub eax, ecx
or eax, 0xec5e12c3
lea eax, [eax + ecx*2]
or edi, edx
mov edx, 0x1846195e
sub edx, ecx
or edx, 0x13a1ed3c
add edx, eax
lea eax, [edx + edi]
lea ecx, [edi + edx]
add ecx, 0xe315ba81
not ecx
mov edx, ecx
and edx, 0x13a1ed3c
add eax, edx
add eax, 0xe315ba81
or ecx, 0xec5e12c3
sub eax, ecx
mov ecx, esi
not ecx
add ecx, ebx
add ecx, 1
sub esi, ebp
lea edx, [eax - 0x2743da7a]
and esi, 0xceac7e17
and ecx, 0x315381e8
or ecx, esi
lea esi, [ecx + ecx]
xor esi, 0x9d58fc2f
xor ecx, 0x315381e8
add ecx, esi
add ecx, 1
mov esi, ecx
not esi
or esi, edx
not edx
and edx, ecx
add eax, edx
add eax, 0xd8bc2586
add esi, eax
mov eax, esi
sub eax, ecx
sub ecx, esi
lea eax, [ecx + eax*2]
imul eax, eax, 0xe0842961
lea ecx, [eax - 0x3ef7ad3e]
mov edx, ecx
and edx, 0xd2c928e8
add eax, edx
add eax, 0xc10852c2
mov edx, ecx
xor edx, 0xd2c928e8
add edx, eax
or ecx, 0xd2c928e8
sub edx, ecx
lea eax, [edx + 0x2d36d717]
not eax
lea eax, [eax + eax*2]
lea eax, [eax + edx*2]
add eax, 0x5a6dae2e
imul edx, eax, 0x7f3dc55f
lea eax, [edx + 0x2f48c30a]
mov esi, eax
xor esi, 0xa4598489
add esi, edx
lea ecx, [edx + edx]
add ecx, 0x5e918614
xor ecx, 0xb74cf6ec
add ecx, esi
mov esi, 0x50b73cf5
sub esi, edx
or eax, 0x5ba67b76
or esi, 0xa4598489
add esi, eax
sub ecx, esi
mov eax, dword [esp + 8]
mov byte [ecx + eax + 0x2212d4a6], 0
jmp 0x10036807
mov ecx, dword [esp]
cmp ecx, 0x8680478b
mov ecx, 0x7cfa8523
mov edx, 0xb0f50595
cmovl ecx, edx
jmp 0x10034ac0
mov ecx, dword [esp]
cmp ecx, 0x8680478b
mov ecx, 0xa07d038e
mov edx, 0x4c794249
cmove ecx, edx
jmp 0x10034ac0
push dword [esp + 0x10]
push dword [esp + 0x40]
call fcn.10058fb5
add esp, 8
mov ecx, 0x73818b36
mov eax, 0x282f66a8
jmp 0x10034ac0
cmp ecx, 0xface89c3
je 0x10036850
jmp 0x10034ac0
cmp ecx, 0x8fb22117
jne 0x10034ac0
jmp 0x10036865
cmp ecx, 0x55b692b8
jne 0x10034ac0
jmp 0x1003686a
cmp ecx, 0xbb1c1c55
jne 0x10034ac0
call fcn.1005af6d
mov ecx, dword [esp + 8]
mov eax, dword [esp + 0x24]
mov dword [eax], ecx
add esp, 0x94
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.10036870
call fcn.1002dd50
int3