Function at 0x411350
Capabilities:
Authenticate hmac
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
add ebp, 6
lea ebp, [eax + 0x68]
inc ebp
mov ebp, dword [section..data]
sub ebp, dword [section..data]
shl ebp, 7
add ebp, ebx
nop
sub ebp, 0x5729
inc ebp
xor ebp, edx
cmp esi, edi
mov ebp, dword [section..data]
lea ebp, [ebx + eax*2 + 0x16a3]
add ebp, 0x47ec
sub ebp, 0x6860
neg ebp
sbb ebp, esi
sub ebp, 0xffffffc5
dec ebp
sub ebp, 0x25e42120
cmp dword [section..data], 0x40b2f840
mov ebp, dword [section..data]
lea ebp, [ebp*8]
neg ebp
sub ebp, ecx
mov ebp, edx
lea ebp, [esi + ecx*4 + 6]
not ebp
sub ebp, 0xffffff8f
mov ebp, ebp
shr ebp, 0x3c
xor ebp, ecx
add ebp, edi
cmp esi, 4
lea ebp, [esi*8 - 0x49efbf03]
sub ebp, 0x3c
inc ebp
xor ebp, eax
and ebp, edi
mov ebp, dword [section..data]
xor ebp, ebx
inc ebp
add ebp, eax
test edi, eax
lea ebp, [ecx + edx*8 - 0x5cb4]
movsx ebp, bl
mov ebp, esp
shr ebp, 5
xor ebp, esi
cmp edx, dword [section..data]
mov ebp, dword [section..data]
movzx ebp, dl
xor ebp, edx
cmp dword [section..data], ebx
mov ebp, dword [section..data]
or ebp, ebx
sub ebp, 0xffffef90
imul ebp, edx, 0x89db1fb
mov ebp, dword [section..data]
sbb ebp, edi
sub ebp, 0xed36474f
sbb ebp, eax
mov ebp, dword [section..data]
add ebp, esp
adc ebp, edx
sub ebp, 0x67cc980e
sbb ebp, edx
sar ebp, 4
lea ebp, [edi + esi*4 - 0x1abf]
mov ebp, dword [section..data]
add ebp, 0xffffffbe
mov ebp, dword [section..data]
xor ebp, edi
mov ebp, dword [section..data]
nop
sub ebp, 0xffffb522
inc ebp
mov ebp, edi
and ebp, 0x3d
mov ebp, eax
add ebp, 0x6e927e71
mov ebp, ecx
adc ebp, edx
mov ebp, dword [section..data]
sub ebp, 0
mov ebp, dword [section..data]
lea ebp, [ecx + 0x63f92d1b]
add ebp, 0x5a18de32
sub ebp, 3
mov ebp, ebx
cmp ebx, edi
add ebp, 0xffffdb11
mov ebp, esp
lea ebp, [3]
movzx ebp, byte [section..data]
shl ebp, 0x37
sub ebp, 0xffffff9f
lea ebp, [edi + edi*8 - 0x7658c8]
adc ebp, edx
dec ebp
mov ebp, dword [section..data]
shr ebp, 0x99
mov ebp, dword [section..data]
movzx ebp, si
inc ebp
xor ebp, esp
mov ebp, ebx
and ebp, 0x74
lea ebp, [ecx + ebx*4 - 0xe554546]
mov ebp, eax
shl ebp, cl
sub ebp, ecx
xor ebp, ebx
neg ebp
mov ebp, dword [section..data]
sbb ebp, esi
and ebp, 0xe4d61f9e
add ebp, 0xffffff84
lea ebp, [eax + edx*8 + 0x31]
mov ebp, dword [section..data]
imul ebp, esi
add ebp, 0x93dac08d
lea ebp, [ecx + ecx - 0x6b4a7ce5]
mov ebp, dword [section..data]
sar ebp, 0x8a
dec ebp
cmp ebx, eax
mov ebp, dword [section..data]
sub ebp, 0x6c
and ebp, 0x204a
sar ebp, 0x40
mov ebp, dword [section..data]
movzx ebp, word [section..data]
cmp ecx, dword [section..data]
mov ebp, dword [section..data]
cmp cl, dl
lea ebp, [edx + edi*4]
lea ebp, [0x4d712d89]
not ebp
sbb ebp, eax
imul ebp, ebx
sub ebp, 0x6a2f
shr ebp, 0x51
mov ebp, dword [section..data]
lea ebp, [esp + ebx*4 + 6]
shr ebp, 7
inc ebp
mov ebp, ebp
xor ebp, edi
inc ebp
mov ebp, dword [section..data]
xor ebp, ebx
shr ebp, cl
xor ebp, ebx
add ebp, 0x2f33
adc ebp, 0xdef
mov ebp, dword [section..data]
shr ebp, 0xbf
and ebp, esi
shr ebp, 0xfd
test esi, edi
mov ebp, dword [section..data]
sbb ebp, ecx
imul ebp, ebp
cmp edx, edx
mov ebp, ebp
inc ebp
and ebp, 0xfffffffe
shr ebp, 8
add ebp, 0xffffff95
mov ebp, dword [section..data]
adc ebp, 0xe3c48bee
mov ebp, dword [section..data]
shl ebp, 1
add ebp, ecx
mov ebp, dword [section..data]
mov ebp, esi
lea ebp, [ebx + edx*4]
xor ebp, esi
add ebp, 4
mov ebp, dword [section..data]
adc ebp, 0x7baad6bc
nop
sbb ebp, ecx
imul ebp, ecx
add ebp, 7
lea ebp, [ecx - 0x66]
mov ebp, 0xfffffff3
add ebp, ecx
or ebp, 0
lea ebp, [ecx + edi*2 - 0x48]
test eax, esp
shr ebp, 0xfc
and ebp, 0xffff8c14
inc ebp
xor ebp, eax
inc ebp
mov ebp, ebx
neg ebp
mov ebp, dword [section..data]
neg ebp
sbb ebp, ebp
mov bp, word [section..data]
sub ebp, 0xffffff9c
lea ebp, [edi*4 + 0x15]
mov ebp, ebx
add ebp, ecx
sub ebp, 0xfffffff9
shl ebp, 0x6c
xor ebp, edx
add ebp, 0xffffff83
cmp dword [section..data], esi
mov ebp, eax
dec ebp
mov ebp, esp
lea ebp, [ecx + ecx - 0x7f]
adc ebp, 0x1a
add ebp, 0x896d4ecb
mov ebp, dword [section..data]
imul ebp, dword [section..data]
shl ebp, 1
mov ebp, edi
lea ebp, [0xffffffcd]
add ebp, edx
cmp dword [section..data], 0xffffffd1
mov ebp, dword [section..data]
lea ebp, [edx + 0x41]
mov ebp, dword [section..data]
sbb ebp, esi
sub ebp, edx
neg ebp
mov ebp, dword [section..data]
sbb ebp, ecx
imul ebp, ebx, 0xffffffa0
sub ebp, dword [section..data]
inc ebp
neg ebp
sbb ebp, edx
mov ebp, 0xe41759bb
inc ebp
add ebp, 0xfffffffe
xor ebp, edx
sub ebp, 0xab7f45e7
mov ebp, dword [section..data]
imul ebp, esp, 0xfffffe88
dec ebp
mov ebp, dword [section..data]
add ebp, 0x6006ed01
cmp ebp, ebx
sbb ebp, esi
dec ebp
mov ebp, ebp
and ebp, 0xffffb5ca
mov ebp, dword [section..data]
lea ebp, [ebx + edx*2 - 0x4a]
add ebp, 4
xor ebp, ecx
sub ebp, dword [section..data]
inc ebp
movzx ebp, word [section..data]
mov ebp, dword [section..data]
add ebp, ebp
sub ebp, dword [section..data]
lea ebp, [edi + edx*8 + 2]
cmp edi, 0x6ccfc295
lea ebp, [esp + ebx*4]
sub ebp, esp
mov ebp, dword [section..data]
shr ebp, 0xfa
mov ebp, edi
lea ebp, [ebp*8 - 0x6e09f2e7]
add ebp, 1
lea ebp, [ecx]
mov ebp, edi
dec ebp
imul ebp, esp
test esp, ecx
sbb ebp, edx
mov ebp, esp
nop
cmp dword [section..data], 0
je 0x411fcf
call fcn.0040fe90
and al, 0x1b
lea eax, [esp + esi*4 - 7]
or ecx, eax
xor ecx, ebx
cmp ecx, 7
mov dword [section..data], eax
setge al
adc eax, edi
mov eax, dword [section..data]
shl eax, 0xd4
add ecx, ebx
xor eax, esp
shr ecx, 6
adc eax, edx
mov ecx, dword [section..data]
sub ecx, 0x39
inc ecx
cmp ecx, ebx
lea eax, [ebx + edi*8 + 0x4c61121a]
mov eax, eax
xor ecx, ebx
mov eax, eax
add ecx, esp
mov ecx, dword [ebp + 0x10]
imul ecx, dword [section..data]
inc eax
shr eax, 2
dec eax
test ecx, edi
lea ecx, [edi + ebx*4 + 0x1f]
mov dword [section..data], edi
lea eax, [ebp*4 - 0x7dc7b48]
add eax, eax
sub ecx, ebp
dec ecx
test edx, esp
mov dword [section..data], ecx
add ecx, 0x7d
mov ecx, dword [ebp + 0x10]
lea eax, [edx + ecx*8 - 3]
seta al
adc ecx, ecx
dec ecx
cmp edx, 0xc42
mov ecx, ebp
and ecx, 0x62b2
mov al, 0x7b
lea ecx, [edx + ecx*8 + 0x47117dd5]
mov eax, dword [section..data]
sub eax, 0xfffffff5
shl ecx, 0x40
add ecx, 0x96bd997e
sete byte [section..data]
sub ecx, dword [ebp + 0x10]
cmp esp, 0x24eb
mov dword [section..data], 0xffffffd2
lea ecx, [edx + edi*8 + 0x7ae6]
mov dword [section..data], edx
adc ecx, ebp
add eax, ebx
lea eax, [edi + edx*2 + 0x4296]
cmp edi, eax
mov eax, dword [section..data]
sbb eax, edx
xor eax, edi
sub eax, 0x50
mov eax, dword [ebp + 0x10]
and dword [section..data], 0x49
xor eax, ebx
shr ecx, 0xae
setl cl
cmp dword [section..data], 0x4c
lea ecx, [esi + esi + 0x6b]
movsx eax, cl
mov dword [section..data], 0x922ecd24
xor ecx, esp
mov dword [section..data], esi
inc ecx
mov dword [section..data], 0xffff8a25
adc ecx, esp
add ecx, 0xfffffffc
nop
sbb eax, eax
mov dword [section..data], esi
lea eax, [ebp + esi*2 + 0x16]
mov word [section..data], sp
adc ecx, 0x9a9b848f
add dword [section..data], esi
sub eax, 0xda1f0fbb
mov dword [section..data], esi
xor ecx, ebp
mov byte [section..data], dl
inc ecx
cmp edx, 7
setne al
mov dword [section..data], edi
dec eax
sub ecx, 7
test ebp, edi
sete byte [section..data]
imul ecx, ebx, 0xffffc357
movzx ecx, al
mov eax, dword [ebp + 0x10]
sar eax, 0xb1
and ecx, 0xaa6376d5
inc eax
xor eax, edi
mov dword [section..data], esp
xor ecx, edi
test ecx, esp
setge cl
dec eax
cmp al, byte [ebp + 0x10]
lea eax, [ebp + ebp - 0x5d]
mov ecx, dword [section..data]
imul ecx, edx
xor eax, esp
sub ecx, 0x69bf0f58
sar ecx, 0
and dword [section..data], 0xcdb642f4
add eax, 0x5546
mov dword [section..data], 0xffffecef
or dword [section..data], eax
xor ecx, esi
mov dword [section..data], 3
lea ecx, [ecx + edx*8 - 0x6a6d5e54]
dec eax
inc eax
mov ecx, dword [section..data]
add ecx, esp
cmp byte [section..data], cl
lea eax, [esi + edx*8]
xor ecx, edi
mov eax, ebp
xor ecx, eax
mov dword [section..data], esp
inc eax
mov eax, ebx
shl eax, 0
add al, byte [section..data]
adc ecx, ebp
mov ecx, esp
inc eax
shr ecx, cl
dec ecx
inc dword [section..data]
add eax, dword [ebp + 0x10]
and eax, 0x2e20e7da
cmp edi, ebp
lea ecx, [eax + ecx*2]
cmp byte [section..data], 0xf9
mov dword [section..data], 0x27bb
add ecx, 0x498d1115
mov eax, dword [section..data]
shl eax, 0xa1
add ecx, edi
xor eax, eax
sub eax, 0xd3dee58e
shl eax, 0xfc
xor eax, esp
add byte [section..data], al
adc eax, edx
dec dword [section..data]
cmp dword [ebp + 0x10], 0xfffffffd
setne al
mov dword [section..data], 0xfffffffa
add eax, dword [section..data]
lea ecx, [esi + ecx*8 + 4]
sub ecx, dword [ebp + 0x10]
dec ecx
and dword [section..data], 0xffffffb3
add ecx, 0xffffff84
and ecx, 0x2d3de713
sub eax, 0xfffffffa
xor ecx, edi
mov eax, esi
dec ecx
test edi, edx
setne al
movzx ecx, word [ebp + 0x10]
mov dword [section..data], edi
shr eax, 0xfe
mov ecx, dword [ebp + 0x10]
and ecx, 0x2546
shr ecx, 0x55
and ecx, 4
xor eax, ebp
inc ecx
add eax, 0x22
mov ecx, dword [section..data]
xor eax, eax
dec ecx
inc eax
add ax, 0x15da
mov ax, cx
cmp ecx, eax
lea ecx, [eax + 0x3d3234c0]
inc eax
mov dword [section..data], ebp
add ecx, 0x706595bc
shr ecx, 0x65
xor ecx, edx
add ecx, 0xffffff86
xor ecx, esi
inc eax
cmp edx, ecx
neg eax
mov ecx, edx
adc eax, 0x3e
not ecx
add ecx, 0x722e8b6f
mov dword [section..data], esp
cmp esi, dword [ebp + 0x10]
lea eax, [0x2965ab8]
xor ecx, ebx
inc ecx
mov word [section..data], bx
xor eax, esp
dec ecx
inc ecx
and dword [section..data], esi
mov ecx, ebp
lea eax, [edi + edi - 0x1791]
shr eax, 0x64
add ecx, 0xfffffffd
and dword [section..data], 5
neg eax
sbb ecx, 0x72
mov dword [section..data], eax
movzx ecx, byte [ebp + 0x10]
mov cx, ax
xor ecx, eax
mov dword [section..data], eax
movzx ecx, byte [section..data]
inc ecx
xor ecx, ecx
inc dword [section..data]
and eax, 6
add ecx, 0xffffb23f
dec ecx
mov dword [section..data], esp
lea ecx, [edi]
add eax, edi
sub eax, 0xfffffffd
mov dword [section..data], esp
movzx eax, word [ebp + 0x10]
and dword [section..data], 0x406d8ff8
mov ecx, dword [ebp + 0x10]
shr ecx, 0xe3
xor eax, ecx
mov eax, ecx
xor ecx, ebp
inc eax
lea ecx, [ebp + eax*4]
sub ecx, 0x5e8d5dbf
mov eax, dword [ebp + 0x10]
inc eax
mov ecx, dword [ebp + 0x10]
add eax, eax
mov eax, esp
lea ecx, [edx + ebx*4 - 0x47]
shr ecx, cl
add eax, 0x1652a5e4
mov eax, ebp
and eax, 0x191a
add byte [section..data], al
and dword [section..data], 3
mov dword [section..data], esi
and dword [section..data], 0xd
mov ax, word [ebp + 0x10]
xor ecx, ebx
lea ecx, [edx + edx - 6]
inc ecx
mov ecx, dword [section..data]
xor cl, byte [section..data]
sub ecx, 0xa547cfc6
inc ecx
cmp byte [section..data], bl
lea eax, [edx - 0x524f]
mov dword [section..data], 0x406a
test ebx, edx
add eax, 0x56
cmp edi, 0x2c3a
sbb ecx, edx
mov dword [section..data], 0xfffffffa
add eax, 0x13a5d092
mov dword [section..data], ebx
lea eax, [ebx + ebx*2 - 0x5f59]
sub eax, dword [ebp + 0x10]
mov dword [section..data], 0x18
sbb eax, ecx
neg ecx
adc ecx, ebx
mov dword [section..data], ebp
xor eax, eax
lea ecx, [ebx + ebx]
cmp byte [ebp + 0x10], 0
or dword [section..data], ebx
setg cl
seta al
cmp edx, eax
mov ecx, dword [section..data]
setne cl
mov ecx, edx
xor ecx, esi
shr ecx, 0xff
movzx ecx, si
mov byte [section..data], 0xf7
sub dword [section..data], 0xa08c0e47
xor eax, esp
test edx, edi
lea ecx, [ecx + edi*2 + 0x1c]
setne cl
shl eax, 0x99
sub eax, 0x116b0f9c
seta cl
xor ecx, ecx
cmp ecx, ebp
sete cl
mov dword [section..data], 2
movzx ecx, word [ebp + 0x10]
mov ecx, dword [ebp + 0x10]
imul ecx, ebp
not eax
xor eax, esi
add ecx, 0x2776a9a1
adc ecx, 0xfffffffd
inc ecx
or eax, 0xffffff8c
mov ecx, eax
shl ecx, 0xff
add ecx, 0xfffffff9
lea eax, [esi + ebx*2 + 3]
mov ecx, ebp
shl ecx, 0x51
mov ecx, dword [section..data]
shr ecx, 4
nop
lea ecx, [ecx + ebp*8]
mov eax, dword [ebp + 0x10]
adc ecx, eax
add dword [section..data], ebp
xor ecx, ebp
inc eax
sub ecx, 0x17f33390
setg cl
neg eax
sbb eax, edi
xor ecx, eax
inc ecx
sub eax, edx
mov dword [section..data], edx
sbb eax, ebp
dec ecx
cmp esi, 0xffff9a54
lea eax, [ebp + ebp + 0x7d]
mov dword [section..data], ebx
lea ecx, [ebp + ecx*4 + 0x79f8]
mov dword [section..data], 0xfffffffa
cmp ebp, dword [section..data]
setne cl
mov dword [section..data], 0x1bfd
movzx eax, di
shl ecx, 0xab
lea eax, [0xbecce8ad]
adc eax, edx
add dword [section..data], eax
mov eax, edi
lea ecx, [esi - 0x6973]
sub ecx, 0xfffffffc
add eax, 0x8170ee28
mov ax, word [section..data]
add ecx, 0x6582f1f5
test ecx, edi
mov ecx, dword [section..data]
inc eax
lea eax, [edi*4 - 0x61]
setne al
dec eax
mov ecx, eax
imul ecx, eax, 0x896dccd7
sub ecx, 3
shl ecx, 0x24
mov ecx, dword [ebp + 0x10]
cmp ecx, dword [ebp + 0x10]
lea eax, [eax - 2]
sub eax, 0xfffffffc
mov ecx, 7
shr eax, cl
mov eax, dword [ebp + 0x10]
lea eax, [edx]
add eax, 0x10168420
lea eax, [edx]
mov ecx, esp
lea eax, [esp + eax*2]
mov eax, esp
adc eax, 4
dec eax
cmp dword [ebp + 0x10], 5
mov eax, dword [ebp + 0x10]
shl ecx, 0xfb
mov dword [section..data], ecx
add ecx, 0xfffffffc
xor ecx, esp
mov dword [section..data], ebx
sub eax, 0x6b50
add eax, 0x1d2b
cmp dword [section..data], esp
lea eax, [0]
shr ecx, cl
movzx eax, word [ebp + 0x10]
xor ecx, ecx
mov dword [section..data], ebp
inc dword [section..data]
inc dword [section..data]
cmp ecx, 0xffff9362
sete al
mov dword [section..data], eax
add eax, 0xffffddfb
mov ecx, dword [section..data]
xor ecx, ebp
dec eax
inc ecx
mov eax, dword [ebp + 0x10]
sub eax, eax
cmp cl, 0xe6
lea eax, [ebp*8 - 0x48]
cmp dword [section..data], 0x59
mov ecx, dword [ebp + 0x10]
setne al
imul eax, dword [section..data]
lea ecx, [ecx + esi*8]
add eax, esi
lea ecx, [ebx + ebp*2 - 0x5d967e02]
mov dword [section..data], esi
movzx ecx, sp
mov ecx, dword [ebp + 0x10]
cmp dword [section..data], 0xcf6c5fe8
lea eax, [ebp + edi*8 - 0x1788]
dec ecx
mov dword [section..data], ebx
shr eax, 0x62
mov cx, si
lea eax, [esi + edi*8 - 0x3fbb]
inc eax
cmp edx, 0xffffedfc
mov eax, edi
or byte [section..data], 0x92
or eax, ebx
sub eax, 0xfffffffe
inc eax
mov dword [section..data], ebx
neg eax
seta al
test ecx, edx
sbb ecx, esi
xor ecx, ebp
nop
sub ecx, 0xffffff8a
xor ecx, ebx
inc ecx
neg eax
add ecx, esp
adc ecx, 0x3f1
dec eax
mov eax, dword [section..data]
xor eax, esi
cmp edx, edx
lea eax, [esi + esi]
inc eax
mov eax, dword [ebp + 0x10]
and ecx, 0x50f
mov dword [section..data], 0x45
lea ecx, [esi + ecx*8]
movzx ecx, word [ebp + 0x10]
shl ecx, cl
mov al, byte [ebp + 0x10]
adc eax, esi
add eax, 0xffff9268
xor ecx, edx
shr ecx, 0x36
inc dword [section..data]
shr ecx, 0xfe
dec ecx
inc ecx
add eax, esp
inc eax
cmp eax, edi
setne cl
mov eax, dword [ebp + 0x10]
sub ecx, dword [ebp + 0x10]
add eax, 0x1c
lea eax, [ebx + ecx*2 - 0x17d0a03c]
mov ecx, edi
and eax, 0x1a13e10e
or dword [section..data], ebp
xor eax, esp
mov word [section..data], cx
inc eax
not ecx
add eax, 0x2a
lea ecx, [eax + edx*8 - 8]
shl eax, 0
cmp dword [section..data], ebp
setne al
mov ecx, dword [ebp + 0x10]
sar eax, 0xc6
lea ecx, [ebx + 2]
mov eax, dword [ebp + 0x10]
shl eax, 0xfd
sub eax, 0x33e99bdf
inc dword [section..data]
nop
xor al, 0x33
movzx eax, al
mov ecx, ecx
and dword [section..data], 0xffffd0df
mov ecx, dword [section..data]
sub ecx, 0x4ee96cdd
xor ecx, esp
inc eax
neg eax
cmp dword [section..data], esi
add ecx, 2
adc eax, ebx
mov dword [section..data], ecx
xor eax, edx
inc eax
lea ecx, [edx + ebx*2]
sub eax, 0x2761
inc eax
mov ecx, esi
adc eax, esi
not eax
add ecx, 0xfffff980
lea ecx, [edi + 3]
test ecx, ebx
mov eax, dword [ebp + 0x10]
sub eax, 0x78
mov ecx, ebp
lea ecx, [esi]
mov ecx, eax
add eax, 1
sub dword [section..data], esi
mov dword [section..data], eax
cmp ecx, 0x2fc0a150
sbb al, cl
neg eax
sbb eax, ebx
lea eax, [ebx + ecx*8 + 0x5d9c]
or eax, 0xffffe98d
xor ecx, ecx
inc dword [section..data]
add eax, 0x5c
lea eax, [ebp + edi*8 + 0x40545250]
cmp ebp, esi
mov cl, dl
add ecx, dword [ebp + 0x10]
lea ecx, [6]
setne cl
mov ecx, edi
add ecx, 0xffffc167
movzx eax, byte [ebp + 0x10]
shl eax, 0x38
add ecx, edx
mov byte [section..data], 0x57
cmp ecx, 0xffff9c8e
lea eax, [edx*8 + 0x42f7d9df]
add eax, 0xfffffff1
mov ecx, eax
xor ecx, ebp
sub eax, 5
dec eax
cmp ebp, ecx
lea eax, [0xfffff5da]
mov dword [section..data], 0
sbb eax, esi
and ecx, 7
setge al
add eax, eax
mov ecx, ebx
add ecx, esi
adc ecx, 0x65
add eax, 0xffff8408
lea ecx, [esi + esi + 0x25d1]
mov eax, dword [ebp + 0x10]
shl cl, 0xfd
mov ecx, dword [ebp + 0x10]
add eax, 0xbb542d2f
mov ecx, dword [ebp + 0x10]
lea ecx, [edx + ebx*2 - 4]
or ecx, ebx
add ecx, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x10]
lea ecx, [esp + 4]
mov eax, edi
add ecx, 0xfffffffa
sub eax, 0x74c6
neg ecx
imul eax, ebp
add cl, bl
mov ecx, dword [ebp + 0x10]
shr ecx, 4
xor eax, ecx
inc eax
mov eax, edi
neg ecx
shr eax, 0xfd
imul eax, ebx, 0x9fb7f840
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp + 0x10]
cmp ecx, ecx
sete cl
mov ecx, ecx
add ecx, 5
dec ecx
dec ecx
seta al
cmp dword [ebp + 0x10], 0xffffe885
cmp edx, 2
lea ecx, [edx + ebx*4]
sub ecx, edx
mov eax, 0x29
add ecx, 0x26
test esp, edx
lea ecx, [edi*4]
sub ecx, 0x42b2c26c
sub eax, 0xffffffba
mov eax, dword [ebp + 0x10]
lea eax, [0xffffffda]
mov ax, word [ebp + 0x10]
adc eax, 0x7045
add eax, edi
adc ecx, esp
mov ecx, ebp
sbb eax, esp
and ecx, eax
add eax, 0xffffffbd
shr eax, 7
and eax, 0xda294fbe
test word [ebp + 0x10], 6
mov ecx, edx
cmp esp, dword [ebp + 0x10]
lea eax, [ecx]
shl eax, 0xfe
not eax
add ecx, 1
xor eax, ebx
mov ecx, dword [ebp + 0x10]
sub ecx, 0x2ee4
inc eax
xor eax, eax
cmp esi, edx
mov eax, dword [ebp + 0x10]
lea ecx, [eax + ebx*8 - 3]
add al, 0xc3
sub eax, edi
setg al
lea ecx, [ebp*4 - 0x7bf2]
setne al
mov ecx, dword [ebp + 0x10]
test eax, esi
setg al
xor eax, edx
mov eax, dword [ebp + 0x10]
shl eax, 0xc4
add eax, ebx
mov eax, dword [ebp + 0x10]
sar eax, 0x4e
and eax, 0x6119
inc eax
add eax, ebp
sub eax, 6
inc eax
mov eax, dword [ebp + 0x10]
neg eax
movzx eax, word [ebp + 0x10]
mov eax, dword [ebp + 0x10]
add eax, ebp
mov eax, dword [ebp + 0x10]
cmp dword [ebp + 0x10], 0xffffefba
lea eax, [ecx + edx*2 - 0x6176aa0f]
sbb eax, esp
dec eax
mov eax, dword [ebp + 0x10]
shl eax, cl
sub eax, 0x72
xor eax, edx
mov eax, edx
imul eax, esi, 0
shl eax, 0xfe
cmp dword [ebp + 0x10], eax
seta al
xor eax, eax
inc eax
not eax
mov eax, dword [ebp + 0x10]
and eax, ebp
shl eax, cl
shr eax, 0x63
sub eax, esp
inc eax
mov eax, 0x2e6c72cf
shl eax, 1
add eax, 0xffff9dc7
sub eax, 0xffffffa0
cmp dword [ebp + 0x10], 0xffffab5d
lea eax, [edi - 0x74fc7425]
mov ax, sp
neg eax
nop
sbb eax, ebp
not eax
and eax, edi
add eax, dword [ebp + 0x10]
lea eax, [ebx + edx*4 - 0x4698]
mov eax, dword [ebp + 0x10]
inc eax
mov eax, dword [ebp + 0x10]
add eax, 0xd2955d61
lea eax, [eax + eax + 0x47f0ac1c]
test dl, bl
mov eax, dword [ebp + 0x10]
add eax, 0x3173
mov eax, ebp
lea eax, [esp - 0x74]
mov eax, dword [ebp + 0x10]
shl eax, 0xad
add eax, 0x15776df8
and eax, 0xb305096b
mov eax, esi
sub eax, 0
add eax, 0xa8fd15ff
add eax, 0xfffff2c5
lea eax, [edx*4 + 0x922ac46]
add eax, edx
lea eax, [edx + ebp*4 + 0x52ef]
cmp esi, edx
adc eax, 0x2c
not eax
add eax, 0xb9e8da10
xor eax, ebp
mov eax, dword [ebp + 0x10]
sub eax, 0xb49b614c
xor eax, esi
inc eax
cmp dword [ebp + 0x10], 0xd025cb39
lea eax, [0xfffffff9]
add eax, 0xffffffff
mov eax, dword [ebp + 0x10]
cmp eax, edx
mov al, byte [ebp + 0x10]
sete al
inc eax
and eax, 0xe5b62e21
test eax, ecx
mov eax, 0xf906af1
mov eax, ecx
sub eax, 0x80
nop
je 0x412988
sub eax, 0x40
je 0x412960
sub eax, 0x40
lea eax, [esp + ebp*8 - 0x4b]
mov eax, eax
nop
seta al
lea eax, [ebp + edi*4 + 0x2a]
mov eax, dword [ebp + 0x10]
not eax
lea eax, [eax + ebp*4 + 0x72]
setl al
mov eax, dword [ebp + 0x10]
setge al
lea eax, [edx + eax*4 - 0x3563526a]
setge al
movzx eax, word [ebp + 0x10]
je 0x412374
setne al
setne al
nop
inc eax
xor eax, ebp
add eax, 0x78
mov eax, ebp
xor eax, eax
inc eax
neg eax
dec eax
sub eax, edx
cmp dword [ebp + 0x10], 0xfffffffe
setne al
mov eax, dword [ebp + 0x10]
xor eax, ebp
inc eax
cmp bl, dl
mov eax, dword [ebp + 0x10]
cmp dword [ebp + 0x10], 0x74
sete al
inc eax
cmp ebp, edx
mov eax, ebp
add eax, esi
lea eax, [esi + ebx*2 - 0xba0]
cmp ax, bp
mov eax, eax
add eax, 0xfffffff9
lea eax, [esp + edx*8 - 0x35f8c3c8]
sub eax, 0x4fc7d6fa
xor eax, edx
mov eax, esp
lea eax, [ecx + edx*8 - 4]
add eax, 0x6cdd6916
sub eax, 0xffffd6f4
neg eax
neg eax
lea eax, [edi + ebp*2 - 0x7d]
mov eax, ebx
sub eax, 0x94c7ed21
dec eax
cmp dword [ebp + 0x10], edi
mov eax, ebp
movzx eax, word [ebp + 0x10]
mov eax, dword [ebp + 0x10]
imul eax, dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
lea eax, [eax + ebx*8 - 0x1a]
shl eax, 0x65
sbb eax, ecx
mov eax, dword [ebp + 0x10]
shl eax, 4
xor eax, edi
inc eax
mov eax, esp
neg eax
add eax, 0xad20c99a
adc eax, 1
dec eax
sub eax, 0xc01871df
xor eax, edx
cmp edi, edi
lea eax, [ebp + edi*8 + 0x33]
sub eax, 0x16
mov eax, dword [ebp + 0x10]
neg eax
mov eax, dword [ebp + 0x10]
lea eax, [edx]
sar eax, 0xfc
shr eax, 0xff
movzx eax, byte [ebp + 0x10]
mov eax, edi
xor eax, edi
shr eax, cl
xor eax, eax
inc eax
add eax, 0xfffffff9
mov ax, word [ebp + 0x10]
cmp edi, ebp
setne al
mov eax, dword [ebp + 0x10]
sub eax, 0xab057cf0
cmp eax, edi
lea eax, [ebp]
mov eax, dword [ebp + 0x10]
imul eax, esi, 0xffffeaca
add eax, 0x4b59143d
mov eax, dword [ebp + 0x10]
xor eax, ebx
cmp edx, edx
lea eax, [esi + edx*8]
or eax, 0xffff9dc4
mov eax, dword [ebp + 0x10]
setne al
mov eax, 1
test eax, ebp
test esp, esi
pop ebp
ret
mov edx, dword [ebp + 8]
sar eax, 1
add edx, 0x30
cdq
sub eax, 0xfffffffb
xor edx, ebx
inc eax
neg dl
mov edx, dword [ebp + 8]
neg eax
sbb eax, ebp
neg edx
sbb eax, ebp
mov eax, dword [ebp + 8]
sub edx, eax
xor edx, edi
neg eax
sbb edx, 0xffffff8f
mul ecx
mov eax, dword [ebp + 8]
neg eax
sbb eax, ebp
sbb eax, ebx
mov eax, esi
sub eax, esp
neg edx
add al, 0xc3
mov eax, dword [ebp + 8]
dec edx
mov edx, ecx
imul eax, dword [ebp + 8]
sub edx, 0xffffffff
lea edx, [esi*8 + 0x1d]
add edx, ecx
cmp dword [ebp + 8], edi
lea edx, [esp + 0x44062be0]
adc eax, 0xfd8052ef
mov eax, dword [ebp + 8]
and eax, 0xfffffffe
shr edx, 5
lea edx, [edx + eax*4]
cmp al, 0x49
mov eax, esi
mov eax, dword [ebp + 8]
sar eax, 0xaf
not edx
and edx, 0xbf2973f9
or eax, 0xffffd031
mov edx, eax
shr eax, 0xfd
movzx eax, byte [ebp + 8]
inc edx
xor edx, esi
add eax, edx
mov edx, eax
inc eax
xor eax, esi
add edx, dword [ebp + 8]
cmp eax, 0x48
setne al
mov edx, dword [ebp + 8]
shl eax, 6
setne dl
mov eax, dword [ebp + 8]
imul edx, ebp, 0
mov edx, dword [eax + 0x200]
lea edx, [ecx*8 - 0x3ad2]
mov edx, ecx
lea edx, [ebx + edi*8]
adc edx, esi
sub edx, ecx
xor edx, edi
mov dword [eax + 0x200], ebp
add edx, 0xd8bdd4a4
mov dword [eax + 0x200], esp
inc edx
sub edx, 6
sbb edx, edi
mov edx, esp
shr edx, cl
xor edx, ecx
add edx, 0xffff8444
mov dword [eax + 0x200], 0x27f9
shl edx, 0x28
xor edx, ecx
inc edx
mov edx, edi
sub edx, 0x33
mov dword [eax + 0x200], edi
inc edx
add edx, 0x48
mov dx, word [ebp + 8]
xor edx, ebp
lea edx, [eax*8 + 4]
mov dword [eax + 0x200], ecx
shl edx, 0x5e
sub edx, ecx
lea edx, [ebx + ecx*2 - 8]
sbb edx, 0
mov dword [eax + 0x200], esp
xor edx, edi
mov dword [eax + 0x200], 4
shr edx, 0x6c
and edx, 0xfc80fe63
mov edx, esi
xor edx, eax
seta dl
inc dword [eax + 0x200]
mov edx, edx
imul edx, ecx, 6
shl edx, cl
shr edx, 0xa2
xor edx, edx
add edx, 0xbb439628
lea edx, [ecx + ecx + 2]
add edx, esi
mov dword [eax + 0x200], edi
or dword [eax + 0x200], ebp
xor byte [eax + 0x200], cl
inc edx
xor edx, edx
inc edx
mov edx, dword [ebp + 8]
shl edx, 0x36
test edx, ebx
add edx, dword [ebp + 8]
lea edx, [edi + edx*4 + 0x737f]
shl edx, 0x99
mov dword [eax + 0x200], ebp
lea edx, [ecx + esi*8 + 0x7363dd6]
add edx, ebx
sub edx, 0x6c4b4ddb
setg dl
setl dl
cmp edx, 0xefa21cf2
mov edx, edx
setne dl
mov edx, dword [eax + 0x200]
add edx, 4
mov edx, eax
shl edx, 0xfb
setne dl
sub edx, 0xad71cbd5
shr edx, cl
and edx, esp
mov byte [eax + 0x200], 0xff
add edx, 0xb0452924
adc edx, ebx
dec dl
mov edx, dword [ebp + 8]
shr edx, 2
cmp dword [ebp + 8], eax
lea edx, [edx + ebx*2 + 0x78e9dd76]
imul edx, ebp, 0x1b0
mov edx, dword [ebp + 8]
imul edx, eax
mov edx, dword [eax + 0x200]
shl edx, 0xff
mov dl, cl
adc edx, 0xffffc7f1
add edx, 0xffffa59a
mov edx, dword [eax + 0x200]
sub edx, 0x4354
lea edx, [ebx + edx*8]
shl edx, cl
lea edx, [ebx + edi*4 + 0x6bd5]
mov edx, dword [ebp + 8]
lea edx, [eax + esi*2]
add edx, 0xcbae197b
movzx edx, word [eax + reloc.uxtheme.dll_OpenThemeData]
mov edx, esp
xor edx, edi
imul edx, dword [ebp + 8]
mov edx, edx
xor edx, eax
lea edx, [0]
sub edx, 0x33
inc edx
mov dword [eax + 0x200], esi
xor edx, esi
add edx, edi
inc edx
mov edx, dword [ebp + 8]
xor edx, edi
shr edx, 0x45
mov dx, word [ebp + 8]
lea edx, [ecx + esi*8 + 5]
sub edx, ecx
xchg edx, edx
mov dword [eax + 0x200], 0x89cbf7fd
add dword [eax + 0x200], 0x2adbdaf8
mov edx, dword [ebp + 8]
and dl, 0x26
mov edx, esi
lea edx, [ecx + ecx*2 + 0x6189]
shl edx, 0xd9
mov edx, edx
xor edx, eax
shr edx, 0xfb
xor edx, ecx
mov word [eax + reloc.uxtheme.dll_OpenThemeData], 0x18cf
add byte [eax + 0x200], al
mov edx, dword [eax + 0x200]
shr edx, 0xb7
lea edx, [ecx + edi*4]
cmp edi, 5
lea edx, [esp + 0x3a]
mov dword [eax + 0x200], ebx
neg edx
mov dword [eax + 0x200], esp
sbb edx, edx
and dword [eax + 0x200], esi
mov edx, edi
add edx, esi
mov edx, esp
cmp ebx, eax
lea edx, [esp + 0x50]
cmp dword [ebp + 8], edx
setne dl
mov dword [eax + 0x200], eax
sbb edx, edx
not edx
and edx, 5
or dword [eax + 0x200], ebx
mov dword [eax + 0x200], 0xffffffff
shl edx, 0x87
mov edx, dword [eax + 0x200]
and dword [eax + 0x200], 0x15480b81
or byte [eax + 0x200], 0x31
mov edx, dword [eax + 0x200]
add edx, edi
mov dword [eax + 0x200], esi
or dword [eax + 0x200], eax
shr edx, 0x95
add edx, 0xffffd4eb
lea edx, [ebx + eax*8 + 0x1931d10c]
mov dword [eax + 0x200], ecx
setl dl
sub dl, 6
dec edx
mov dword [eax + 0x200], 0x8a46a4cf
imul edx, edi, 0xffffa70b
add edx, 1
lea edx, [0x5156]
mov edx, esi
add edx, 0xfffffd41
sub edx, esi
sbb dl, cl
add edx, esp
mov edx, esp
sub edx, 0x1190
sbb edx, ebx
add edx, 0xfffffffe
lea edx, [esp]
mov dword [eax + 0x200], 0xffffffbc
imul edx, ebx
shr edx, 0x94
and edx, eax
test esp, esp
setne dl
mov dword [eax + 0x200], esi
inc edx
cmp cl, byte [ebp + 8]
setne dl
mov edx, esp
movzx edx, word [ebp + 8]
xor edx, esp
shr edx, 5
inc edx
setg dl
and edx, 0x1809
add edx, esp
mov edx, dword [eax + 0x200]
xor edx, ecx
cmp esp, ebx
setg dl
lea edx, [eax*8 + 0x7617bb35]
mov edx, dword [eax + 0x200]
sub edx, 0xffffb032
add edx, ebp
dec edx
jmp 0x41277e
sub edx, 0xfffffffc
cmp dword [ebp + 8], 0x4d
mov edx, ebp
lea edx, [esi + edx*4 + 2]
mov dword [eax + 0x200], esi
adc edx, esp
setne dl
add edx, dword [eax + 0x200]
or dword [eax + 0x200], esp
lea edx, [esi + 0x46]
shl edx, 7
cmp dword [ebp + 8], 4
mov edx, ebx
sete dl
inc edx
xor edx, esi
cmp dword [eax + 0x200], 0x19
setg dl
mov dword [eax + 0x200], 0xe
movzx edx, word [eax + reloc.uxtheme.dll_OpenThemeData]
xor edx, ebx
mov edx, esp
dec edx
inc edx
and edx, 0xfffffff9
movzx edx, word [ebp + 8]
mov edx, dword [eax + 0x200]
and edx, 0x79
xor dl, bl
cmp esp, ebx
mov edx, dword [eax + 0x200]
sbb edx, edx
and edx, 0x474f0631
add edx, 0x577c
mov edx, ebp
lea edx, [edx]
add edx, 0xffffdd6b
sub edx, 0
xor dl, al
test byte [eax + 0x200], 0
lea edx, [edi + esi*8 + 0xef7]
setne dl
mov edx, dword [ebp + 8]
sar edx, 0xfe
and edx, 0xffffffbf
add edx, 2
mov edx, dword [eax + 0x200]
add edx, 0x2d
and edx, ecx
mov edx, dword [ebp + 8]
add edx, 0xfffffffb
lea edx, [edi + ebp*2]
sub edx, esi
xchg edx, edx
or edx, 0xfffffffb
sub edx, 0x23a5
mov edx, esp
adc edx, edx
inc edx
cmp ebx, esp
mov edx, dword [eax + 0x200]
shr edx, 0
add edx, ebx
cmp bx, 0xfffa
mov edx, dword [ebp + 8]
adc edx, edx
xor edx, edi
xor edx, ebp
shr edx, 0x6d
inc edx
cmp ecx, 0xa99caba0
mov dx, si
inc edx
cmp edi, 5
mov edx, eax
sete dl
inc edx
mov edx, dword [eax + 0x200]
xor edx, edi
inc edx
xor edx, edi
mov dl, 4
shl edx, 0x81
or edx, esi
shr edx, 6
mov edx, dword [eax + 0x200]
cmp ebp, 0xf9f
inc edx
and dx, 0xfff9
mov edx, ecx
shl edx, 4
add edx, 0x4baa4d5e
lea edx, [eax - 0x6999f240]
mov edx, dword [eax + 0x200]
xor edx, edi
shr edx, 0x71
movzx edx, word [ebp + 8]
xor edx, esi
test edx, ebp
setne dl
seta dl
jmp 0x412999
cmp dword [ebp + 8], 0xffffff89
lea eax, [eax + eax*2 - 0x78]
mov edx, dword [ebp + 8]
mov dword [edx + 0x200], 0xc
movzx eax, word [edx + reloc.uxtheme.dll_OpenThemeData]
xor eax, edi
jmp 0x412999
inc eax
cmp dword [ebp + 8], ebp
mov eax, dword [ebp + 8]
mov dword [eax + 0x200], 0xa
mov eax, dword [ebp + 8]
shr edx, 5
not edx
push ebx
test ebx, esp
push esi
xor edx, esi
test ecx, edx
mov esi, ecx
xor dl, dl
mov edx, dword [ebp + 8]
sar esi, 5
add edx, dword [ebp + 8]
mov edx, dword [ebp + 8]
xor edx, edx
cmp ebx, ebx
push edi
test esi, esi
nop
jle 0x412a5b
mov ecx, dword [ebp + 0xc]
shr edi, 0x28
xor edi, ebx
add ecx, 9
add ecx, 0xfffffff9
mov edi, dword [ebp + 8]
xor edi, eax
lea ebx, [ebx]
add edi, esi
mov edi, dword [ebp + 8]
lea edi, [0x4729]
add edi, eax
movzx edi, byte [ecx - 2]
movzx ebx, byte [ecx - 1]
cmp dword [ebp + 0xc], ebx
shl edi, 8
or edi, ebx
shr ebx, 0x67
mov ebx, 0xde290ff2
add ebx, 0x21d6f009
movzx ebx, byte [ecx]
test al, cl
shl edi, 8
or edi, ebx
shr ebx, 0xd5
mov ebx, dword [ebp + 8]
movzx ebx, byte [ecx + 1]
test eax, ecx
shl edi, 8
or edi, ebx
cmp al, 3
lea ebx, [esp + ebx*8 - 1]
mov ebx, eax
mov dword [ebx + edx*4], edi
add edx, 1
cmp ebp, dword [ebp + 8]
add ecx, 0xffff9fae
add ecx, 0x6056
cmp dword [ebp + 0xc], esp
cmp edx, esi
jl 0x4129e1
lea esi, [ebp + esi*2 + 5]
sub ecx, 0xffffe70e
sub ecx, 7
mov ecx, dword [ebp + 0x10]
shl edx, 0x61
add edx, ebx
and edx, esp
sub ecx, 0x80
lea esi, [esi - 0x90e]
mov esi, dword [ebp + 8]
je 0x41310a
mov edx, ecx
shl dl, 0xe8
sub ecx, 0x40
lea edx, [esp + eax*2 - 0x3d32]
mov esi, dword [ebp + 8]
je 0x412c31
mov edx, edi
sub edx, 1
sub ecx, 0x40
mov ecx, dword [ebp + 8]
lea edx, [eax + 1]
jne 0x4143f9
add edx, 1
add ebx, edi
mov ebx, 0x4694e6
add ebx, 0x7a
mov esi, dword [eax + 0x1c]
mov ecx, esi
sub edx, 0xffffffff
mov dx, cx
shr ecx, 0x10
mov edx, ebx
shl edi, cl
movzx edx, cl
xor edi, edx
cmp esi, dword [eax + 0xc]
mov ecx, dword [edx*4 + 0x468960]
and edi, 0x3e
mov edi, dword [eax + 4]
shl ecx, 8
sub edi, ecx
sbb edi, edx
mov edi, dword [eax + 0xc]
mov edx, esi
test ecx, eax
shr edx, 8
movzx edx, dl
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax + 0x1c]
shl ecx, 8
xor ecx, dword [edx*4 + 0x468960]
cmp dword [edx*4 + 0x468960], 0xffffdcb3
mov edx, esi
shl ecx, 8
cmp ebx, 1
shr edx, 0x18
xor ecx, dword [edx*4 + 0x468960]
cmp esi, ebp
mov edx, dword [eax + 4]
xor ecx, dword [eax]
add ebx, 0xfffffff7
add ebx, 0x38
sub ebx, 0x2b
sub ebx, 0
xor ecx, dword [ebx - 4]
add eax, 0xffffca20
add eax, 0xffffff96
sub eax, 0xffffc999
sub eax, 0xfffffffd
xor edx, ecx
nop
cmp dword [eax + 4], ebp
mov dword [eax], ecx
neg ecx
mov ecx, dword [eax - 0x18]
xor ecx, edx
nop
xor edi, ecx
cmp ebp, 0x71
cmp esi, esp
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edi
mov ecx, edi
shl edx, cl
mov edx, 0xc4f25ec2
add edx, 0x3b0da198
add edx, 0x6be0c6f7
add edx, 0x941f38aa
shr ecx, 0x18
imul edx, esp, 0x549e
add dl, byte [eax - 0x18]
mov ecx, dword [ecx*4 + 0x468960]
xor edx, ebx
sub edx, 0xffffffff
shl ecx, 8
add edx, esp
lea edx, [edi + ebp*4 + 0xba17f23]
mov edx, edi
shr edx, 0x10
movzx edx, dl
xor ecx, dword [edx*4 + 0x468960]
cmp eax, esp
mov edx, edi
test word [eax + 0x14], 0xabdf
test edx, edx
shr edx, 8
nop
shl ecx, 8
movzx edx, dl
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax + 0xc]
cmp ebx, 0x577c155
shl ecx, 8
xor ecx, dword [edx*4 + 0x468960]
cmp dword [eax - 8], edi
mov edx, dword [eax - 0xc]
xor ecx, dword [eax - 0x10]
xor edx, ecx
cmp byte [eax + 4], 0x94
sete byte [eax + 0x10]
mov dword [eax + 0x10], ecx
mov ecx, dword [eax - 8]
or dword [eax + 0x14], edi
mov dword [eax + 0x14], ebp
xor ecx, edx
xor esi, ecx
cmp dl, 0x79
or dword [eax + 0x14], 0x26be
mov dword [eax + 0x14], edx
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], esi
cmp ebx, 0x46957c
jl 0x412aab
mov esi, ebp
sub esi, esi
mov esi, eax
ja 0x41443b
jbe 0x41443b
mov edi, 0x469371
add edi, 0xf
shl esi, 0x44
mov edx, edi
sub edi, 0xfffffe23
sub edi, 0xfffffff9
lea esi, [esp + edi*4 - 0x30]
movzx ecx, word [eax + 0x48]
xor ecx, ebp
mov edx, dword [eax + 0x5c]
cmp edx, 0xffffd75d
mov esi, dword [eax + 0x14]
mov ecx, esi
and edx, 0xfffffffa
shl edx, 0xa
shr ecx, 0x10
mov edx, dword [eax + 0x30]
neg edx
movzx edx, cl
and ecx, 0xfffffffb
xor ecx, ebp
mov ecx, dword [edx*4 + 0x468960]
shl ecx, 8
cmp sp, si
mov edx, esi
shr edx, 8
movzx edx, dl
cmp esi, edx
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax + 0x14]
cmp edi, 0xffffff89
shl ecx, 8
xor ecx, dword [edx*4 + 0x468960]
cmp dword [eax + 0x28], ebp
mov edx, esi
shl ecx, 8
shr edx, 0x18
xor ecx, dword [edx*4 + 0x468960]
test dword [eax + 0x5c], 0xffffe30b
mov edx, dword [eax + 4]
xor ecx, dword [edi - 4]
xor ecx, dword [eax]
xor edx, ecx
cmp cx, dx
setne byte [eax + 0x18]
mov dword [eax + 0x18], ecx
mov ecx, dword [eax + 8]
and word [eax + 0x1c], 0
mov dword [eax + 0x1c], eax
xor ecx, edx
cmp word [eax + 0x40], 0xd584
sbb dword [eax + 0x1c], edx
mov dword [eax + 0x1c], edx
mov edx, dword [eax + 0xc]
or dword [eax + 0x20], edx
mov dword [eax + 0x20], ebp
xor edx, ecx
nop
cmp dword [eax + 0x24], 0xffffff83
mov dword [eax + 0x20], ecx
mov ecx, dword [eax + 0x10]
or dword [eax + 0x28], edx
mov dword [eax + 0x28], 0xc1ce1b16
sub dword [eax + 0x28], 0xc1ce1b93
xor ecx, edx
xor esi, ecx
cmp dword [eax + 0x4c], esi
setne byte [eax + 0x28]
mov dword [eax + 0x28], ecx
mov dword [eax + 0x24], edx
mov dword [eax + 0x2c], esi
mov ecx, esi
lea edx, [esi + ebx*8 - 2]
sar edx, 3
shr ecx, 0x10
mov edx, dword [eax + 8]
lea edx, [esi + eax*2]
movzx edx, cl
inc ecx
add ecx, 0x8b85cb5d
lea ecx, [0x43608f7b]
mov ecx, dword [edx*4 + 0x468960]
shl ecx, 8
cmp edi, edi
mov edx, esi
nop
shr edx, 8
movzx edx, dl
cmp edi, 0x3c
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax + 0x2c]
shl ecx, 8
xor ecx, dword [edx*4 + 0x468960]
cmp eax, dword [eax]
jmp 0x412ec6
mov edx, dword [eax + 0x1c]
shl ecx, 8
shr esi, 0x18
xor ecx, dword [esi*4 + 0x468960]
test esi, edx
mov esi, dword [eax + 0x2c]
xor ecx, dword [eax + 0x18]
xor ecx, dword [edi]
xor edx, ecx
sub dword [eax + 0x30], 0xffffffff
cmp esp, ebx
mov dword [eax + 0x30], ecx
mov ecx, dword [eax + 0x20]
or dword [eax + 0x34], esp
mov dword [eax + 0x34], ebp
xor ecx, edx
sub dword [eax + 0x34], 0xffffffff
cmp eax, edi
mov dword [eax + 0x34], edx
mov edx, dword [eax + 0x24]
and dword [eax + 0x38], 5
mov dword [eax + 0x38], ebx
xor edx, ecx
cmp esi, eax
setne byte [eax + 0x38]
mov dword [eax + 0x38], ecx
mov ecx, dword [eax + 0x28]
add dword [eax + 0x40], esp
mov dword [eax + 0x40], edx
xor ecx, edx
xor esi, ecx
cmp dword [eax + 0x18], edx
setne byte [eax + 0x40]
mov dword [eax + 0x40], ecx
mov dword [eax + 0x3c], edx
mov ecx, esi
xor edx, esp
shr edx, 0x59
shr ecx, 0x10
mov edx, dword [eax + 0x18]
lea edx, [edx - 0x3f]
movzx edx, cl
and dword [eax + 0x44], 0xffffffd8
xor ecx, ecx
mov dword [eax + 0x44], esi
mov ecx, dword [edx*4 + 0x468960]
mov edx, esi
nop
shr edx, 8
shl ecx, 8
movzx edx, dl
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax + 0x44]
shl ecx, 8
xor ecx, dword [edx*4 + 0x468960]
shl ecx, 8
shr esi, 0x18
xor ecx, dword [esi*4 + 0x468960]
test ebp, ebx
mov edx, dword [eax + 0x34]
xor ecx, dword [edi + 4]
cmp ebx, ebx
cmp ebp, 0
mov esi, dword [eax + 0x44]
xor ecx, dword [eax + 0x30]
add dword [eax + 0x48], 1
mov dword [eax + 0x48], 0xc03fd45d
sub dword [eax + 0x48], 0xc03fd44e
add edi, 0xffffc6f8
inc edi
test byte [eax + 0x48], 0xd2
add edi, 0xffffffbf
sub edi, 0xffffffd1
mov dword [eax + 0x48], esp
and dword [eax + 0x48], 0xfffffffd
add edi, 0xfffff893
inc edi
dec edi
add edi, 0x4096
mov dword [eax + 0x48], ebp
add dword [eax + 0x48], ecx
xor edx, ecx
cmp dword [eax + 0x20], edi
setne byte [eax + 0x48]
mov dword [eax + 0x48], ecx
mov ecx, dword [eax + 0x38]
and dword [eax + 0x4c], 0xffffa4a8
mov dword [eax + 0x4c], ebx
xor ecx, edx
cmp ebx, 0xfffffffb
mov word [eax + 0x4c], sp
mov dword [eax + 0x4c], edx
mov edx, dword [eax + 0x3c]
or byte [eax + 0x50], 0x21
mov byte [eax + 0x50], cl
xor edx, ecx
mov dword [eax + 0x50], ebp
nop
mov dword [eax + 0x50], ecx
mov ecx, dword [eax + 0x40]
or dword [eax + 0x58], ecx
or dword [eax + 0x58], edi
xor ecx, edx
xor esi, ecx
cmp esi, dword [eax + 0x48]
setne byte [eax + 0x58]
mov dword [eax + 0x58], ecx
mov dword [eax + 0x54], edx
mov dword [eax + 0x5c], esi
mov ecx, esi
lea edx, [ebx + ebx - 3]
sar edx, 0x61
shr ecx, 0x10
mov edx, edi
shl edx, 0xa3
movzx edx, cl
xor ecx, esp
lea ecx, [ecx*4 - 0x46727173]
mov ecx, dword [edx*4 + 0x468960]
nop
shl ecx, 8
cmp dword [eax + 0x3c], 0x1658
mov edx, esi
shr edx, 8
test eax, ebp
movzx edx, dl
test edx, eax
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax + 0x5c]
shl ecx, 8
xor ecx, dword [edx*4 + 0x468960]
cmp ebp, edx
mov edx, dword [eax + 0x4c]
shl ecx, 8
test edi, esi
shr esi, 0x18
xor ecx, dword [esi*4 + 0x468960]
sub eax, 1
add eax, 0xcf66f9c
add eax, 0xf309be11
sub eax, 0xbf83d450
sub eax, 0x407c1d0b
dec eax
add eax, 0xffffc410
cmp esi, 0x1d88
xor ecx, dword [edi - 8]
xor ecx, dword [eax - 0x18]
xor edx, ecx
cmp esp, edi
mov dword [eax], ecx
mov ecx, dword [eax - 0x10]
xor ecx, edx
cmp edi, eax
mov dword [eax + 4], edx
not edx
inc edx
add edx, 0xfffffffe
mov edx, dword [eax - 0xc]
cmp ebx, ebx
xor edx, ecx
test esp, ebp
mov dword [eax + 8], ecx
mov ecx, dword [eax - 8]
xor ecx, edx
cmp ebp, ebx
mov dword [eax + 0xc], edx
mov edx, dword [eax - 4]
xor edx, ecx
cmp eax, edx
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
cmp edi, 0x469584
jl 0x412c4f
mov ecx, ecx
sub ecx, eax
shr ecx, 0xfe
jge 0x414491
jl 0x414491
mov edi, 0x9222ad20
sub edi, 0x91dc360b
add edi, 0x1ad90048
add edi, 0xe526b8aa
setl cl
dec edi
sub edi, 0xffff9d51
sub edi, 0x112cfb6
sub edi, 0xfeed92f1
xor ecx, edx
sub ecx, 0x47
sub ecx, 0xffffffb8
sub edi, 0xffff9aad
sub edi, 0xfffffffb
sub edi, 1
mov edx, edx
dec edi
add edi, 0
cmp dword [eax + 0x2c], esp
lea ebx, [edi*8 - 0x4cd3936b]
sub ebx, dword [edi + 4]
sbb esi, ebp
mov edx, dword [eax + 0xc]
mov ecx, edx
imul esi, ebp
mov esi, dword [eax + 0x3c]
shr ecx, 0x10
mov esi, dword [eax + 0x18]
lea esi, [ebp*4]
movzx ecx, cl
mov esi, ecx
cmp esi, ecx
setne bl
mov ecx, dword [ecx*4 + 0x468960]
lea ebx, [ebp + ebp*8]
movzx ebx, bl
shl ecx, 8
movzx ebx, word [eax + 8]
xor ebx, ecx
mov ebx, edx
add esi, 1
mov esi, dword [eax + 0x1c]
shr ebx, 8
mov esi, dword [eax + 0x34]
add esi, esi
movzx esi, bl
mov ebx, dword [eax + 0x38]
shr ebx, 5
xor ecx, dword [esi*4 + 0x468960]
shr ebx, 0xf9
mov ebx, dword [edi]
movzx esi, dl
shl ecx, 8
shr ebx, 0xf9
and ebx, 0x6d
xor ecx, dword [esi*4 + 0x468960]
inc bl
mov ebx, dword [eax + 0x20]
cmp ebx, esi
mov ebx, dword [eax + 4]
test esi, ecx
shl ecx, 8
cmp ebp, ebp
mov esi, edx
shr esi, 0x18
nop
xor ecx, dword [esi*4 + 0x468960]
cmp ebp, edi
mov esi, dword [eax + 8]
xor ecx, dword [edi - 4]
test esi, ecx
xor ecx, dword [eax]
xor ebx, ecx
cmp dword [edi + 4], 0x59
sete byte [eax + 0x10]
mov dword [eax + 0x10], ecx
lea ecx, [esp - 1]
mov cx, word [eax + 0x14]
xor esi, ebx
sub ecx, 0x7dfaee4
sub ecx, 0xf8205117
lea ecx, [esi - 0x3d]
mov dword [eax + 0x18], esi
shl ecx, 0x65
neg ecx
xor esi, edx
add ecx, 1
mov edx, ebp
cmp esi, edx
mov dword [eax + 0x1c], esi
mov edx, esi
or dword [eax + 0x14], esi
mov ecx, dword [edi - 4]
shr edx, 0x10
mov dword [eax + 0x14], 0xfffffcda
add dword [eax + 0x14], 0x2c1
lea ecx, [eax + ebx*4 + 0x2ef5]
movzx ecx, dl
test ebx, esi
sete dl
mov dword [eax + 0x14], ebx
mov ecx, dword [ecx*4 + 0x468960]
setl dl
shl ecx, 8
sub edx, dword [eax]
test eax, edx
mov edx, esi
cmp dword [eax + 0x10], ebp
shr edx, 8
movzx edx, dl
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax + 0x1c]
shl ecx, 8
xor ecx, dword [edx*4 + 0x468960]
shr esi, 0x18
shl ecx, 8
xor ecx, dword [esi*4 + 0x468960]
test byte [edi + 4], bl
mov esi, dword [eax + 0x1c]
xor ecx, dword [edi]
cmp dword [eax + 0x2c], 0x16
mov edx, ebx
xor ecx, dword [eax + 0x10]
xor edx, ecx
cmp dword [edi - 4], 0xfffffffb
sete byte [eax + 0x20]
mov dword [eax + 0x20], ecx
mov ecx, dword [eax + 0x18]
or dword [eax + 0x28], edx
mov dword [eax + 0x28], 0xfffffffb
xor ecx, edx
test ebx, edi
xor esi, ecx
cmp dword [eax + 0x1c], edx
sete byte [eax + 0x28]
mov dword [eax + 0x28], ecx
mov dword [eax + 0x24], edx
mov ecx, esi
and edx, ebp
shl edx, 0x45
shr ecx, 0x10
mov edx, dword [eax]
lea edx, [ecx + edi*8]
movzx edx, cl
cmp dword [eax + 0xc], 2
lea ecx, [edi + 0x3c5d7ca7]
mov dword [eax + 0x2c], esi
xor ecx, edi
mov ecx, dword [edx*4 + 0x468960]
shl ecx, 8
nop
cmp dword [eax + 0x20], eax
mov edx, esi
cmp eax, 0xffffffa3
test esp, edx
shr edx, 8
nop
movzx edx, dl
xor ecx, dword [edx*4 + 0x468960]
nop
movzx edx, byte [eax + 0x2c]
shl ecx, 8
cmp dword [eax], ecx
test ebx, ebp
xor ecx, dword [edx*4 + 0x468960]
cmp esp, 0x43042f9b
cmp dword [eax + 0xc], esi
nop
test esp, esi
cmp esi, 0xfffffffd
test esi, eax
mov edx, dword [eax + 0x24]
nop
test ecx, esp
cmp edx, eax
cmp dword [eax + 4], ecx
shl ecx, 8
nop
test esi, esp
test esp, eax
test ebp, edx
cmp dword [eax + 0x30], 0xfffffffe
shr esi, 0x18
cmp dword [edi + 4], esi
xor ecx, dword [esi*4 + 0x468960]
cmp dword [eax + 0x28], 0x236b4b75
cmp dword [eax], 0x66212d42
test ebp, edi
mov esi, dword [eax + 0x2c]
cmp dword [eax + 0x3c], esp
test esi, ecx
xor ecx, dword [edi + 4]
xor ecx, dword [eax + 0x20]
xor edx, ecx
test edi, eax
mov dword [eax + 0x30], esp
and dword [eax + 0x30], 0x1e
add dword [eax + 0x30], edx
dec dword [eax + 0x30]
mov dword [eax + 0x30], 0xffffbb3c
and dword [eax + 0x30], 0xffffe78a
sub dword [eax + 0x30], edi
test esi, esp
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0x6e
inc dword [eax + 0x30]
test ebp, esi
test ebp, edi
and dword [eax + 0x30], 0xfffffffd
and dword [eax + 0x30], 0xffff99c6
cmp ebp, 0xffffffd3
or dword [eax + 0x30], edi
mov dword [eax + 0x30], edi
cmp dword [edi - 4], 0x47d
mov dword [eax + 0x30], 2
sbb dword [eax + 0x30], ecx
and dword [eax + 0x30], 0xd6690cbe
inc dword [eax + 0x30]
add dword [eax + 0x30], eax
cmp esi, dword [eax + 4]
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], ecx
cmp ebp, ecx
mov dword [eax + 0x30], eax
setne byte [eax + 0x30]
mov dword [eax + 0x30], edx
or dword [eax + 0x30], esi
and dword [eax + 0x30], 5
test edx, edi
mov dword [eax + 0x30], 0x53
sub dword [eax + 0x30], ebp
and dword [eax + 0x30], esi
test al, dl
mov dword [eax + 0x30], ecx
add dword [eax + 0x30], esi
and dword [eax + 0x30], 0xe68a5a81
cmp dword [eax + 0xc], ecx
mov dword [eax + 0x30], edi
or dword [eax + 0x30], edx
and dword [eax + 0x30], 0x42
mov dword [eax + 0x30], ecx
dec dword [eax + 0x30]
cmp esi, esp
mov dword [eax + 0x30], 0xffffed87
sub dword [eax + 0x30], 6
and dword [eax + 0x30], 6
test esi, edi
mov dword [eax + 0x30], eax
add dword [eax + 0x30], ecx
and dword [eax + 0x30], 0xffffffdd
add dword [eax + 0x30], 0x3c5cf497
mov dword [eax + 0x30], 0xfffff1f3
sub dword [eax + 0x30], edi
and dword [eax + 0x30], 0x285
test edi, eax
mov dword [eax + 0x30], 7
and dword [eax + 0x30], 0xc7028dc1
or dword [eax + 0x30], ecx
or dword [eax + 0x30], esi
test ebx, ecx
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xfffffffe
or dword [eax + 0x30], 0xffffac30
nop
cmp ecx, esi
dec dword [eax + 0x30]
and byte [eax + 0x30], 0xfe
sub dword [eax + 0x30], 0x9d6f8fa5
cmp edi, dword [eax + 0xc]
mov dword [eax + 0x30], 0x146c1140
inc dword [eax + 0x30]
dec dword [eax + 0x30]
mov dword [eax + 0x30], edx
sub dword [eax + 0x30], 0xffff9e26
test ebp, eax
mov word [eax + 0x30], dx
add dword [eax + 0x30], ebx
and byte [eax + 0x30], 0xfc
or dword [eax + 0x30], 0xfffffff5
mov byte [eax + 0x30], 1
adc dword [eax + 0x30], esp
add dword [eax + 0x30], esi
mov dword [eax + 0x30], ecx
inc dword [eax + 0x30]
mov dword [eax + 0x30], edi
add dword [eax + 0x30], ebx
mov dword [eax + 0x30], ecx
and dword [eax + 0x30], 0xffff8327
add byte [eax + 0x30], cl
mov dword [eax + 0x30], 6
add dword [eax + 0x30], eax
and dword [eax + 0x30], 0x57e4
mov dword [eax + 0x30], ebp
add byte [eax + 0x30], al
cmp eax, esp
mov dword [eax + 0x30], 0xffffeb57
inc dword [eax + 0x30]
dec dword [eax + 0x30]
test cl, 5
mov dword [eax + 0x30], ebx
adc dword [eax + 0x30], eax
nop
cmp edx, edi
setne byte [eax + 0x30]
mov dword [eax + 0x30], eax
dec dword [eax + 0x30]
cmp edi, eax
sete byte [eax + 0x30]
mov byte [eax + 0x30], al
or dword [eax + 0x30], ebx
cmp ebx, ebp
setne byte [eax + 0x30]
mov dword [eax + 0x30], edx
add dword [eax + 0x30], eax
and word [eax + 0x30], 0xffde
sete byte [eax + 0x30]
or dword [eax + 0x30], ecx
test ebp, edi
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], 0xc5103ec8
and dword [eax + 0x30], 0xd0a6caf9
mov dword [eax + 0x30], esp
or dword [eax + 0x30], 0x3247
mov word [eax + 0x30], ax
cmp dword [eax + 0x14], edi
mov dword [eax + 0x30], ecx
sete byte [eax + 0x30]
or dword [eax + 0x30], 0x2c39
and dword [eax + 0x30], 0xffffa271
cmp ecx, edi
mov dword [eax + 0x30], ebx
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], ebp
and word [eax + 0x30], di
add dword [eax + 0x30], 0x66
cmp dword [eax + 4], 0x12bc7969
mov dword [eax + 0x30], eax
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], ebx
cmp dword [eax + 0x20], 0xffff96e0
mov dword [eax + 0x30], 0xfffffff9
setne byte [eax + 0x30]
mov dword [eax + 0x30], ebp
xor dword [eax + 0x30], edi
inc dword [eax + 0x30]
nop
mov dword [eax + 0x30], 0xfffffffa
xor byte [eax + 0x30], bl
inc dword [eax + 0x30]
cmp ebx, ecx
mov dword [eax + 0x30], ecx
and dword [eax + 0x30], 5
neg dword [eax + 0x30]
mov dword [eax + 0x30], ebp
sbb dword [eax + 0x30], eax
and dword [eax + 0x30], 0xbe12e077
or dword [eax + 0x30], ebx
test esi, esp
mov dword [eax + 0x30], eax
setne byte [eax + 0x30]
mov word [eax + 0x30], di
or dword [eax + 0x30], edi
and dword [eax + 0x30], 0x63f10126
test esp, edx
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0x59
or dword [eax + 0x30], edx
cmp ebp, 0xffffcc0e
mov dword [eax + 0x30], ecx
xor dword [eax + 0x30], esp
add dword [eax + 0x30], edi
test al, cl
mov dword [eax + 0x30], esi
and dword [eax + 0x30], 0xffffb20a
shr dword [eax + 0x30], cl
mov dword [eax + 0x30], 0x95d9d88b
and dword [eax + 0x30], 0xffffffb1
add dword [eax + 0x30], edi
mov dword [eax + 0x30], esi
add dword [eax + 0x30], ebx
and dword [eax + 0x30], 0x87eb4684
nop
mov byte [eax + 0x30], dl
cmp edi, 0xffffffdd
add dword [eax + 0x30], ecx
cmp esp, ebx
mov dword [eax + 0x30], 0xfffffffb
adc dword [eax + 0x30], edx
nop
xor byte [eax + 0x30], dl
mov dword [eax + 0x30], eax
add dword [eax + 0x30], ecx
cmp ebx, 0x4c3f4b0
mov dword [eax + 0x30], ecx
xor byte [eax + 0x30], cl
inc dword [eax + 0x30]
mov dword [eax + 0x30], edi
shr dword [eax + 0x30], 0xb8
dec dword [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], edi
cmp edx, 0xbd452281
mov dword [eax + 0x30], ebx
sete byte [eax + 0x30]
inc dword [eax + 0x30]
add dword [eax + 0x30], ebx
cmp ecx, 0xffff84da
mov word [eax + 0x30], di
sete byte [eax + 0x30]
inc dword [eax + 0x30]
add dword [eax + 0x30], edi
cmp esp, 0
mov dword [eax + 0x30], esp
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], ebp
cmp edi, dword [eax + 0x24]
mov word [eax + 0x30], 0x6063
setne byte [eax + 0x30]
mov dword [eax + 0x30], 0x62f13686
and dword [eax + 0x30], 0xfffffffa
cmp dword [edi - 4], edi
mov dword [eax + 0x30], ebp
sbb dword [eax + 0x30], edi
and word [eax + 0x30], 0xfffb
test bl, bl
mov dword [eax + 0x30], 0xfffff809
or byte [eax + 0x30], bl
and dword [eax + 0x30], ebx
test bl, bl
mov dword [eax + 0x30], ebx
add dword [eax + 0x30], 0x29a11058
dec dword [eax + 0x30]
cmp esi, ecx
mov dword [eax + 0x30], edx
neg dword [eax + 0x30]
and dword [eax + 0x30], 0xffffffd9
cmp esi, ebp
mov dword [eax + 0x30], esp
or dword [eax + 0x30], 0xdfd70a58
dec dword [eax + 0x30]
cmp dword [eax + 0x30], esp
mov dword [eax + 0x30], ebp
and dword [eax + 0x30], 0xfffffffc
add dword [eax + 0x30], ecx
cmp eax, edx
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xffffffda
add dword [eax + 0x30], ebx
test ebp, ebx
mov dword [eax + 0x30], 0x40
add dword [eax + 0x30], 1
and word [eax + 0x30], 0xffcf
test ecx, ebx
mov word [eax + 0x30], di
or dword [eax + 0x30], ebp
and dword [eax + 0x30], 0xa28c3166
test dword [eax + 0x28], 2
mov dword [eax + 0x30], ebx
and dword [eax + 0x30], 0x54
or dword [eax + 0x30], edx
cmp esp, esp
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xffffffd0
cmp dword [eax + 0xc], eax
cmp ecx, ebp
sbb dword [eax + 0x30], edi
and dword [eax + 0x30], 0x47bbdad3
test eax, ebp
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], eax
cmp ebp, ebx
mov dword [eax + 0x30], esi
sbb dword [eax + 0x30], ebx
and dword [eax + 0x30], 0xa2e2ccbe
dec dword [eax + 0x30]
mov dword [eax + 0x30], eax
cmp bl, 2
nop
test edi, ebp
mov dword [eax + 0x30], ecx
setne byte [eax + 0x30]
mov dword [eax + 0x30], ecx
inc dword [eax + 0x30]
dec dword [eax + 0x30]
shl dword [eax + 0x30], 0
mov dword [eax + 0x30], ebp
dec dword [eax + 0x30]
cmp edx, esp
mov word [eax + 0x30], 0xff9c
sbb dword [eax + 0x30], edx
and dword [eax + 0x30], 0xffffff8a
mov dword [eax + 0x30], ebp
test eax, eax
mov dword [eax + 0x30], 0xfffffffe
setne byte [eax + 0x30]
mov word [eax + 0x30], dx
inc dword [eax + 0x30]
shl dword [eax + 0x30], 0xfb
add dword [eax + 0x30], ecx
mov dword [eax + 0x30], esi
and dword [eax + 0x30], 1
shr dword [eax + 0x30], 0x42
mov dword [eax + 0x30], 0xffffffdc
xor dword [eax + 0x30], ebx
test ebp, ebp
mov dword [eax + 0x30], eax
or dword [eax + 0x30], edi
and dword [eax + 0x30], 0xffffff8d
add dword [eax + 0x30], ecx
mov dword [eax + 0x30], esp
add dword [eax + 0x30], esi
and dword [eax + 0x30], 0x6027defa
cmp dword [eax + 0x34], eax
mov dword [eax + 0x30], ebx
add dword [eax + 0x30], ebp
adc dword [eax + 0x30], edi
add dword [eax + 0x30], esi
mov dword [eax + 0x30], ebp
adc dword [eax + 0x30], esp
inc dword [eax + 0x30]
nop
cmp edx, edi
test edi, esi
add dword [eax + 0x30], edx
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xffffff90
mov dword [eax + 0x30], 0x73dd
test al, cl
sete byte [eax + 0x30]
nop
inc dword [eax + 0x30]
mov dword [eax + 0x30], ecx
and dword [eax + 0x30], 0xfffffffb
or dword [eax + 0x30], ebx
test byte [eax + 0x30], 0x5b
mov dword [eax + 0x30], eax
setne byte [eax + 0x30]
mov dword [eax + 0x30], edx
inc dword [eax + 0x30]
and dword [eax + 0x30], 0xfffffffb
or dword [eax + 0x30], ebx
mov dword [eax + 0x30], edx
add dword [eax + 0x30], 5
adc dword [eax + 0x30], ebp
add dword [eax + 0x30], esp
mov dword [eax + 0x30], edi
and dword [eax + 0x30], 0x6e63
inc dword [eax + 0x30]
and dword [eax + 0x30], 0xfffffffd
mov dword [eax + 0x30], ecx
nop
xor byte [eax + 0x30], cl
test ecx, esi
setne byte [eax + 0x30]
mov byte [eax + 0x30], bl
add dword [eax + 0x30], ebp
mov dword [eax + 0x30], 0xffffce97
and dword [eax + 0x30], ebp
mov dword [eax + 0x30], ecx
add dword [eax + 0x30], edi
inc dword [eax + 0x30]
add dword [eax + 0x30], ebx
inc dword [eax + 0x30]
cmp edi, 0xc
setne byte [eax + 0x30]
mov dword [eax + 0x30], ebp
mov dword [eax + 0x30], edx
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xfffffffc
mov dword [eax + 0x30], ebp
or dword [eax + 0x30], eax
mov dword [eax + 0x30], edi
add dword [eax + 0x30], 0xfffffffb
cmp dword [eax], esi
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], ecx
add dword [eax + 0x30], eax
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xffffd305
mov dword [eax + 0x30], ecx
and dword [eax + 0x30], 0x12
or dword [eax + 0x30], esp
test esi, ebx
setne byte [eax + 0x30]
mov dword [eax + 0x30], edx
or dword [eax + 0x30], eax
mov dword [eax + 0x30], edi
sub dword [eax + 0x30], ebp
mov dword [eax + 0x30], ebx
sub dword [eax + 0x30], esi
cmp edi, edx
setne byte [eax + 0x30]
mov dword [eax + 0x30], 0xc3a4160f
and dword [eax + 0x30], 0xa3004171
add dword [eax + 0x30], edi
cmp edx, dword [eax + 0x10]
sete byte [eax + 0x30]
inc dword [eax + 0x30]
and dword [eax + 0x30], 0x379f
and dword [eax + 0x30], edi
cmp esp, esi
sbb dword [eax + 0x30], edx
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xfffffff9
mov dword [eax + 0x30], ebp
or dword [eax + 0x30], ebp
shl dword [eax + 0x30], 0xf7
mov byte [eax + 0x30], 0xaa
and dword [eax + 0x30], 0xfffffff9
inc dword [eax + 0x30]
mov dword [eax + 0x30], edi
add dword [eax + 0x30], ebp
cmp dword [eax + 0x2c], 0xffffa8f9
setne byte [eax + 0x30]
mov word [eax + 0x30], 0xffb1
xor dword [eax + 0x30], ebp
mov dword [eax + 0x30], edx
inc dword [eax + 0x30]
mov dword [eax + 0x30], ecx
inc dword [eax + 0x30]
and dword [eax + 0x30], 0xffffff9d
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0x874ae92b
or dword [eax + 0x30], ebx
cmp esp, esi
sete byte [eax + 0x30]
mov dword [eax + 0x30], ebp
shl dword [eax + 0x30], 0x43
or dword [eax + 0x30], esi
xor byte [eax + 0x30], bl
dec dword [eax + 0x30]
and dword [eax + 0x30], eax
inc dword [eax + 0x30]
mov dword [eax + 0x30], edx
and dword [eax + 0x30], 0x92288ea3
cmp bp, bp
setne byte [eax + 0x30]
mov dword [eax + 0x30], eax
add dword [eax + 0x30], ebp
mov dword [eax + 0x30], ebp
adc dword [eax + 0x30], ecx
nop
adc dword [eax + 0x30], ebx
nop
dec dword [eax + 0x30]
cmp ebp, eax
sete byte [eax + 0x30]
mov dword [eax + 0x30], edx
add dword [eax + 0x30], ecx
mov dword [eax + 0x30], 0x5622
adc dword [eax + 0x30], esi
mov dword [eax + 0x30], esi
add dword [eax + 0x30], edi
inc dword [eax + 0x30]
nop
sub dword [eax + 0x30], 0xffffffa2
cmp dword [eax + 0x1c], 1
mov dword [eax + 0x30], ebx
and word [eax + 0x30], 0x4065
mov dword [eax + 0x30], eax
add dword [eax + 0x30], 0x68
mov byte [eax + 0x30], al
add dword [eax + 0x30], esp
adc dword [eax + 0x30], esp
nop
sub dword [eax + 0x30], ebp
test eax, edi
mov dword [eax + 0x30], 0x71a8
inc dword [eax + 0x30]
mov dword [eax + 0x30], ebx
and dword [eax + 0x30], 0xfffffffc
mov dword [eax + 0x30], ebp
xor byte [eax + 0x30], cl
inc dword [eax + 0x30]
add dword [eax + 0x30], edi
mov dword [eax + 0x30], ebp
cmp edx, 0x6110133a
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], ebx
shr dword [eax + 0x30], cl
mov dword [eax + 0x30], ebx
xor byte [eax + 0x30], bl
mov byte [eax + 0x30], 0xfe
and dword [eax + 0x30], 0xe0e
inc dword [eax + 0x30]
add dword [eax + 0x30], edx
mov dword [eax + 0x30], esi
cmp ecx, edx
setne byte [eax + 0x30]
mov dword [eax + 0x30], ecx
inc dword [eax + 0x30]
mov dword [eax + 0x30], edx
add dword [eax + 0x30], 0xfffffffc
mov dword [eax + 0x30], edx
add dword [eax + 0x30], eax
adc dword [eax + 0x30], 0xfffffc40
and dword [eax + 0x30], 0xffffffa3
or dword [eax + 0x30], eax
cmp dword [eax + 0x10], 0x58ed9747
mov dword [eax + 0x30], edi
and dword [eax + 0x30], 0
mov dword [eax + 0x30], 0x16ed5d14
or dword [eax + 0x30], eax
shl dword [eax + 0x30], 0x11
mov dword [eax + 0x30], 0xfffffffb
and dword [eax + 0x30], 0xffffffc9
mov dword [eax + 0x30], esp
test dl, al
add dword [eax + 0x30], 0x521df67d
cmp ebx, ebx
setne byte [eax + 0x30]
mov dword [eax + 0x30], esp
add dword [eax + 0x30], 0x26131aad
mov dword [eax + 0x30], esp
and dword [eax + 0x30], 0xffff88d3
mov dword [eax + 0x30], edi
xor dword [eax + 0x30], ebx
inc dword [eax + 0x30]
mov dword [eax + 0x30], esp
inc dword [eax + 0x30]
and dword [eax + 0x30], 0x6561
inc dword [eax + 0x30]
cmp dword [edi + 4], 0x651915cf
mov dword [eax + 0x30], edi
and dword [eax + 0x30], 0xed7bb6bb
and dword [eax + 0x30], 4
add dword [eax + 0x30], esi
inc dword [eax + 0x30]
mov dword [eax + 0x30], ecx
and dword [eax + 0x30], 7
mov dword [eax + 0x30], edi
and dword [eax + 0x30], 0xffffffcb
test eax, ebp
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], esi
or dword [eax + 0x30], ebx
mov dword [eax + 0x30], esi
xor byte [eax + 0x30], cl
mov dword [eax + 0x30], ebx
xor dword [eax + 0x30], ebx
inc dword [eax + 0x30]
mov dword [eax + 0x30], ecx
xor byte [eax + 0x30], dl
cmp edx, ebx
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov word [eax + 0x30], dx
add dword [eax + 0x30], eax
mov word [eax + 0x30], 0x1b36
inc dword [eax + 0x30]
mov dword [eax + 0x30], edx
inc dword [eax + 0x30]
and dword [eax + 0x30], 0xfffffffd
mov dword [eax + 0x30], ebx
add dword [eax + 0x30], 0xffffffda
cmp ebp, ebx
sete byte [eax + 0x30]
inc dword [eax + 0x30]
mov dword [eax + 0x30], edx
add dword [eax + 0x30], edx
mov dword [eax + 0x30], eax
and dword [eax + 0x30], 0xa7f40c9b
mov dword [eax + 0x30], ecx
or dword [eax + 0x30], ebx
call fcn.00412d86
test ebx, edi
setne byte [eax + 0x34]
mov dword [eax + 0x34], 0
add dword [eax + 0x34], ebx
mov dword [eax + 0x34], ebx
adc dword [eax + 0x34], ebp
mov dword [eax + 0x34], esi
and dword [eax + 0x34], 6
add dword [eax + 0x34], ecx
mov dword [eax + 0x34], ebx
inc dword [eax + 0x34]
and word [eax + 0x34], ax
setne byte [eax + 0x34]
mov dword [eax + 0x34], eax
sub dword [eax + 0x34], ebx
mov dword [eax + 0x34], edx
and dword [eax + 0x34], 2
or dword [eax + 0x34], eax
mov byte [eax + 0x34], 0xbd
shr dword [eax + 0x34], cl
mov dword [eax + 0x34], 6
add dword [eax + 0x34], 0x91e6697b
and dword [eax + 0x34], 0x45e2
nop
sub dword [eax + 0x34], ebp
mov dword [eax + 0x34], ebp
or byte [eax + 0x34], dl
mov dword [eax + 0x34], edx
xor dword [eax + 0x34], edx
nop
and dword [eax + 0x34], 0xa0005783
add dword [eax + 0x34], esi
mov dword [eax + 0x34], 0x3b1d8d5e
add dword [eax + 0x34], 1
adc dword [eax + 0x34], eax
add dword [eax + 0x34], ecx
cmp dword [eax + 0x2c], 0x4a67
mov dword [eax + 0x34], esi
and dword [eax + 0x34], 0xd9869f20
mov dword [eax + 0x34], ecx
xor dword [eax + 0x34], eax
mov dword [eax + 0x34], edi
add dword [eax + 0x34], 0xfffffffb
inc dword [eax + 0x34]
mov dword [eax + 0x34], 0x2f
inc dword [eax + 0x34]
cmp eax, 0xaede0846
sete byte [eax + 0x34]
inc dword [eax + 0x34]
mov dword [eax + 0x34], esp
add dword [eax + 0x34], esp
mov dword [eax + 0x34], esi
and dword [eax + 0x34], 0xfffff968
mov dword [eax + 0x34], ecx
and dword [eax + 0x34], 0x3b
or dword [eax + 0x34], esi
cmp esi, esp
setne byte [eax + 0x34]
mov dword [eax + 0x34], eax
and dword [eax + 0x34], 0xffffdaa0
or dword [eax + 0x34], ecx
shl dword [eax + 0x34], 0xff
mov dword [eax + 0x34], 0x27
and dword [eax + 0x34], 0x528ea3c5
or dword [eax + 0x34], eax
cmp eax, dword [eax + 0x1c]
setne byte [eax + 0x34]
mov word [eax + 0x34], si
and byte [eax + 0x34], 6
or dword [eax + 0x34], edx
shr dword [eax + 0x34], cl
xor byte [eax + 0x34], cl
mov dword [eax + 0x34], edi
add byte [eax + 0x34], bl
mov dword [eax + 0x34], esi
or dword [eax + 0x34], edx
and dword [eax + 0x34], ebx
or byte [eax + 0x34], 4
test di, si
mov dword [eax + 0x34], ecx
inc dword [eax + 0x34]
mov dword [eax + 0x34], ecx
and dword [eax + 0x34], 0xfffff34f
mov dword [eax + 0x34], ecx
xor dword [eax + 0x34], edi
inc dword [eax + 0x34]
cmp esi, ecx
setne byte [eax + 0x34]
mov dword [eax + 0x34], edx
or dword [eax + 0x34], 5
shl dword [eax + 0x34], 0x9b
and dword [eax + 0x34], 0xffffffeb
cmp dword [eax + 0x30], 0x60cd92fa
setne byte [eax + 0x34]
mov dword [eax + 0x34], esp
and dword [eax + 0x34], 0x5e8e
or dword [eax + 0x34], esp
or dword [eax + 0x34], ecx
cmp eax, esp
cmp dword [eax + 0x14], 0
mov word [eax + 0x34], di
setne byte [eax + 0x34]
mov word [eax + 0x34], bx
and dword [eax + 0x34], 0x51
mov dword [eax + 0x34], esi
or byte [eax + 0x34], al
cmp ecx, ecx
setne byte [eax + 0x34]
mov dword [eax + 0x34], ebx
and dword [eax + 0x34], 0x5de
mov dword [eax + 0x34], ebx
xor ecx, edx
nop
sub dword [eax + 0x34], edi
test esp, ebx
sete byte [eax + 0x34]
mov dword [eax + 0x34], esi
dec dword [eax + 0x34]
test edi, ebp
test ebx, ebp
sete byte [eax + 0x34]
inc dword [eax + 0x34]
test edx, ebx
mov dword [eax + 0x34], 0x18
sub dword [eax + 0x34], 1
test esp, ebx
cmp edi, esi
mov dword [eax + 0x34], eax
nop
sbb dword [eax + 0x34], ecx
and dword [eax + 0x34], 0x4e
add dword [eax + 0x34], 0xfffffff9
dec dword [eax + 0x34]
and dword [eax + 0x34], 0xffffffff
test edi, eax
mov dword [eax + 0x34], edx
or edx, esi
lea edx, [edx*8 - 0x2d55814a]
mov edx, dword [eax + 8]
mov dword [eax + 0x38], ecx
add edx, 0xdbcacb48
mov edx, dword [edi]
and dword [eax + 0x3c], 0xbcfcec00
mov edx, ecx
and dword [eax + 0x3c], 3
or dword [eax + 0x3c], eax
mov edx, esi
and dword [eax + 0x3c], 3
shr edx, 0x23
imul edx, edx, 0x52
lea edx, [esi + edx*8 + 0x2d2b]
sbb edx, eax
mov dx, bx
xor edx, esp
mov edx, ebx
sub edx, dword [edi]
sar edx, 0x5e
setge dl
inc dword [eax + 0x3c]
mov edx, ecx
xor edx, ecx
add edx, 0x1828
lea edx, [ebp + 0x5f]
shr edx, 0xb8
xor esi, ecx
mov dword [eax + 0x3c], 0x28
xor edx, ebp
movzx ecx, byte [edi - 4]
test dl, al
setne dl
mov dword [eax + 0x3c], ebp
add edx, edi
xor edx, dword [eax + 0x34]
cmp eax, edx
sbb edx, edx
neg ecx
mov dword [eax + 0x3c], edx
setne cl
mov dword [eax + 0x3c], esi
mov ecx, esi
shr edx, 0x8a
xor edx, esi
and edx, 0x26d5dcce
add edx, edx
lea edx, [edx + edx*2 - 4]
mov edx, 0x71b13e78
adc edx, 0xfffffffe
not edx
shr ecx, 0x10
imul edx, ecx
mov edx, dword [eax + 0xc]
sub edx, 2
and edx, 0xffffffab
lea edx, [ecx*4 - 0x57]
imul edx, edi, 0xffffffaa
add edx, 0xffff90d4
lea edx, [edx + edx*8 + 0x2b92]
mov edx, edx
setl dl
shl edx, cl
xor edx, ebp
inc edx
add edx, ecx
lea edx, [ebp + ebp*4]
or edx, edi
mov edx, dword [eax + 0xc]
add edx, 0x51aa
mov edx, dword [eax + 0x14]
movzx edx, cl
shl ecx, 0xd
shr ecx, cl
mov ecx, dword [eax + 0x2c]
xor ecx, ebx
mov ecx, dword [eax + 0x20]
or ecx, esp
add ecx, 0x9a029bc9
lea ecx, [eax + 0x340a80bc]
shr ecx, 0xfc
mov ecx, dword [eax + 0x18]
sete cl
add ecx, 0x2397
test ebx, ebp
mov ecx, esp
lea ecx, [ebx + ebx*4 + 0x2d37aee7]
sete cl
inc ecx
and ecx, 0xefbd61e9
cmp edi, 0xfffffeb6
mov ecx, dword [edx*4 + 0x468960]
shl ecx, 8
cmp dword [eax + 8], 0xffffc210
mov edx, esi
shr edx, 8
movzx edx, dl
test esp, esp
xor ecx, dword [edx*4 + 0x468960]
nop
movzx edx, byte [eax + 0x3c]
test esi, edx
shl ecx, 8
test byte [edi], al
xor ecx, dword [edx*4 + 0x468960]
cmp dword [eax], ecx
cmp edi, ebp
mov edx, dword [eax + 0x34]
shl ecx, 8
shr esi, 0x18
xor ecx, dword [esi*4 + 0x468960]
cmp dword [eax + 0x30], esi
mov esi, dword [eax + 0x3c]
xor ecx, dword [edi + 8]
add edi, 0x15
test edx, esi
test cl, bl
dec edi
xor ecx, dword [eax + 0x30]
cmp dword [edi - 8], edx
add eax, 0xaabc2a8c
nop
cmp eax, esi
cmp ebx, esp
cmp eax, dword [edi - 8]
add eax, 0x5543d5c4
and dword [eax - 0x10], 0xffffd38f
mov dword [eax - 0x10], esp
cmp dword [eax + 0xc], edi
mov dword [eax - 0x10], ebp
setne byte [eax - 0x10]
mov word [eax - 0x10], bx
and dword [eax - 0x10], 0x4d8a
mov dword [eax - 0x10], ebp
or dword [eax - 0x10], ebx
mov dword [eax - 0x10], edx
inc dword [eax - 0x10]
shl dword [eax - 0x10], 0xee
mov dword [eax - 0x10], ebp
or dword [eax - 0x10], 0
and dword [eax - 0x10], 3
cmp ebp, ebx
setne byte [eax - 0x10]
mov dword [eax - 0x10], esp
inc dword [eax - 0x10]
and dword [eax - 0x10], ebx
and dword [eax - 0x10], 0x567c37ba
mov dword [eax - 0x10], ebp
or dword [eax - 0x10], edi
xor edx, ecx
cmp ebp, ecx
setne byte [eax - 0x10]
mov dword [eax - 0x10], eax
or dword [eax - 0x10], edi
shl dword [eax - 0x10], 0x6d
and dword [eax - 0x10], 0xb76ad720
mov dword [eax - 0x10], 0xffffa183
xor byte [eax - 0x10], bl
cmp dword [eax + 4], 0xffff835b
sete byte [eax - 0x10]
inc dword [eax - 0x10]
mov dword [eax - 0x10], edi
setne byte [eax - 0x10]
mov dword [eax - 0x10], ecx
mov ecx, dword [eax - 0x18]
inc dword [eax - 8]
mov dword [eax - 8], ebx
and dword [eax - 8], 0xffffffa9
mov dword [eax - 8], ecx
test edx, ecx
or dword [eax - 8], eax
mov dword [eax - 8], esi
and dword [eax - 8], 0x3a7542cc
test ebx, eax
xor ecx, edx
mov dword [eax - 8], edi
xor esi, ecx
mov word [eax - 8], 4
dec dword [eax - 8]
cmp ebx, eax
cmp bl, byte [eax + 4]
sete byte [eax - 8]
inc dword [eax - 8]
mov dword [eax - 8], edi
and dword [eax - 8], 0xffffd188
mov dword [eax - 8], esi
cmp edx, dword [eax + 4]
mov dword [eax - 8], esi
cmp word [eax + 8], ax
sete byte [eax - 8]
inc dword [eax - 8]
nop
test esi, ebp
sete byte [eax - 8]
inc dword [eax - 8]
mov dword [eax - 8], ecx
mov dword [eax - 0xc], edx
setne cl
sete cl
not ecx
mov dword [eax - 4], esi
mov ecx, esi
adc edx, 0xffffffee
mov edx, dword [eax - 0x10]
add edx, 0x75c
mov edx, 0xfffffffe
shl edx, 2
movzx edx, word [eax]
sbb edx, ecx
shl edx, 2
xor edx, edx
mov edx, ebx
add edx, 0xfffffffb
test ecx, eax
mov edx, ecx
lea edx, [esp + ebx*2 + 4]
inc edx
cmp edi, ecx
mov edx, dword [eax + 0xc]
inc edx
xor edx, edx
and edx, ebx
cmp edi, edx
imul edx, esp, 0xfffff945
setne dl
shr ecx, 0x10
dec edx
mov edx, ecx
xor edx, esi
mov edx, dword [eax + 0xc]
dec edx
test ebp, edi
nop
sub edx, eax
mov edx, dword [eax + 4]
setne dl
or edx, 0xfffffffc
sub edx, 0x39
setg dl
mov edx, dword [eax + 8]
sub edx, 0xfffff2ac
mov edx, dword [eax + 4]
xor edx, ebp
test cl, cl
setge dl
lea edx, [edi]
movzx edx, cl
cmp dword [eax], esi
imul ecx, esi
mov ecx, dword [eax + 0xc]
lea ecx, [ebx + ebx + 0x1e4b48ad]
mov ecx, dword [eax + 8]
sub ecx, 0x5ff2
xor ecx, eax
inc ecx
cmp esi, ecx
adc ecx, esi
mov ecx, ecx
adc ecx, eax
add ecx, ebx
mov ecx, dword [edx*4 + 0x468960]
add ecx, edi
adc ecx, 0x63
add ecx, 0x376b
sar ecx, 0x81
mov ecx, dword [edx*4 + 0x468960]
shl ecx, 8
cmp ecx, eax
mov edx, esi
shr edx, 8
cmp dword [edi - 8], edi
movzx edx, dl
nop
xor ecx, dword [edx*4 + 0x468960]
movzx edx, byte [eax - 4]
shl ecx, 8
test bl, 0xb2
test ebx, ebx
test esp, esp
nop
xor ecx, dword [edx*4 + 0x468960]
test ebx, edi
nop
cmp esi, dword [eax + 4]
mov edx, dword [eax - 0xc]
shl ecx, 8
nop
shr esi, 0x18
nop
test bl, cl
test eax, ebp
test ebx, eax
xor ecx, dword [esi*4 + 0x468960]
xor ecx, dword [edi - 8]
cmp eax, 0xadd
test edi, edx
xor ecx, dword [eax - 0x10]
cmp esp, esi
xor edx, ecx
cmp esp, ebx
test ebx, esi
test edi, ebp
cmp dword [eax + 0xc], 0xfffffff7
nop
nop
test eax, edi
mov dword [eax], ecx
mov ecx, dword [eax - 8]
test cl, bl
cmp esp, ebp
xor ecx, edx
test edx, esp
nop
nop
mov dword [eax + 4], edx
mov edx, dword [eax - 4]
xor edx, ecx
nop
cmp dword [eax - 0x18], edx
mov dword [eax + 8], ecx
test ecx, eax
nop
test edx, ebp
test ecx, esp
mov dword [eax + 0xc], edx
cmp edi, 0x46958c
nop
jl 0x41315b
sub edx, 0x3751485a
inc edx
and ecx, 0xffffffff
mov cx, word [0x43a004]
lea edx, [esi + edx*2 - 0x11]
mov esi, ecx
adc edx, 4
mov edx, dword [0x43a004]
inc esi
add esi, 0xffffb718
mov edx, dword [0x43a004]
lea ecx, [ebx]
adc edx, edx
add edx, 0xffffffef
lea ecx, [ebp + ecx*8 + 0x11a12321]
mov edx, dword [0x43a004]
shr ecx, 0x73
mov ecx, esp
lea ecx, [0xfffffffc]
test ecx, esi
not edx
add edx, 0x5fa9
lea edx, [edi]
cmp dword [0x43a004], 0x6b
mov edx, dword [0x43a004]
movzx esi, byte [0x43a004]
mov esi, dword [0x43a004]
imul edx, esp, 0xffff8465
mov ecx, dword [0x43a004]
imul edx, ebp
shl edx, 6
xor ecx, edi
inc esi
mov esi, dword [0x43a004]
setl cl
lea ecx, [esi*8 + 0x4bfe6850]
movsx esi, dl
xchg esi, ecx
cmp ebp, ecx
shl ecx, 7
add ecx, edx
lea ecx, [ecx + edi*2]
mov ecx, ebx
adc esi, 1
mov esi, dword [0x43a004]
inc ecx
cmp dword [0x43a004], 0xb55e4072
mov edx, edx
xor esi, ecx
add edx, 0x63
cmp ecx, ebp
lea esi, [edx + esi*4 - 0x436b0da8]
shl ecx, 0xfe
mov edx, ecx
sub edx, 0x1cf1a6d0
mov esi, dword [0x43a004]
lea edx, [ebx + edx*4 - 0x39b2]
add ecx, 5
mov ecx, dword [0x43a004]
sub edx, 1
inc esi
mov edx, edi
sub ecx, ebx
xor ecx, ebx
mov esi, dword [0x43a004]
not esi
and edx, 0xffffaa09
mov ecx, dword [0x43a004]
add esi, 0x1732
shl esi, 0xfd
add ecx, ebx
mov ecx, ecx
xor esi, ecx
cmp dword [0x43a004], 0x3aa8250d
mov edx, dword [0x43a004]
lea edx, [ecx - 5]
add edx, 0x6cedeb72
mov ecx, 0
cmp edx, edi
lea esi, [edx]
adc esi, ecx
mov esi, dword [0x43a004]
imul edx, eax, 0xe06
mov edx, ebx
lea esi, [esp + ecx*8]
sub esi, 0
sbb esi, ebp
add ecx, 0x13828eab
mov edx, esp
shl ecx, 0xff
movzx ecx, word [0x43a004]
sub ecx, ebx
imul esi, ecx
mov edx, dword [0x43a004]
shr esi, 3
and edx, 0xffffff83
xor ecx, ebx
lea edx, [ebx - 0x379a]
inc esi
mov esi, dword [0x43a004]
adc edx, 0xa6ee50b5
mov edx, dword [0x43a004]
add edx, 0xfffffffb
lea ecx, [esp + ebp*8]
adc edx, 6
mov cx, word [0x43a004]
neg edx
adc edx, ebx
or ecx, edx
sub ecx, 0xfffffffb
mov edx, ecx
sbb esi, edi
add edx, 0x64
test ax, cx
sete cl
mov edx, dword [0x43a004]
add edx, esp
mov ecx, dword [0x43a004]
lea edx, [ebp]
nop
cmp al, 0x50
lea ecx, [eax + esi*4 + 0x73]
sub esi, esp
mov ecx, eax
shl ecx, 0
shr esi, cl
sub esi, 0xffffffef
setne cl
mov esi, dword [0x43a004]
shr esi, 2
test eax, esi
xor esi, ecx
add ecx, ebp
adc edx, esi
inc edx
add ecx, ecx
sub esi, ecx
mov esi, dword [0x43a004]
inc edx
cmp edi, eax
adc esi, edi
mov ecx, dword [0x43a004]
shl ecx, cl
add edx, ebx
mov esi, dword [0x43a004]
shr edx, 0x36
lea esi, [ebx + ebx*8]
add edx, 0x435d
lea edx, [edi + esi*4]
mov esi, dword [0x43a004]
inc edx
mov ecx, dword [0x43a004]
xor edx, esp
cmp dword [0x43a004], 0x70
sete dl
mov esi, esi
xor esi, edi
mov ecx, ebp
inc edx
shr esi, cl
mov esi, dword [0x43a004]
lea esi, [edx + esi*2 + 0xc]
inc ecx
shl edx, cl
setge dl
add edx, 0x227fd3b4
lea esi, [ecx + edx*4 - 6]
movsx ecx, bl
mov esi, dword [0x43a004]
inc esi
mov ecx, ebx
add edx, 0x49
sub esi, 0xce0ec8c8
dec ecx
cmp dword [0x43a004], 0x1c
setge cl
mov edx, dword [0x43a004]
sub ecx, 0x33
test esi, edx
neg edx
shl edx, 0xf9
add cl, byte [0x43a004]
xor ecx, esp
sub esi, 0xfffffffd
add ecx, 0xffffffb8
mov edx, dword [0x43a004]
lea edx, [edi]
mov ecx, dword [0x43a004]
lea esi, [ebx + ebx*2]
imul esi, edi, 7
mov ecx, dword [0x43a004]
xor ecx, edi
inc ecx
mov ecx, eax
shl esi, 0x48
xor ecx, ebp
cmp dword [0x43a004], 0x2208
lea edx, [ebx - 0x68615664]
mov ecx, dword [0x43a004]
sub cl, 0xfe
add esi, 0x150d
cdq
cmp dword [0x43a004], 0xffffda9f
mov esi, edi
shr esi, 9
lea edx, [esi + eax*2 + 0x64b3]
mov esi, dword [0x43a004]
xor edx, ebx
cmp dword [0x43a004], 6
sete cl
inc esi
mov esi, 0
sub ecx, 0xffffffff
lea edx, [ebp + ebx*4 - 0x10d06727]
shl edx, 0xb4
add edx, 0xbc26a403
mov edx, dword [0x43a004]
lea ecx, [esp - 0xf5f]
mov ecx, edi
shl ecx, 0xec
xor ecx, esp
mov ecx, dword [0x43a004]
not edx
and edx, 0x4c
test bl, al
setge dl
mov edx, edx
sub edx, 0xffffd218
dec edx
dec ecx
inc edx
mov edx, dword [0x43a004]
sub edx, 0x54213b46
neg edx
dec ecx
sub edx, 0x358b9ad4
cmp dword [0x43a004], esi
mov esi, edx
nop
lea ecx, [eax + edx*4 - 1]
lea esi, [ecx + ecx*8 - 0x1e9c964a]
mov esi, ebx
nop
lea ecx, [ebp]
lea esi, [ecx + edi*8 + 0x628537fe]
mov ecx, dword [0x43a004]
lea esi, [ecx*8]
movzx ecx, al
je 0x414a49
xor edx, dword [0x43a004]
mov edx, esi
inc esi
xor ecx, edx
inc edx
and cl, 0x17
xor ecx, eax
test eax, esi
mov edx, dword [0x43a004]
lea esi, [ebp + edx*8]
mov ecx, dword [0x43a004]
shl esi, cl
add ecx, 0x270df690
lea edx, [edi + ebx*4]
mov cx, di
and ecx, 0x98a802c
or edx, edx
shr esi, cl
xor edx, eax
shr edx, cl
mov edx, esp
xor edx, ecx
movsx esi, bl
movzx esi, bx
inc edx
add edx, 0
xor ecx, ecx
cmp ebp, 0x6e65
mov esi, dword [0x43a004]
shl edx, 0
mov edx, dword [ecx + 0x469da8]
shr esi, 0x35
lea esi, [ebx + ebx]
shl edx, 0x2a
or edx, 0x5e2
jp 0x414621
jnp 0x414621
and esi, ecx
shr esi, 0x11
lea esp, [esp]
lea ecx, [ecx]
mov esi, 0xbccf3e1c
imul edx, eax
shl edx, 0xdd
shr edx, 0x22
xor edx, eax
add dl, 0xb1
mov esi, esi
shl edx, 0x43
cmp edx, dword [ecx + 0x4699ac]
sete dl
inc esi
mov edx, dword [ecx + 0x468960]
or esi, esp
mov esi, edx
shr edx, 0xdb
mov edx, ebx
xor dx, cx
lea edx, [esp + ecx*2]
shl edx, 0
xor esi, esi
add esi, 0x43
or esi, 0xffffd8e1
mov esi, esp
xor esi, eax
sub edx, 0x5461
inc edx
mov esi, dword [ecx + 0x4699ac]
adc esi, 0x6f975e51
add esi, 0xffff91f1
xor esi, edi
nop
sub edx, 0x1bcb7c04
add esi, 0xffffff93
sbb edx, ebp
mov esi, dword [ecx + 0x46896c]
dec edx
sub esi, 0xffffda3b
mov esi, dword [ecx + 0x46bdac]
sub esi, eax
imul esi, edi
adc esi, edi
add edx, ecx
lea edx, [eax + edx*8 + 0x227ddf51]
mov esi, eax
shr esi, 0xf9
movzx edx, ax
inc esi
mov esi, dword [ecx + 0x46bda0]
xor edx, esi
mov esi, dword [ecx + 0x469da4]
shr esi, 3
add esi, edi
mov esi, 0xffffd699
inc edx
mov esi, dword [ecx + 0x4699a4]
xor esi, eax
mov edx, dword [ecx + 0x46896c]
xor edx, esi
movzx esi, word [ecx + reloc.uxtheme.dll_OpenThemeData]
mov esi, dword [ecx + 0x469da8]
shr esi, 0xe8
and edx, 0xfffffff9
mov esi, 0x1bc19996
shr edx, 0x4c
cmp byte [ecx + 0x468968], al
mov edx, edi
shr edx, 4
lea esi, [ecx + esi*8 - 0x64]
sub edx, 0x1a
lea edx, [ebx + ebp*4]
mov edx, dword [ecx + 0x468960]
test dword [ecx + 0x469da0], edx
sub esi, 0x103dcf65
inc esi
mov esi, dword [ecx + 0x4695a0]
neg esi
mov esi, ebp
dec esi
sbb esi, edx
sub esi, 0xfffffff2
mov esi, edx
dec esi
sub esi, esp
xor esi, ecx
cmp ecx, ecx
inc esi
cmp dword [ecx + 0x46bda4], 0x26
mov si, dx
xor esi, edx
inc esi
sub esi, 0x1a6a
test esi, edx
mov esi, esp
inc esi
mov esi, dword [ecx + 0x46bda8]
add edx, edx
xor esi, ecx
nop
sub esi, 0xffffffd2
sbb esi, dword [ecx + 0x46bda0]
xor esi, esp
add esi, esi
mov esi, ecx
or esi, 0x70bed806
lea esi, [ecx + ecx + 0x303a]
add esi, 1
mov esi, esp
sub esi, 0xffffdec8
inc esi
mov esi, ebx
lea esi, [edi*8]
sub esi, dword [ecx + 0x46bda0]
cmp ecx, ebx
lea esi, [eax + edi*2 - 7]
mov esi, dword [edx + edx + 0x46a5a0]
xor dword [ecx + 0x469da0], esi
mov dword [ecx + 0x469da0], esi
inc dword [ecx + 0x469da0]
add dword [ecx + 0x469da0], edx
mov byte [ecx + 0x469da0], bl
test esi, edi
add edx, edx
or dword [ecx + 0x469da0], esi
and dword [ecx + 0x469da0], 0x5e47e016
cmp dword [ecx + 0x4695ac], 0xfffff319
or dword [ecx + 0x469da0], 0xfffffff9
neg dword [ecx + 0x469da0]
sbb dword [ecx + 0x469da0], esp
dec dword [ecx + 0x469da0]
cmp edx, 0xffffffd4
mov dword [ecx + 0x469da0], esi
mov esi, dword [edx + 0x46a1a0]
test al, 2
setne byte [ecx + 0x4699a0]
mov dword [ecx + 0x4699a0], esi
and esi, 0xfffffffb
xor esi, ebx
not esi
and esi, ebx
xor esi, esp
mov esi, dword [edx + 0x469160]
cmp dword [edx + 0x46a1a0], edx
cmp eax, ebx
mov edx, dword [edx + 0x468d60]
mov dword [ecx + 0x46bda0], edx
sub edx, 0xffffd83c
add edx, 0xd14d7610
cdq
sub edx, 0xa2
cmp dword [ecx + 0x46bda4], 0xfffffffb
mov edx, dword [ecx + 0x468964]
add dword [ecx + 0x4695a0], ebx
mov dword [ecx + 0x4695a0], esp
inc dword [ecx + 0x4695a0]
nop
adc dword [ecx + 0x4695a0], ecx
mov dword [ecx + 0x4695a0], ebp
add edx, edx
mov byte [ecx + 0x4695a0], 7
add dword [ecx + 0x4695a0], edi
cmp dword [ecx + 0x46bda8], esi
setne byte [ecx + 0x4695a0]
add edx, edx
inc dword [ecx + 0x4695a0]
or dword [ecx + 0x4695a0], edx
cmp dword [ecx + 0x468960], ebx
mov dword [ecx + 0x4695a0], esp
cmp ecx, edx
sete byte [ecx + 0x4695a0]
inc dword [ecx + 0x4695a0]
cmp esi, 3
mov dword [ecx + 0x4695a0], esi
mov esi, dword [edx + 0x46a5a0]
and dword [ecx + 0x469da4], 0x2c
inc dword [ecx + 0x469da4]
cmp edi, esp
setne byte [ecx + 0x469da4]
mov dword [ecx + 0x469da4], esi
mov esi, dword [edx + 0x46a1a0]
mov dword [ecx + 0x4699a4], esi
mov esi, dword [edx + 0x469160]
mov edx, dword [edx + 0x468d60]
and dword [ecx + 0x46bda4], 0x4a7c
mov dword [ecx + 0x46bda4], esp
test esi, ebx
mov dword [ecx + 0x46bda4], ebp
setne byte [ecx + 0x46bda4]
mov dword [ecx + 0x46bda4], edx
setl dl
and edx, 0x53149d7b
mov edx, dword [ecx + 0x468968]
cmp bp, 0x9d29
test ebp, ecx
and dword [ecx + 0x4695a4], 0x50
cmp dword [ecx + 0x4699ac], eax
sete byte [ecx + 0x4695a4]
mov dword [ecx + 0x4695a4], esp
and dword [ecx + 0x4695a4], 0x65
mov dword [ecx + 0x4695a4], ebp
add edx, edx
mov dword [ecx + 0x4695a4], ecx
dec dword [ecx + 0x4695a4]
cmp eax, 0x2f
mov dword [ecx + 0x4695a4], 0x7a
setne byte [ecx + 0x4695a4]
add edx, edx
mov word [ecx + 0x4695a4], 0x46ba
inc dword [ecx + 0x4695a4]
and dword [ecx + 0x4695a4], 0x3e
nop
and dword [ecx + 0x4695a4], edi
test edx, esi
setne byte [ecx + 0x4695a4]
mov dword [ecx + 0x4695a4], esi
mov esi, dword [edx + 0x46a5a0]
mov dword [ecx + 0x469da8], esi
mov esi, dword [edx + 0x46a1a0]
mov dword [ecx + 0x4699a8], esi
mov esi, dword [edx + 0x469160]
mov edx, dword [edx + 0x468d60]
mov dword [ecx + 0x46bda8], edx
sete dl
mov edx, dword [ecx + 0x46896c]
and dword [ecx + 0x4695a8], 3
mov dword [ecx + 0x4695a8], edx
add edx, edx
add edx, edx
cmp esi, 0xfffffffc
sbb dword [ecx + 0x4695a8], edx
mov dword [ecx + 0x4695a8], esi
mov esi, dword [edx + 0x46a5a0]
mov dword [ecx + 0x469dac], esi
mov esi, dword [edx + 0x46a1a0]
mov dword [ecx + 0x4699ac], esi
mov esi, dword [edx + 0x469160]
mov edx, dword [edx + 0x468d60]
mov dword [ecx + 0x4695ac], esi
mov dword [ecx + 0x46bdac], edx
add ecx, 0x209b
add ecx, 0xffffdf75
cmp ecx, 0x400
jl 0x41466d
cmp byte [eax + 4], 0x81
lea edi, [ebp + edx*4 - 0x2ca6]
mov dword [0x43a004], 0x18
shl edi, 0x23
add ecx, dword [eax + 0xc]
sub dword [0x43a004], 0x18
shr edi, 0xfa
test ecx, ebx
setne dl
mov esi, dword [eax]
mov edx, dword [ebp + 8]
mov dword [edx + 0x100], esi
mov esi, dword [eax + 4]
dec edi
mov ebx, dword [eax]
lea ecx, [edx + 0x100]
sub edi, 0x61ee9e25
imul edi, eax
mov dword [ecx + 4], esi
mov esi, dword [eax + 8]
not edi
mov dword [ecx + 8], esi
mov esi, dword [eax + 0xc]
mov dword [ecx + 0xc], esi
mov edi, 6
or esi, 0x32
sub edi, 5
movzx esi, byte [edx + 0x100]
mov ebx, dword [edx + 0x100]
sub ecx, 0xffffffe9
sub ecx, 7
sub eax, 0x769f961a
sub eax, 0x896069d6
xor esi, ebp
inc ebx
cmp dword [edx + 0x200], edi
jle 0x414c5c
lea esp, [esp]
sub ebx, 0xfffff4de
sbb ebx, edx
dec ebx
test ebp, ebp
mov esi, dword [eax - 0x20]
not ebx
test edi, esi
mov ebx, esi
shr ebx, 0x10
movzx ebx, bl
test ecx, ecx
mov edx, esi
shr edx, 0x18
test ecx, eax
mov edx, dword [edx*4 + 0x469da0]
xor edx, dword [ebx*4 + 0x4699a0]
cmp dword [ebx*4 + 0x4699a0], 0xffffffff
mov ebx, esi
xor esi, edi
mov esi, dword [eax - 0x1c]
shr ebx, 8
mov esi, dword [eax - 0x18]
add esi, 0xfffffd11
movzx esi, bl
mov ebx, ebp
sub ebx, dword [eax - 0x18]
xor edx, dword [esi*4 + 0x4695a0]
shr ebx, 0x70
mov ebx, dword [eax - 0x20]
movzx esi, byte [eax - 0x20]
shr ebx, 0
and ebx, 0xfffffff6
xor edx, dword [esi*4 + 0x46bda0]
mov ebx, dword [ecx]
xor ebx, eax
inc edi
cmp ecx, ebx
lea ebx, [0xffffe159]
mov dword [ecx], edx
mov esi, dword [eax - 0x1c]
mov ebx, esi
inc edx
mov edx, dword [eax - 0x18]
shr ebx, 0x10
mov edx, eax
lea edx, [ebx + ecx*2 - 0x650a66ef]
movzx ebx, bl
xor edx, ecx
cmp eax, eax
mov edx, esi
shr edx, 0x18
test edi, esp
mov edx, dword [edx*4 + 0x469da0]
xor edx, dword [ebx*4 + 0x4699a0]
cmp ecx, ebx
mov ebx, esi
shl esi, 3
shr ebx, 8
mov esi, dword [ebp + 8]
xor esi, esp
movzx esi, bl
mov ebx, dword [esi*4 + 0x4695a0]
shl ebx, 0x3b
xor edx, dword [esi*4 + 0x4695a0]
test byte [eax - 0x20], 0x92
mov ebx, ecx
movzx esi, byte [eax - 0x1c]
seta bl
xor edx, dword [esi*4 + 0x46bda0]
inc ebx
mov ebx, dword [eax - 0x18]
add ecx, 0x10
lea ebx, [esi + edi*2]
xor ebx, edi
mov dword [ecx - 0xc], edx
mov esi, dword [eax - 0x18]
sbb edx, edx
neg ebx
mov ebx, esi
inc edx
mov edx, dword [ecx - 0xc]
shr ebx, 0x10
setne dl
mov edx, esi
cmp ebx, ebp
shr edx, 0x18
test byte [ecx - 0xc], dl
mov edx, dword [edx*4 + 0x469da0]
movzx ebx, bl
xor edx, dword [ebx*4 + 0x4699a0]
cmp dword [ecx - 0xc], 0xf76c7a5f
mov ebx, esi
xor esi, ebx
mov esi, dword [ecx - 4]
shr ebx, 8
mov esi, ebx
shl esi, 0xfa
movzx esi, bl
inc ebx
xor edx, dword [esi*4 + 0x4695a0]
movzx esi, byte [eax - 0x18]
xor edx, dword [esi*4 + 0x46bda0]
add eax, 0xfffffff0
mov dword [ecx - 8], edx
mov esi, dword [eax - 4]
mov ebx, esi
shr ebx, 0x10
mov edx, esi
shr edx, 0x18
mov edx, dword [edx*4 + 0x469da0]
movzx ebx, bl
xor edx, dword [ebx*4 + 0x4699a0]
mov ebx, esi
shr ebx, 8
movzx esi, bl
xor edx, dword [esi*4 + 0x4695a0]
movzx esi, byte [eax - 4]
xor edx, dword [esi*4 + 0x46bda0]
mov dword [ecx - 4], edx
mov edx, dword [ebp + 8]
cmp edi, dword [edx + 0x200]
jl 0x414abf
mov edx, dword [eax - 0x20]
mov dword [ecx], edx
mov edx, dword [eax - 0x1c]
mov dword [ecx + 4], edx
mov edx, dword [eax - 0x18]
mov dword [ecx + 8], edx
mov eax, dword [eax - 0x14]
pop edi
pop esi
mov dword [ecx + 0xc], eax
xor eax, eax
pop ebx
pop ebp
ret