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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x80
mov dword [esp + 0x44], edx
mov dword [esp + 0x20], ecx
lea eax, [ecx + 0x10]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [esp + 8], eax
mov edx, dword [esp + 8]
mov eax, edx
or eax, 0x80000000
mov ecx, edx
xor ecx, 0x7fffffff
lea edi, [ecx + eax]
add eax, ecx
add eax, 0x80000002
lea esi, [edx + edx]
mov dword [esp + 0x1c], esi
sub esi, edx
mov ecx, 0x7ffffffd
sub ecx, edi
and ecx, esi
add ecx, edi
add ecx, 0x80000002
add ecx, esi
add ecx, edi
or esi, eax
sub esi, ecx
lea eax, [edx + edx*2]
mov ecx, edx
not ecx
lea eax, [eax + ecx*2]
mov dword [esp + 0x18], ecx
sub eax, edx
lea edi, [eax + 2]
mov ebx, edx
sub ebx, edi
or ebx, 0xf3294c5b
add ebx, eax
add ebx, 2
add eax, ecx
add eax, 2
and eax, 0xf3294c5b
lea ecx, [edx + eax*2]
sub ecx, ebx
mov ebx, edx
and ebx, 0xcd6b3a4
mov ebp, edx
xor ebp, 0xf3294c5b
add ebp, ebx
add ebp, edx
mov eax, edx
or eax, 0xf3294c5b
sub ebp, eax
mov eax, ebx
not eax
add eax, ebp
add eax, 1
add ebp, 1
sub ebx, ebp
mov edi, ecx
not edi
and edi, eax
add edi, edi
mov ebp, ecx
or ebp, eax
or ebx, ecx
and ecx, eax
sub eax, edi
add ebp, eax
sub ebp, ebx
mov eax, ecx
not eax
add eax, ebp
sub ecx, ebp
mov ebx, eax
add eax, eax
xor eax, 0xe65298b7
or ecx, 0x8cd6b3a4
sub eax, ecx
not ebx
or ebx, 0x73294c5b
add ebx, eax
lea eax, [esi + 0x7ffffffe]
mov ecx, eax
not ecx
mov edi, ecx
and edi, 0xac8509c9
add esi, edi
add esi, 0x7ffffffe
xor eax, 0x537af636
add eax, esi
or ecx, 0xac8509c9
sub eax, ecx
lea ecx, [ebx + eax]
add eax, ebx
add eax, 0x395bbd6e
xor eax, 0xac8509c9
add ecx, ecx
add ecx, 0x72b77adc
or ecx, 0xa6f5ec6c
lea edi, [eax + ecx]
lea esi, [eax + ecx]
add esi, 2
lea eax, [edi + edi]
add eax, 4
mov ecx, eax
or ecx, 0x6674aada
sub eax, ecx
xor esi, 0x333a556d
add esi, eax
mov ebp, dword [esp + 0x18]
lea eax, [edx + ebp*2]
add eax, 1
and eax, 0x80000000
imul eax, eax, 0x17f17e35
or eax, 0x7d96ff5e
imul eax, eax, 0xf2079be3
lea ecx, [eax + 0x5eeba5a5]
mov edi, esi
xor edi, ecx
lea ebx, [eax + esi*2]
add ebx, 0x5eeba5a5
xor eax, 0xa1145a5a
or eax, esi
add eax, edi
sub ebx, eax
and esi, ecx
not esi
lea edi, [ebx + esi]
add esi, ebx
add esi, 0x333a556d
mov ecx, ebp
mov eax, ebp
add eax, ebp
and ecx, 0x6692f1eb
and eax, 0x32da1c28
add eax, ecx
mov ecx, edx
xor ecx, 0x6692f1eb
add ecx, eax
mov ebx, edx
xor ebx, 0x996d0e14
add ecx, ebx
mov eax, dword [esp + 0x1c]
or eax, 0xcd25e3d6
add eax, ecx
add eax, 3
mov ebp, edx
and ebp, 0x996d0e14
mov ecx, edx
or ecx, 0x6692f1eb
add ecx, ebp
add ecx, ebx
or edx, 0x996d0e14
sub ecx, edx
add ecx, 0x996d0e15
or ecx, eax
xor ecx, 0x996d0e14
mov eax, esi
and eax, 0x1c1c4cde
add eax, eax
lea edx, [edi + edi]
add edx, 0x6674aada
sub edx, eax
xor esi, 0x63e3b321
add esi, edx
add esi, ecx
mov eax, esi
and eax, 0x63e3b321
add esi, eax
not eax
lea ecx, [esi + eax]
add eax, esi
add eax, 0xf9ece11d
mov edx, eax
or edx, 1
add edx, ecx
mov ecx, eax
xor ecx, 0xfffffffe
add ecx, edx
or eax, 0xfffffffe
sub ecx, eax
imul eax, ecx, 0xff31f351
lea ecx, [eax + 0x18ccf2e0]
mov edx, ecx
not edx
and edx, 0x8c713f5e
lea eax, [edx + eax*2]
add eax, 0x3199e5c0
or ecx, 0x8c713f5e
sub eax, ecx
lea ecx, [eax - 0x738ec0a1]
mov edx, ecx
not edx
and edx, 0xe1cbe21d
add eax, edx
add eax, 0x8c713f5f
mov edx, ecx
xor edx, 0x1e341de2
add edx, eax
or ecx, 0xe1cbe21d
add ecx, edx
imul eax, ecx, 0xd9e735b1
lea ecx, [eax - 0x683d45fe]
not ecx
mov edx, 0x683d45fd
sub edx, eax
or edx, 0x37594cf7
lea eax, [edx + eax*2]
add eax, 0x2f857404
or ecx, 0xc8a6b308
add eax, ecx
add eax, 0xc8a6b30b
mov ecx, eax
xor ecx, 0xf0da8f3
and eax, 0xf0da8f3
lea eax, [ecx + eax*2]
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x37594cf7
add edx, eax
xor eax, 0xc8a6b308
add eax, edx
or ecx, 0x37594cf7
sub eax, ecx
add eax, 0x37594cf7
mov esi, dword [esp + 0x44]
cmp eax, esi
setb byte [esp + 0x13]
mov ecx, esi
not ecx
lea eax, [ecx + esi*2]
sub eax, esi
mov dword [esp + 0x70], ecx
add ecx, eax
add ecx, 1
add eax, 1
mov edx, esi
sub edx, eax
and edx, 0xc5cbcd4d
and ecx, 0xc5cbcd4d
lea eax, [edx + ecx*2]
add eax, 0x3a3432b3
mov ecx, esi
and ecx, 0x3a3432b2
or ecx, eax
lea eax, [esi + esi]
mov dword [esp + 0x68], eax
xor ecx, 0xc5cbcd4d
mov dword [esp + 0x6c], ecx
lea eax, [ecx + 1]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x20]
add eax, 0x14
mov dword [esp + 0x60], eax
mov ecx, 0x59516e6
mov eax, 0xf993b8ee
jmp 0x10053cf0
mov eax, dword [esp + 0x2c]
mov eax, dword [eax - 4]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x2c]
mov eax, ecx
mov edx, ecx
not edx
or edx, 0x7dc9aa1d
add edx, ecx
and ecx, 0x7dc9aa1d
lea ecx, [ecx + ecx*2]
xor eax, 0x7dc9aa1d
add eax, ecx
sub eax, edx
mov ecx, eax
neg ecx
or ecx, 0x7dc9aa1d
add ecx, eax
lea edx, [eax - 1]
and edx, 0x7dc9aa1d
add edx, eax
add edx, 0xffffffff
sub edx, ecx
lea eax, [edx - 0x7dc9aa1d]
lea ecx, [edx + edx]
add ecx, 0x46cabc6
or ecx, 0xcf3da83a
add ecx, edx
add ecx, 0x823655e3
mov edx, eax
or edx, 0xe79ed41d
sub ecx, edx
and eax, 0x18612be2
mov edx, eax
not edx
add edx, ecx
add edx, 2
add ecx, 2
mov esi, edx
xor esi, 0xfffffffc
add esi, edx
mov edi, edx
or edi, 3
add edi, esi
sub eax, ecx
add eax, edi
and edx, 0xfffffffc
lea esi, [eax + edx]
lea ecx, [edx + eax]
add ecx, 0xfffffffe
mov eax, ecx
or eax, 0x18612be2
lea edx, [eax + esi]
add edx, 0xfffffffe
mov eax, ecx
xor eax, 0xe79ed41d
add eax, edx
not ecx
add eax, ecx
or ecx, 0x18612be2
sub eax, ecx
add eax, 0x18612be3
imul edx, eax, 0xd6e7c111
xor edx, 0xbd78f897
imul eax, eax, 0xadcf8222
or eax, 0x7af1f12e
sub edx, eax
add edx, 0x7af1f12f
mov eax, dword [esp + 0x5c]
imul edi, edx, 0xd8b0b00f
lea esi, [edi - 0x6d7f10e8]
mov ecx, eax
neg ecx
mov ebx, esi
and ebx, 0xc52d7d49
lea edi, [edi + ebx*2]
add edi, 0x9280ef18
mov ebx, esi
xor ebx, 0xc52d7d49
add ebx, edi
xor esi, 0x3ad282b6
add esi, ebx
imul edi, edx, 0x4e9e9fe2
add edi, 0xdafe21ce
or edi, 0x75a5056c
mov edx, 0x3ad282b2
sub edx, esi
sub edx, edi
add esi, edi
add esi, 0xc52d7d4d
and edx, ecx
mov edi, esi
xor edi, ecx
or ecx, esi
sub esi, edx
add eax, eax
sub esi, eax
add edi, esi
sub edi, ecx
imul eax, edi, 0x64081405
lea ecx, [eax - 0x7d8d416c]
mov edx, ecx
and edx, 0x5c3dade6
add edx, edx
add eax, eax
add eax, 0x4e57d28
sub eax, edx
xor ecx, 0x23c25219
add ecx, eax
imul eax, ecx, 0x812198cd
lea ecx, [eax - 0x53671a08]
mov edx, ecx
or edx, 0x5f7875cb
add edx, eax
mov eax, ecx
xor eax, 0xa0878a34
add eax, edx
or ecx, 0xa0878a34
sub eax, ecx
add eax, 0xeda7fa62
cmp eax, 0x20
mov eax, 0xc81cc663
mov ecx, 0xfd1f892f
cmovb eax, ecx
mov ecx, 0x39be5875
cmp ecx, 0xf3090095
jle 0x10053d50
cmp ecx, 0x305037d5
jle 0x10053dc0
cmp ecx, 0x69b89e63
jg 0x10053e71
cmp ecx, 0x5a615f10
jg 0x10053f8f
cmp ecx, 0x45b8bc7e
jg 0x100544ac
cmp ecx, 0x305037d6
je 0x10054b4f
cmp ecx, 0x39be5875
jne 0x10053cf0
mov ecx, 0x59516e6
jmp 0x10053cf0
cmp ecx, 0xc10070a9
jg 0x10053e20
cmp ecx, 0xa9914c3b
jle 0x10053ebc
cmp ecx, 0xaf6fde5c
jle 0x10053fce
cmp ecx, 0xbcf0f71d
jg 0x1005491f
cmp ecx, 0xaf6fde5d
je 0x10054b6a
cmp ecx, 0xb8a1d5a8
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xb66a4a0
mov ecx, 0xc10070aa
mov edx, 0x28e206a6
cmovl ecx, edx
jmp 0x10053cf0
cmp ecx, 0x1ef6b04c
jle 0x10053f07
cmp ecx, 0x256ab81c
jle 0x1005416e
cmp ecx, 0x29c54e77
jg 0x10054971
cmp ecx, 0x256ab81d
je 0x10053b35
cmp ecx, 0x28e206a6
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xfd1f892f
mov ecx, 0xf101b603
mov edx, 0xac9b0336
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0xe8cedcff
jle 0x10053f44
cmp ecx, 0xef3029a1
jle 0x100541ad
cmp ecx, 0xef90e120
jg 0x100549a4
cmp ecx, 0xef3029a2
je 0x10054b74
cmp ecx, 0xef30a036
jne 0x10053cf0
push dword [esp + 0x24]
push dword [esp + 0x4c]
call fcn.1005d15f
add esp, 8
jmp 0x100554f1
cmp ecx, 0x746d455a
jle 0x100541ec
cmp ecx, 0x783f8ed2
jg 0x100549c6
cmp ecx, 0x746d455b
je 0x10054b8f
cmp ecx, 0x76da2da7
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xfaf16f77
mov ecx, 0xf101b603
mov edx, 0x9bc08ee0
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0x9757a1f9
jle 0x1005422b
cmp ecx, 0x9abad230
jg 0x100549f9
cmp ecx, 0x9757a1fa
je 0x10054f66
cmp ecx, 0x98757f7a
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xde4e3b6
mov ecx, 0x2c837460
mov edx, 0xcfe69f48
cmovl ecx, edx
jmp 0x10053cf0
cmp ecx, 0xfffba449
jle 0x1005426a
cmp ecx, 0x96a7a4d
jg 0x10054ada
cmp ecx, 0xfffba44a
je 0x100552ba
cmp ecx, 0x59516e6
jne 0x10053cf0
mov dword [esp], eax
mov ecx, 0x98757f7a
jmp 0x10053cf0
cmp ecx, 0xd9ac44b5
jg 0x100542a9
cmp ecx, 0xcd87aad1
jle 0x10054b01
cmp ecx, 0xcd87aad2
je 0x100552d5
cmp ecx, 0xcfe69f48
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xe8725881
mov ecx, 0x5a615f11
mov edx, 0x1ef6b04d
cmovl ecx, edx
jmp 0x10053cf0
cmp ecx, 0x641aea32
jle 0x10054b28
cmp ecx, 0x641aea33
je 0x100552f0
cmp ecx, 0x667d591b
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x32b1455d
mov ecx, 0xa9d195b8
mov edx, 0x305037d6
cmovl ecx, edx
jmp 0x10053cf0
cmp ecx, 0xa9914c3c
je 0x1005530b
cmp ecx, 0xa9d195b8
je 0x10055326
cmp ecx, 0xac9b0336
jne 0x10053cf0
mov eax, dword [esp + 0x14]
mov ecx, eax
not ecx
lea edx, [eax + ecx*2]
lea ecx, [eax + ecx*2]
add ecx, 1
mov esi, ecx
not esi
and esi, 0x24
add edx, esi
add edx, 1
xor ecx, 0xffffffdb
add ecx, edx
add ecx, 1
mov edx, eax
and edx, 0x24
mov esi, edx
xor esi, 0x24
add edx, edx
sub esi, edx
mov edx, eax
xor edx, 0xffffffdb
add edx, esi
add edx, eax
add edx, 0x25
lea esi, [eax + eax*2]
not esi
lea esi, [esi + eax*2]
and eax, 0xffffffdb
or ecx, eax
lea edi, [ecx + 0x57eef2c1]
mov ebx, edi
and ebx, 0xa8110d62
lea ecx, [ebx + ecx*2]
add ecx, 0xafdde582
mov ebx, edi
not ebx
and ebx, 0x28110d62
lea ecx, [ecx + ebx*2]
or edi, 0xa8110d62
sub ecx, edi
or edx, eax
mov eax, edx
not eax
lea edi, [eax + edx*2]
sub edi, edx
add eax, edi
add eax, 1
add edi, 1
mov ebx, edx
sub ebx, edi
and ebx, 0xf6aaa881
and eax, 0xf6aaa881
lea eax, [ebx + eax*2]
add eax, 0x955577f
and edx, 0x955577e
or edx, eax
mov eax, edx
xor eax, 0x955577e
lea edi, [ecx - 0x488f9800]
xor edx, 0xf6aaa881
and edx, edi
mov ebx, 0x488f97ff
sub ebx, ecx
mov ecx, ebx
and ecx, eax
add ecx, ecx
sub edx, ecx
add edx, eax
xor edi, eax
add edi, edx
add edi, eax
or ebx, eax
lea eax, [edi + ebx]
lea ecx, [ebx + edi]
add ecx, 1
mov edx, ecx
not edx
mov edi, edx
and edi, 0x488f9801
add eax, edi
add eax, 1
and edx, 0xb77067fe
add edx, eax
lea eax, [edx + ecx]
add eax, 0x488f9802
mov ecx, eax
sub ecx, esi
mov edx, eax
or edx, esi
add edx, ecx
mov ecx, eax
xor ecx, esi
not ecx
add ecx, edx
not eax
add ecx, eax
or eax, esi
sub ecx, eax
imul eax, ecx, 0xab686b51
lea ecx, [eax - 0x783f6a40]
xor ecx, 0x47bf508f
add eax, eax
add eax, 0xf812b80
or eax, 0x70815ee0
lea edx, [ecx + eax]
add eax, ecx
add eax, 0x8f7ea120
and eax, 0x23a7d591
lea ecx, [eax + edx]
add ecx, 0x8f7ea120
not eax
add eax, ecx
imul eax, eax, 0xc1a3bdb1
add eax, 0xa9e02e13
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x48], eax
mov ecx, 0x39be5875
mov eax, 0x68a4128c
jmp 0x10053cf0
cmp ecx, 0x1ef6b04d
je 0x10055341
cmp ecx, 0x22da9a9e
je 0x1005535c
cmp ecx, 0x2464ba5e
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xfd1f892f
mov ecx, 0xb8a1d5a8
mov edx, 0x76da2da7
cmovl ecx, edx
jmp 0x10053cf0
cmp ecx, 0xe8cedd00
je 0x10055382
cmp ecx, 0xe90da0c8
je 0x1005539d
cmp ecx, 0xed73a369
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x37ab6469
mov ecx, 0xf101b603
mov edx, 0x746d455b
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0x69b89e64
je 0x100553b8
cmp ecx, 0x6c04b6a3
je 0x100553d3
cmp ecx, 0x71e36dc2
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x41febc04
mov ecx, 0xf101b603
mov edx, 0xf9da0a23
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0x8281aff5
je 0x100553ff
cmp ecx, 0x8664cd6e
je 0x10055500
cmp ecx, 0x8833e327
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x41febc04
mov ecx, 0x71e36dc2
mov edx, 0xed73a369
cmovl ecx, edx
jmp 0x10053cf0
cmp ecx, 0xf3090096
je 0x1005551b
cmp ecx, 0xf9da0a23
je 0x10055536
cmp ecx, 0xff0682de
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x83c62f1b
mov ecx, 0xf101b603
mov edx, 0x8281aff5
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0xd9ac44b6
je 0x1005555d
cmp ecx, 0xde869cba
je 0x10055578
cmp ecx, 0xe804df41
jne 0x10053cf0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x58]
mov esi, ecx
not esi
lea edx, [ecx + esi*2]
mov edi, 0xfffffffe
sub edi, edx
mov edx, eax
not edx
mov ebx, edi
or ebx, edx
mov ebp, edi
add ebx, edi
xor edi, edx
or ebp, eax
add ebp, edi
lea edi, [ecx + ecx]
sub ebx, ebp
lea esi, [ecx + esi*2]
add esi, 1
or esi, eax
add esi, ebx
not esi
mov ebx, ecx
and ebx, 0xfd47ce44
lea ebx, [edi + ebx*4]
mov ebp, edi
xor ebp, 0x7a8f9c89
add ebp, ebx
mov ebx, edi
xor ebx, 0x85706377
add ebx, ebp
not edi
add edi, edi
or edi, 0xae0c6ee
lea ebp, [edi + ebx]
add ebp, 0x7a8f9c8a
add ebx, edi
add ebx, 0x7a8f9c8b
xor ebp, 0xfffffffe
and ebp, esi
mov edi, ebx
sub edi, ebp
lea ebp, [edi + esi*2]
mov edi, ebx
xor edi, esi
add edi, ebp
or esi, ebx
add edi, eax
sub edi, esi
mov esi, ecx
and esi, eax
or eax, ecx
add eax, edx
or edx, ecx
sub eax, edx
lea ecx, [edi - 0x7a8f9c89]
or eax, esi
mov edx, ecx
not edx
and edx, eax
add edx, edi
add edx, 0x85706377
mov esi, ecx
xor esi, eax
add esi, eax
sub edx, esi
or ecx, eax
add ecx, edx
not eax
add eax, ecx
imul eax, eax, 0xf09125ab
mov ecx, 0x423508f6
sub ecx, eax
or ecx, 0xcfa2b3c0
lea ecx, [ecx + eax*2]
add ecx, 0xfb95ee12
add eax, 0xfdcaf709
not eax
or eax, 0x305d4c3f
add eax, ecx
add eax, 0xcfa2b3c2
mov ecx, eax
xor ecx, 0xd39d15e
and eax, 0xd39d15e
lea eax, [ecx + eax*2]
imul eax, eax, 0x3f88ad03
add eax, 0xb36b308c
mov ecx, dword [esp + 0x3c]
cmp ecx, eax
jb 0x100543e0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x40], eax
mov edx, dword [esp + 0x40]
mov eax, edx
and eax, 0xb7eeeb99
lea ecx, [eax + edx]
mov esi, edx
or esi, 0xb7eeeb99
not edx
or edx, 0xb7eeeb99
add edx, esi
sub ecx, edx
mov edx, eax
not edx
add edx, ecx
add edx, 0x6fddd732
add ecx, 0x6fddd732
mov esi, edx
and esi, 0xfffffffe
add esi, edx
sub eax, ecx
or eax, 1
lea ecx, [esi + eax]
add eax, esi
add eax, 2
mov edx, eax
xor edx, 0xb7eeeb99
lea esi, [edx + edx*2]
sub ecx, esi
mov esi, eax
not esi
or eax, 0xb7eeeb99
add ecx, eax
add ecx, eax
add ecx, edx
add esi, esi
or esi, 0x902228cc
add ecx, esi
add ecx, 0x4811146b
imul edx, ecx, 0x3319c627
mov eax, edx
not eax
mov esi, edx
xor esi, 0xcf7e98f2
add edx, esi
imul ecx, ecx, 0x66338c4e
or ecx, 0x6102ce1a
add ecx, edx
add ecx, esi
add eax, eax
or eax, 0x9efd31e4
add eax, ecx
imul eax, eax, 0x3d3d4997
add eax, 0xf4f5265c
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
cmp eax, 0x1000
mov eax, 0xb66a4a0
mov ecx, 0xe8725881
jmp 0x10054964
cmp ecx, 0x45b8bc7f
je 0x10055593
cmp ecx, 0x58f2279c
jne 0x10053cf0
mov eax, dword [esp + 8]
mov edx, eax
mov edi, dword [esp + 0x6c]
and edx, edi
mov ecx, eax
not ecx
mov esi, edi
and esi, ecx
lea edx, [edx + esi*2]
mov esi, eax
xor esi, edi
add esi, esi
sub esi, edx
add esi, dword [esp + 0x64]
mov edx, edi
or edx, ecx
add edx, esi
mov esi, edx
or esi, eax
sub esi, eax
add esi, 1
mov edi, edx
sub edi, esi
sub esi, edx
lea ebx, [esi + edi*2]
lea edx, [esi + edi*2]
add edx, 1
mov esi, edx
xor esi, 0x2512bb9a
lea edi, [esi + ebx*2]
add edi, 2
mov esi, edx
or esi, 0x2512bb9a
sub edi, esi
and edx, 0xdaed4465
mov esi, edx
not esi
add esi, edi
add esi, 0x2512bb9c
add edi, 0x2512bb9c
sub edx, edi
and edx, eax
add edx, edx
mov edi, esi
sub edi, edx
lea edi, [edi + eax*2]
mov edx, esi
or edx, ecx
sub edi, edx
and esi, eax
mov edx, esi
not edx
add edx, edi
mov ebx, edx
mov ebp, edx
or ebp, 0x2512bb9a
add ebp, edx
not edx
xor ebx, 0x2512bb9a
sub ebx, ebp
sub edi, esi
add edi, ebx
or edx, 0x2512bb9a
add edx, edi
mov ebx, dword [esp + 0x44]
sub edx, ebx
lea esi, [eax + ecx*2]
mov dword [esp + 4], esi
lea eax, [eax + ecx*2]
add eax, 1
mov ecx, eax
and ecx, ebx
mov edi, eax
xor edi, ebx
mov dword [esp + 0x38], eax
mov esi, dword [esp + 0x68]
mov ebp, dword [esp + 4]
add ebp, esi
add ebp, 1
add ebp, edi
or eax, ebx
add eax, eax
sub ebp, eax
lea eax, [edi + ebp]
mov dword [esp + 0x30], eax
lea eax, [edi + ebp]
add eax, 1
mov dword [esp + 0x34], eax
not edi
add edi, ecx
mov esi, dword [esp + 0x70]
mov eax, dword [esp + 0x38]
or eax, esi
sub edi, eax
lea eax, [edx + 0x2512bb9b]
add edi, dword [esp + 4]
not ecx
lea ebp, [edi + ecx]
mov dword [esp + 4], ebp
add ecx, edi
add ecx, 2
mov edi, dword [esp + 0x30]
add esi, edi
add esi, 1
mov edi, ebx
sub edi, dword [esp + 0x34]
mov ebp, ecx
xor ebp, esi
or edi, ecx
add edi, ebp
mov ebp, ecx
or ebp, esi
mov ebx, dword [esp + 4]
add ebx, ebp
add ebx, 2
sub edi, ebx
and ecx, esi
lea esi, [ecx + edi]
add esi, 1
mov ecx, esi
not ecx
and ecx, eax
lea edx, [edx + ecx*2]
add edx, 0x2512bb9b
add edx, esi
mov ecx, eax
xor ecx, esi
mov edi, ecx
sub edi, edx
not ecx
add ecx, edi
not eax
or eax, esi
add eax, eax
sub ecx, eax
lea eax, [ecx - 0x226d48a9]
mov edx, eax
or edx, 0xd3f37e09
add edx, ecx
mov ecx, eax
xor ecx, 0x2c0c81f6
add ecx, edx
or eax, 0x2c0c81f6
sub ecx, eax
add ecx, 0x2c0c81f7
mov dword [esp + 0x50], ecx
mov eax, dword [esp + 0x60]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x54]
mov eax, dword [eax]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x50]
mov esi, eax
mov ecx, eax
mov ebx, eax
mov edx, eax
mov ebp, eax
mov edi, eax
or edi, 0xd0163ca4
sub esi, edi
xor ecx, 0xd0163ca4
add ecx, esi
lea esi, [eax + eax]
add edi, edi
sub ecx, edi
and ebx, 0xd0163ca4
mov edi, ebx
xor edi, 0xd0163ca4
add edi, ebx
not ebp
mov ebx, eax
mov dword [esp + 4], eax
lea eax, [eax + ebp*2]
add eax, 1
lea eax, [eax + ebx*2]
add eax, 2
xor edx, 0x2fe9c35b
add edx, edi
mov edi, esi
or edi, 0x1e
mov dword [esp + 0x7c], edi
lea eax, [eax + ebp*2]
mov dword [esp + 0x38], eax
mov ebx, esi
xor esi, 0xffffffe0
add esi, edi
lea eax, [esi + ebp]
add eax, 0xfffffff3
or eax, ebp
mov dword [esp + 0x34], eax
or ebp, 0xd0163ca4
sub edx, ebp
add ecx, 0xd0163ca3
mov eax, ecx
or eax, edx
add eax, edx
mov ebp, edx
not ebp
or ebp, ecx
add ebp, eax
and edx, ecx
not edx
lea eax, [edx + ebp]
add eax, 2
mov dword [esp + 0x74], eax
mov esi, dword [esp + 4]
mov ecx, esi
and ecx, 0xf
or ebx, 0xffffffe0
add ebx, ecx
mov ebp, esi
or ebp, 0xfffffff0
sub ebx, ebp
mov edx, ecx
xor edx, 0xf
lea eax, [edx + edx*2]
mov edx, esi
xor edx, 0xf
mov dword [esp + 0x30], edx
add eax, edx
sub eax, edi
add eax, ebp
mov edx, ecx
not edx
mov dword [esp + 0x78], edx
lea edi, [ebx + edx]
add edi, 0x11
add ebx, 0x11
mov edx, ecx
sub edx, ebx
lea ebx, [eax + esi*2]
add ebx, 2
lea eax, [eax + esi*2]
add eax, 1
mov esi, edi
xor esi, eax
add esi, ebx
and edx, eax
or edi, eax
lea eax, [edx + edi*2]
sub esi, eax
mov eax, dword [esp + 0x74]
xor eax, 0x2fe9c354
lea edi, [eax + eax*2]
mov eax, edi
neg eax
lea ebx, [esi + esi]
add ebx, 0xfffffffe
mov edx, eax
xor edx, ebx
lea ebp, [edx + edx*2]
lea esi, [esi*2 - 2]
add esi, ebp
mov ebp, eax
or ebp, ebx
sub edi, ebp
add edi, esi
not ebp
add ebp, edi
not edx
add edx, ebp
and eax, ebx
lea esi, [edx + eax*2]
lea eax, [edx + eax*2]
add eax, 2
mov edi, dword [esp + 4]
mov edx, edi
xor edx, 0xfffffff0
add ecx, edx
add ecx, dword [esp + 0x7c]
add ecx, edx
mov edx, dword [esp + 0x78]
lea edx, [ecx + edx*2]
add edx, 4
or edx, dword [esp + 0x30]
mov ecx, eax
and ecx, edx
add ecx, esi
add ecx, 2
not edx
lea ecx, [ecx + edx*2]
or edx, eax
sub ecx, edx
mov esi, dword [esp + 0x38]
mov eax, esi
and eax, 0x3d6e28a5
mov edx, eax
xor edx, 0x3d6e28a5
add edx, eax
mov eax, esi
mov ebx, esi
not eax
and eax, 0xc291d75a
add eax, edx
mov esi, edi
mov edx, dword [esp + 0x34]
add edx, edi
add edx, 1
add eax, ebx
add eax, 1
or esi, 0xc291d75a
xor edi, 0x3d6e28a5
add esi, edi
add esi, 1
or esi, eax
mov eax, esi
and eax, 0xb4a508be
mov edi, eax
xor edi, 0xcbdbf755
mov ebx, esi
xor ebx, 0x7634dfeb
add ebx, edi
mov edi, esi
xor edi, 0x89cb2014
add edi, ebx
mov ebx, eax
xor ebx, 0x80810014
xor esi, 0x3d6e28aa
add esi, edi
add esi, 2
xor eax, ebx
xor eax, 0x7f7effeb
and eax, esi
xor eax, ebx
mov edi, ebx
xor edi, esi
sub eax, edi
or ebx, esi
add ebx, eax
mov eax, ebx
xor eax, 0x4b5af741
xor ebx, 0xb4a508be
mov esi, ecx
and esi, ebx
lea esi, [esi + ecx*2]
add esi, eax
or ebx, ecx
or ecx, eax
not ecx
lea ecx, [esi + ecx*2]
add ecx, eax
not ecx
add ecx, ebx
mov eax, edx
not eax
lea eax, [edx + eax*2]
add eax, ecx
add eax, eax
sub eax, ecx
imul eax, eax, 0xdd9ef805
lea ecx, [eax - 0x44c20ff6]
not ecx
mov edx, ecx
and edx, 0x8fd39e25
add edx, eax
add edx, 0xbb3df00a
and ecx, 0x702c61da
add ecx, edx
add eax, ecx
add eax, 0xbb3df00a
imul eax, eax, 0xd588eb33
lea ecx, [eax + 0x1f8c72d4]
mov edx, ecx
and edx, 0xb5fc785f
lea edx, [edx + edx*2]
add edx, eax
add edx, 0x1f8c72d4
mov esi, ecx
xor esi, 0xb5fc785f
add esi, edx
or ecx, 0x4a0387a0
sub ecx, esi
add eax, ecx
add eax, 0xd588eb34
mov dword [esp + 0x3c], eax
cmp dword [esp + 0x3c], 0
mov eax, 0xde4e3b6
mov ecx, 0x37ab6469
cmovs eax, ecx
jmp 0x10054ac8
cmp ecx, 0xbcf0f71e
je 0x100555ae
cmp ecx, 0xbfb243ac
jne 0x10053cf0
mov eax, dword [esp + 0x1c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x50]
mov dword [eax], ecx
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x18]
mov dword [eax], ecx
mov eax, dword [esp + 0x14]
cmp eax, 0x10
mov eax, 0x83c62f1b
mov ecx, 0x650b7d7a
cmovae eax, ecx
mov ecx, 0x39be5875
jmp 0x10053cf0
cmp ecx, 0x29c54e78
je 0x100555c9
cmp ecx, 0x2c837460
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x5eee1bc0
mov ecx, 0x8664cd6e
mov edx, 0xa9914c3c
cmovl ecx, edx
jmp 0x10053cf0
cmp ecx, 0xef90e121
je 0x100555e4
cmp ecx, 0xf101b603
jne 0x10053cf0
mov ecx, 0xaf6fde5d
jmp 0x10053cf0
cmp ecx, 0x783f8ed3
je 0x100555ff
cmp ecx, 0x7a537333
jne 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x650b7d7a
mov ecx, 0xf101b603
mov edx, 0x9757a1fa
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0x9abad231
jne 0x1005561b
mov eax, dword [esp + 0x14]
shr eax, 1
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x58]
mov ecx, eax
xor ecx, 0x5c4c7443
sub ecx, eax
sub ecx, eax
mov edx, eax
xor edx, 0x80000000
add edx, ecx
xor eax, 0xa3b38bbc
add eax, edx
imul ecx, eax, 0x4064b1c3
mov edx, ecx
not edx
mov esi, ecx
and esi, 0x5e305d19
imul eax, eax, 0x80c96386
add eax, esi
and edx, 0x5e305d19
lea eax, [eax + edx*2]
or ecx, 0x5e305d19
sub eax, ecx
imul eax, eax, 0x605cc6eb
add eax, 0x8ac823b9
mov ecx, eax
or ecx, 0x61f75ddd
or eax, 0x9e08a222
lea edx, [ecx + eax]
add eax, ecx
add eax, 0x61f75dde
xor eax, 0x3e2aefab
lea ecx, [edx + edx]
add ecx, 0xc3eebbbc
or ecx, 0x83aa20a8
lea edx, [eax + ecx]
add eax, ecx
add eax, 1
mov ecx, eax
and ecx, 0x61f75ddd
add ecx, edx
add ecx, 1
not eax
add ecx, eax
or eax, 0x61f75ddd
sub ecx, eax
add ecx, 0x9e08a223
cmp ecx, dword [esp + 0x14]
mov eax, 0xd2d11db5
mov ecx, 0x37ab6469
cmovb eax, ecx
mov ecx, 0x39be5875
mov dword [esp + 4], 0x7fffffff
jmp 0x10053cf0
cmp ecx, 0x96a7a4e
jne 0x10055628
mov ecx, dword [esp]
cmp ecx, 0xd2d11db5
mov ecx, 0xf101b603
mov edx, 0xe804df41
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0xc10070aa
jne 0x10055636
mov ecx, dword [esp]
cmp ecx, 0xb66a4a0
mov ecx, 0xf101b603
mov edx, 0x6c04b6a3
cmove ecx, edx
jmp 0x10053cf0
cmp ecx, 0x5a615f11
jne 0x10055644
mov ecx, dword [esp]
cmp ecx, 0xfaf16f77
mov ecx, 0x2464ba5e
mov edx, 0xfffba44a
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xde4e3b6
mov ecx, 0xf101b603
mov edx, 0x9abad231
cmove ecx, edx
jmp 0x10053cf0
mov ecx, 0x39be5875
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xc81cc663
mov ecx, 0x29c54e78
mov edx, 0xff0682de
cmovl ecx, edx
jmp 0x10053cf0
mov ebp, dword [esp + 4]
mov eax, ebp
and eax, 0x866dd715
mov ecx, ebp
add ecx, ebp
or ecx, 0xcdbae2a
add ecx, eax
mov eax, ebp
xor eax, 0x799228ea
add eax, ecx
mov ecx, ebp
not ecx
or ecx, 0x799228ea
lea edx, [eax + ecx]
add eax, ecx
add eax, 0xf32451d7
mov ecx, eax
not ecx
mov esi, ecx
and esi, 0x24
add edx, esi
add edx, 0xf32451d7
and ecx, 0xffffffdb
add ecx, edx
add ecx, eax
imul ecx, ecx, 0xb14cd5a7
lea eax, [ecx - 0x39c08183]
mov edx, eax
or edx, 0x64957771
add edx, ecx
mov esi, eax
and esi, 0x9b6a888e
lea esi, [esi + esi*2]
add ecx, esi
add ecx, 0xc63f7e7d
xor eax, 0x9b6a888e
add eax, ecx
sub eax, edx
lea ecx, [eax - 0x61aa070c]
mov edx, ecx
and edx, 0xa67b5126
add eax, edx
add eax, 0x9e55f8f4
not ecx
add eax, ecx
or ecx, 0xa67b5126
sub eax, ecx
lea ecx, [eax - 0x5984aeda]
mov edx, ecx
not edx
mov esi, ecx
xor esi, 0x64957771
lea eax, [esi + eax*2]
add eax, 0x4cf6a24c
or ecx, 0x64957771
sub eax, ecx
or edx, 0x64957771
add edx, eax
imul eax, edx, 0x93297de9
lea ecx, [eax - 0x4e382155]
mov edx, ecx
or edx, 0x720d966a
add eax, edx
add eax, 0xb1c7deab
mov edx, ecx
xor edx, 0x8df26995
add edx, eax
mov eax, ecx
not eax
or eax, 0x720d966a
sub ecx, edx
add eax, ecx
add eax, 0x8df26996
push eax
call fcn.1005d172
add esp, 4
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x373efa2b
add edx, ecx
mov esi, eax
xor esi, 0x373efa2b
add esi, edx
mov edx, ecx
or edx, 0xc8c105d4
sub esi, edx
mov edx, eax
or edx, 0xc8c105d4
add esi, edx
add esi, 1
mov edx, eax
and edx, 0xc8c105d4
or edx, esi
mov edi, edx
xor edi, 0xc8c105d4
mov ebx, edx
and ebx, 0xffffffdc
xor ebx, 0xc8c105f7
add edx, edx
xor edx, 0x6e7df410
add edx, ebx
or esi, 0xffffffdc
sub edx, esi
add edx, 0xffffffdd
and edx, edi
mov esi, edx
neg esi
lea edi, [eax - 0xbf85b52]
add edx, 0xffffffff
and edx, edi
add edx, edx
lea ebx, [eax + eax]
add ebx, 0xe80f495c
sub ebx, edx
xor esi, edi
lea edx, [ebx + esi]
lea edi, [ebx + esi]
add edi, 0xae9f729b
mov ebx, edi
or ebx, 0x5d58e8da
add ebx, edx
mov esi, edi
xor esi, 0xa2a71725
add esi, ebx
or edi, 0xa2a71725
sub esi, edi
lea edi, [esi - 0x51608d65]
mov edx, ecx
and edx, 0xffffffdc
add edx, ecx
mov ebx, eax
and ebx, 0x23
add ebx, edx
mov edx, ecx
or edx, 0x23
sub edx, ebx
mov ebx, edi
and ebx, 0x43b1cf0b
add esi, ebx
add esi, 0xae9f729b
not edi
add esi, edi
or edi, 0x43b1cf0b
sub esi, edi
lea edi, [esi + edx]
add edi, 0xbc4e30f5
add esi, 0xbc4e30f5
mov ebx, esi
or ebx, edx
add ebx, edi
not edx
or edx, esi
add edx, ebx
not esi
add esi, edx
add esi, 2
mov edx, esi
or edx, 0x43b1cf0b
or esi, 0xbc4e30f4
add esi, edx
mov edx, 0xbc4e30f4
sub edx, esi
mov esi, ecx
and esi, 0xffb5cec
mov edi, eax
and edi, 0xffb5cec
add edi, edi
sub esi, edi
or ecx, 0xf004a313
sub esi, ecx
mov edi, eax
or edi, 0xf004a313
lea ecx, [esi + edi]
add ecx, 0xffb5cec
mov esi, eax
and esi, 0xf004a313
mov ebx, esi
xor ebx, 0xf004a313
lea ebx, [ebx + ebx*2]
add ebx, esi
add edi, edi
sub ebx, edi
mov esi, eax
or esi, 0xffb5cec
add esi, ebx
lea edi, [esi + eax*2]
lea esi, [esi + eax*2]
add esi, 1
mov ebx, ecx
xor ebx, esi
add ebx, edi
mov edi, ecx
not edi
and edi, esi
or ecx, esi
lea esi, [edi + ecx*2]
sub esi, ebx
lea edi, [esi - 1]
mov ecx, edi
and ecx, 0xf004a313
mov ebx, 0x10000000
sub ebx, esi
mov esi, edi
xor esi, 0xf004a313
add esi, ecx
or edi, 0xf004a313
or ebx, 0xf004a313
add ebx, edi
sub ebx, esi
lea esi, [ebx + ecx]
add ecx, ebx
add ecx, 0xffb5cee
lea edi, [edx + esi]
add edi, 0xffb5cee
mov ebx, edx
xor ebx, ecx
mov esi, ebx
sub esi, edi
mov edi, edx
or edi, ecx
add edi, edi
sub esi, edi
add esi, ebx
and edx, ecx
lea edi, [esi + edx*2]
mov ecx, 0x1743b871
sub ecx, edi
and ecx, 0x267a060c
add ecx, edi
lea edx, [esi + edx*2]
add edx, 0x28bc478e
or edx, 0x267a060c
add edx, edi
add edx, 0x28bc478e
sub ecx, edx
mov esi, 8
sub esi, ecx
sub esi, ecx
lea edx, [ecx + 0x51788f1b]
and esi, 0x3e
lea edi, [ecx + ecx]
add edi, 0xa2f11e36
xor edi, 0xffffffc0
add edi, esi
mov esi, edx
or edx, 0x1f
add edx, edi
not esi
lea ecx, [edx + ecx*2]
add esi, esi
or esi, 0xffffffc0
add ecx, esi
add ecx, 0xa2f11e3a
not ecx
imul ecx, ecx, 0xe465c5a9
lea edx, [ecx - 0x7ab48ef7]
mov esi, edx
xor esi, 0xbb59d51f
xor edx, 0x44a62ae0
add edx, esi
lea esi, [edx + ecx]
add ecx, edx
add ecx, 0x40a54629
mov edx, ecx
and edx, 0x854b7108
add edx, esi
add edx, 0x40a54629
mov esi, ecx
not esi
and esi, 0x7ab48ef7
add esi, edx
xor ecx, 0x854b7108
add ecx, esi
imul ecx, ecx, 0x674b5167
lea esi, [ecx + 0x2a89fdc8]
mov edx, esi
and edx, 0xb6a88e78
add ecx, edx
add ecx, 0x2a89fdc8
or esi, 0x49577187
sub esi, ecx
mov dword [esi + 0x6d511cee], eax
add esi, 0x6d511cf2
mov dword [esp + 0x1c], esi
mov ecx, 0x39be5875
mov eax, 0x6e74762c
mov dword [esp + 0x18], ebp
jmp 0x10053cf0
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
push dword [esp + 8]
push dword [esp + 0x30]
push dword [esp + 0x14]
call fcn.10063280
add esp, 0xc
mov eax, dword [esp + 8]
add eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x98]
push ecx
push dword [esp + 0x98]
push eax
call fcn.10063280
add esp, 0xc
mov ecx, dword [esp + 8]
lea edx, [ecx + ecx*2]
lea eax, [ecx + ecx]
add eax, 2
sub eax, edx
mov edx, ecx
not edx
lea esi, [edx + ecx*2]
sub esi, ecx
lea edi, [esi + edx]
add edi, 1
and edx, 0xbfd8ab60
mov ebx, ecx
and ebx, 0x4027549f
lea ebp, [ebx + ecx]
xor ebx, 0x4027549f
add ebx, ebp
mov ebp, ecx
or ebp, 0x4027549f
sub ebx, ebp
or ebx, edx
xor ebx, 0x4027549f
mov ebp, dword [esp + 0x98]
and ebx, ebp
add ebx, ebp
sub eax, ebx
add eax, 0xfffffffe
mov edx, ecx
and edx, ebp
mov ebx, ecx
xor ebx, ebp
lea ebp, [ebx + ebx]
sub ebp, ecx
not ebx
add ebx, ebp
add ebx, ecx
add ebx, 1
or ebx, edx
mov edx, ebx
not edx
lea edx, [edx + edx*2]
lea ebp, [edx + ebx*2]
lea ebx, [edx + ebx*2]
add ebx, 1
mov edx, eax
and edx, ebx
add ebp, ebp
sub edx, ebp
or eax, ebx
lea ebx, [edx + eax]
add esi, 1
mov ebp, ecx
sub ebp, esi
and ebp, 0x74533091
and edi, 0xf4533091
lea esi, [edi*2 - 0x74533091]
add esi, ebp
and ecx, 0x8baccf6e
or ecx, esi
mov esi, ecx
xor esi, 0x74533091
lea edi, [esi + esi]
add edi, 2
xor ecx, 0x8baccf6e
sub ecx, edi
add ecx, esi
add ecx, 1
add ecx, esi
add ecx, 1
mov esi, 2
sub esi, ebx
and esi, ecx
add esi, ebx
add esi, 0xfffffffd
add esi, ecx
add esi, ebx
add eax, edx
add eax, 0xfffffffd
or eax, ecx
sub eax, esi
imul ecx, eax, 0x14dd4f85
lea eax, [ecx + 0x3e97ee8f]
mov edx, eax
and edx, 0x562a322c
lea edx, [edx + edx*2]
lea esi, [ecx + edx]
add esi, 0x3e97ee8f
mov edx, eax
xor edx, 0x562a322c
add edx, esi
mov esi, eax
or esi, 0xa9d5cdd3
sub edx, esi
lea esi, [edx - 0x562a322c]
mov edi, eax
not edi
add edi, edx
add edi, 0xa9d5cdd4
mov ebx, edi
and ebx, 0x6d005169
add ebx, edi
add ecx, ebx
add ecx, 0x3e97ee8f
sub eax, esi
or eax, 0x6d005169
add eax, edx
add eax, 0xa9d5cdd4
sub ecx, eax
lea eax, [ecx + 0x6d005169]
mov edx, eax
not edx
mov esi, eax
xor esi, 0xa9d5cdd3
lea ecx, [esi + ecx*2]
add ecx, 0xda00a2d2
or eax, 0xa9d5cdd3
sub ecx, eax
or edx, 0xa9d5cdd3
add edx, ecx
imul ecx, edx, 0xedf1aeb3
lea eax, [ecx + 0x8eab1ef]
mov edx, eax
or edx, 0xb898b595
add ecx, edx
add ecx, 0x8eab1ef
mov edx, eax
xor edx, 0x47674a6a
add edx, ecx
mov ecx, eax
not ecx
or ecx, 0xb898b595
sub eax, edx
add eax, ecx
mov ecx, dword [esp + 0xc]
mov byte [ecx + eax + 0x47674a6b], 0
mov edx, dword [esp + 0x14]
mov ecx, edx
and ecx, 1
mov eax, edx
xor eax, 0xfffffffe
mov dword [esp + 0x24], eax
lea esi, [ecx + eax]
mov edi, edx
not edi
mov ebx, edi
or ebx, 0xfffffffe
lea ebp, [esi + ebx]
add ebx, esi
add ebx, 1
mov eax, ebx
xor eax, edx
add ebp, edx
add ebp, 1
lea esi, [eax + eax*2]
sub ebp, esi
mov esi, ebx
or esi, edx
add esi, ebp
add esi, eax
and ebx, edx
add ebx, ebx
sub esi, ebx
lea eax, [esi + edx]
mov ebx, 1
sub ebx, eax
and ebx, 1
add ebx, eax
add esi, edx
add esi, 0xca45c752
or esi, 1
add esi, eax
add esi, 0xca45c752
sub esi, ebx
mov eax, edi
and eax, 0xbd4c7114
or edi, 0xbd4c7114
add edi, eax
mov eax, edx
or eax, 0xbd4c7114
lea ebx, [edi + eax]
add edi, eax
add edi, 0x42b38eed
and edx, 0x42b38eeb
mov ebp, 0x3d4c7112
sub ebp, ebx
and ebp, edx
add ebp, ebp
mov eax, edi
xor eax, edx
add eax, eax
sub ebp, eax
mov eax, edi
or eax, edx
add eax, ebp
lea eax, [eax + ebx*2]
and edx, edi
not edx
lea edi, [eax + edx*2]
lea eax, [eax + edx*2]
add eax, 0x85671ddc
mov edx, eax
or edx, 0x42b38eea
mov ebx, eax
or eax, 0xbd4c7115
add eax, edx
xor ebx, 0xbd4c7115
sub ebx, eax
lea eax, [ebx + edi]
add eax, 0x85671ddc
add eax, esi
not ecx
add ecx, dword [esp + 0x24]
lea edx, [eax + ecx]
add eax, ecx
add eax, 0x9e722a88
mov ecx, eax
and ecx, 0xcd0246d5
add ecx, edx
add ecx, 0x9e722a88
or eax, 0x32fdb92a
sub ecx, eax
imul eax, ecx, 0x9cf384eb
imul ecx, ecx, 0x39e709d6
not eax
add eax, ecx
imul eax, eax, 0x971903c3
add eax, 0x4438e34
mov ecx, eax
and ecx, 0x92d5758e
or eax, 0x92d5758e
add eax, ecx
add eax, 1
mov dword [esp + 0x24], eax
cmp eax, 0x1000
mov eax, 0x68a4128c
mov ecx, 0xcf7976d6
cmovae eax, ecx
mov ecx, 0x39be5875
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x48], edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xf993b8ee
mov ecx, 0xe90da0c8
mov edx, 0x45b8bc7f
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x68a4128c
mov ecx, 0xd9ac44b6
mov edx, 0x7a537333
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x6e74762c
mov ecx, 0xf101b603
mov edx, 0xbfb243ac
cmove ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x37ab6469
mov ecx, 0x8833e327
mov edx, 0x667d591b
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x32b1455d
mov ecx, 0xf101b603
mov edx, 0xca8ea6c8
cmove ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xcf7976d6
mov ecx, 0xde869cba
mov edx, 0xef3029a2
cmovl ecx, edx
jmp 0x10053cf0
mov eax, dword [esp + 0x28]
cmp eax, 0xffffffdd
mov eax, 0x32b1455d
mov ecx, 0x37ab6469
cmovb eax, ecx
mov ecx, 0x39be5875
mov edx, dword [esp + 0x40]
mov dword [esp + 4], edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x604dd119
mov ecx, 0xf101b603
mov edx, 0x58f2279c
cmove ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xf993b8ee
mov ecx, 0xf101b603
mov edx, 0x783f8ed3
cmove ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xcf7976d6
mov ecx, 0xf101b603
mov edx, 0x256ab81d
cmove ecx, edx
jmp 0x10053cf0
cmp dword [esp + 0x28], 0
mov eax, 0x41febc04
mov ecx, 0x6e74762c
cmove eax, ecx
mov ecx, 0x39be5875
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0xffffffff
jmp 0x10053cf0
push dword [esp + 8]
push dword [esp + 0x24]
push dword [esp + 0x14]
call fcn.10063280
add esp, 0xc
mov eax, dword [esp + 8]
add eax, dword [esp + 0xc]
mov esi, dword [esp + 0x98]
push esi
push dword [esp + 0x98]
push eax
call fcn.10063280
add esp, 0xc
mov eax, dword [esp + 8]
mov ecx, eax
not ecx
and ecx, 0x6b778709
add ecx, eax
mov edx, eax
xor edx, 0x948878f6
add edx, ecx
or eax, 0x6b778709
lea ecx, [edx + eax]
add eax, edx
add eax, 1
mov edx, eax
and edx, 0x948878f7
add ecx, edx
add ecx, 1
mov edx, eax
not edx
or edx, 0x948878f7
sub eax, ecx
add eax, edx
add eax, 0x6b778709
not eax
add eax, esi
imul ecx, eax, 0xcaf3cc3
lea eax, [ecx - 0x215283c8]
mov edx, eax
and edx, 0x1503c0df
mov esi, 0x215283c7
sub esi, ecx
and esi, 0x6afc3f20
add esi, esi
sub edx, esi
xor eax, 0xeafc3f20
add eax, edx
mov edx, 0x15283c7
sub edx, ecx
or edx, 0xeafc3f20
lea ecx, [eax + edx]
add eax, edx
add eax, 0xd5f87e41
mov edx, eax
not edx
mov esi, edx
and esi, 0xdead7c38
add ecx, esi
add ecx, 0xd5f87e41
and edx, 0x215283c7
add edx, ecx
add edx, eax
imul eax, edx, 0x64d053eb
mov ecx, dword [esp + 0xc]
mov byte [eax + ecx - 0x593c2ddd], 0
mov ecx, 0x39be5875
mov eax, 0xfaf16f77
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x650b7d7a
mov ecx, 0xcd87aad2
mov edx, 0xbcf0f71e
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x68a4128c
mov ecx, 0xf101b603
mov edx, 0xef30a036
cmove ecx, edx
jmp 0x10053cf0
push dword [esp + 0x28]
call fcn.1005d172
add esp, 4
mov dword [esp + 0x1c], eax
mov ecx, 0x39be5875
mov eax, 0x6e74762c
mov edx, dword [esp + 0x40]
mov dword [esp + 0x18], edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x6e74762c
mov ecx, 0x641aea33
mov edx, 0xf3090096
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xd2d11db5
mov ecx, 0x96a7a4e
mov edx, 0x69b89e64
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xe8725881
mov ecx, 0xf101b603
mov edx, 0x22da9a9e
cmove ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x604dd119
mov ecx, 0xe8cedd00
mov edx, 0xef90e121
cmovl ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0xc81cc663
mov ecx, 0xf101b603
mov edx, 0x5d3fbb90
cmove ecx, edx
jmp 0x10053cf0
mov ecx, dword [esp]
cmp ecx, 0x5eee1bc0
mov ecx, 0xf101b603
mov edx, 0x16d38389
cmove ecx, edx
jmp 0x10053cf0
cmp byte [esp + 0x13], 0
mov eax, 0x604dd119
mov ecx, 0x5eee1bc0
cmovne eax, ecx
mov ecx, 0x39be5875
jmp 0x10053cf0
cmp ecx, 0x9bc08ee0
je 0x10055655
jmp 0x10053cf0
cmp ecx, 0x16d38389
jne 0x10053cf0
jmp 0x1005566a
cmp ecx, 0xca8ea6c8
jne 0x10053cf0
jmp 0x1005566f
cmp ecx, 0x5d3fbb90
jne 0x10053cf0
call fcn.1005f11d
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x20]
mov dword [eax], ecx
add esp, 0x80
pop esi
pop edi
pop ebx
pop ebp
ret
call fcn.10031490
call fcn.10039b50
int3