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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x6c
mov eax, dword [0x4e27b4]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [0x4e3450]
lea ecx, [eax - 1]
imul ecx, eax
mov edi, ecx
mov edx, ecx
mov eax, ecx
and ecx, 0x2ffd3c60
xor edi, 1
and edx, 1
not eax
or edi, edx
mov ebx, eax
mov esi, edi
and ebx, 0xfffffffe
and edi, 0xf86e704
not esi
or ebx, edx
and esi, 0xf07918fb
or edi, esi
mov esi, ebx
xor esi, eax
and eax, 0xd002c39f
and esi, ebx
mov ebx, edi
xor edi, 0xf07918fb
or eax, ecx
xor ebx, 0x5808704
mov edx, edi
and edi, 0xa76781b
mov ecx, eax
mov dword [ebp - 0x60], eax
xor eax, 0xb10eab3f
and ebx, 0xf58987e4
xor ecx, 0xd002c39f
or ebx, edi
mov edi, esi
and esi, 0xf58987e4
not edi
or edx, edi
and edi, 0xa76781b
or esi, edi
mov edi, edx
not edi
xor esi, ebx
mov ebx, edx
and ebx, 0xe6e4cce7
and edi, 0x191b3318
or edi, ebx
mov ebx, esi
and esi, 0x191b3318
not ebx
or edx, ebx
and ebx, 0xe6e4cce7
or esi, ebx
not edx
mov ebx, eax
xor esi, edi
and ebx, ecx
or edx, esi
mov esi, edx
and edx, 0x30240318
not esi
mov edi, esi
or esi, 0x3826c31c
and edi, 0x802c004
or edx, edi
mov edi, edx
xor edx, 0x418938e6
xor edi, 0x240318
and edx, 0x718938e6
and edi, 0x826c318
or edi, edx
mov edx, esi
and esi, 0x718938e6
not edx
and edx, 0x86500401
or edx, esi
xor edx, edi
mov esi, edx
and edx, 0x3826c31c
not esi
and esi, 0xc7d93ce3
or edx, esi
mov esi, edx
and edx, 0x610c68a0
not esi
mov edi, esi
and edi, ecx
xor ecx, esi
and esi, 0x9ef3975f
or edx, esi
mov esi, dword [ebp - 0x60]
or ecx, edi
xor esi, 0x2ffd3c60
and eax, esi
mov esi, ebx
and esi, eax
xor eax, ebx
or eax, esi
mov esi, edx
and edx, 0x64a21a55
mov ebx, eax
not esi
and eax, 0x64a21a55
not ebx
and esi, 0x9b5de5aa
and ebx, 0x9b5de5aa
or edx, esi
or eax, ebx
xor eax, edx
mov edx, ecx
and ecx, 0x8fabfdb3
not edx
and edx, 0x7054024c
or ecx, edx
mov edx, eax
xor ecx, 0x8fabfdb3
and edx, ecx
xor ecx, eax
or ecx, edx
mov eax, ecx
and ecx, 0x1e18cb05
not eax
mov edx, eax
or eax, 0xf364388e
and edx, 0xe1e734fa
or ecx, edx
mov edx, ecx
xor ecx, 0x41042008
xor edx, 0x10000800
or ecx, 0x80a8400
and ecx, 0x4b0ea40c
and edx, 0xb0601882
or edx, ecx
mov ecx, eax
and eax, 0x4b0ea40c
not ecx
and ecx, 0x4914371
or ecx, eax
mov eax, dword [0x4e3454]
xor ecx, edx
mov edx, ecx
and ecx, 0xf364388e
not edx
and edx, 0xc9bc771
or ecx, edx
mov ecx, 0x451e946b
sete byte [ebp - 0x42]
cmp eax, 0xa
setl byte [ebp - 0x41]
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov ecx, 0x3aa795cf
nop dword [eax]
cmp ecx, 0xc7afebf
jg 0x411870
cmp ecx, 0xd157a566
jle 0x411830
cmp ecx, 0xd85f18a5
jg 0x411e11
cmp ecx, 0xd157a567
je 0x4117b0
cmp ecx, 0xd7bed401
jne 0x4117e0
mov eax, dword [ebp - 0x24]
mov ecx, 0x967db5e6
inc eax
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x1c]
jmp 0x4128f0
cmp ecx, 0x967db5e5
jg 0x411ec5
cmp ecx, 0x837bcf14
je 0x411ee2
cmp ecx, 0x94b2253c
jne 0x4117e0
mov eax, dword [ebp - 0x20]
mov ecx, 0x837bcf14
mov dword [ebp - 0x74], eax
cmp ecx, 0xc7afebf
jle 0x4117ec
nop word cs:[eax + eax]
nop dword [eax]
cmp ecx, 0x451e946a
jle 0x4118b0
cmp ecx, 0x5c3a0bba
jg 0x411e6e
cmp ecx, 0x451e946b
je 0x41249f
cmp ecx, 0x5047dad1
jne 0x4117e0
mov ecx, 0xd85f18a6
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
cmp ecx, 0xc7afec0
je 0x41288f
cmp ecx, 0x2ad0baa6
je 0x4128da
cmp ecx, 0x3aa795cf
jne 0x4117e0
mov eax, dword [ebp - 0x14]
add eax, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [0x4e3450]
lea ecx, [eax - 1]
imul ecx, eax
mov edx, ecx
mov eax, ecx
and ecx, 0xc0ccd71c
or edx, 0x60dcf77e
not eax
mov esi, edx
mov edi, eax
and edx, 0x9c091417
and eax, 0x3f3328e3
not esi
or edi, 0x9f230881
or ecx, eax
and esi, 0x3220880
mov eax, ecx
xor ecx, 0x6de2a3b2
or esi, edx
mov edx, edi
and edi, 0x9c091417
xor eax, 0x800c540c
not edx
and eax, 0xad2e74ae
and edx, 0x60d4e368
or ecx, eax
or edx, edi
mov eax, ecx
xor edx, esi
not eax
mov esi, edx
and edx, 0x236142b6
not esi
and esi, 0xdc9ebd49
or edx, esi
mov esi, edx
xor edx, 0x42918140
xor esi, 0xac024026
and edx, 0x52d18b51
and esi, 0xad2e74ae
or esi, edx
mov edx, esi
xor edx, 0x52d18b51
and edx, esi
mov esi, edx
xor esi, ecx
and ecx, edx
and esi, edx
not edx
and edx, eax
mov eax, esi
and esi, 0x48eaf599
or ecx, edx
not eax
mov edx, ecx
mov edi, eax
and ecx, 0x48eaf599
not edx
and edi, 0xb7150a66
or eax, edx
and edx, 0xb7150a66
or esi, edi
or ecx, edx
not eax
xor ecx, esi
or eax, ecx
mov ecx, eax
mov edx, eax
and eax, 0xad2e74ae
not ecx
and edx, 0x40c00900
and ecx, 0x12118251
or edx, ecx
xor edx, 0x40c00900
or eax, edx
mov edx, eax
mov ecx, eax
mov edi, eax
not edx
and ecx, 0x145ce290
and edi, 0xbf0a225e
mov esi, edx
and esi, 0xeba31d6f
or esi, ecx
mov ecx, esi
xor esi, 0x54a93f31
xor ecx, 0xab02004e
and ecx, 0xbf0a225e
or esi, ecx
mov ecx, edx
and ecx, 0x40f5dda1
mov ebx, esi
or edi, ecx
mov ecx, edi
xor ecx, edx
and edx, 0x1ce92f29
and ecx, edi
mov edi, esi
and esi, 0xe64f7a50
not edi
and edi, 0x19b085af
or edi, esi
mov esi, ecx
and ecx, 0x19b085af
not esi
or ebx, esi
and esi, 0xe64f7a50
or ecx, esi
not ebx
xor ecx, edi
mov esi, ebx
and esi, ecx
xor ecx, ebx
or ecx, esi
mov esi, ecx
or ecx, 0x6bd7884b
mov edi, ecx
not esi
and ecx, 0xe9cdb19c
not edi
or esi, 0x942877b4
and edi, 0x14204620
or edi, ecx
mov ecx, esi
and esi, 0xe9cdb19c
not ecx
and ecx, 0x2120843
or ecx, esi
xor ecx, edi
mov edi, eax
and eax, 0xe316d0d6
mov esi, ecx
or edx, eax
and ecx, 0xd4ddaa14
or edi, 0xfffffffe
not esi
mov eax, edx
xor edx, 0x1ce92f28
and esi, 0x2b2255eb
xor eax, 0x116d097
or ecx, esi
mov esi, edi
or edi, edx
and edx, 0xea882348
and eax, 0x1577dcb7
not esi
or eax, edx
not edi
or esi, 0xea882348
xor esi, eax
or edi, esi
mov eax, edi
mov esi, edi
not eax
and esi, 0x98a4d137
mov edx, eax
and eax, 0x675b2ec8
and edx, edi
or eax, esi
mov esi, edx
and edx, 0x675b2ec8
not esi
or edi, esi
and esi, 0x98a4d137
or edx, esi
not edi
mov esi, ecx
xor edx, eax
or edi, edx
mov eax, edi
and edi, 0x221a7c77
not eax
and eax, 0xdde58388
or edi, eax
mov eax, edi
xor edi, 0x99448188
xor eax, 0x221a0006
and edi, 0x9944fdf9
and eax, 0x66bb0206
or eax, edi
mov edi, ecx
mov edx, eax
xor eax, 0x208a0206
not edi
xor edx, 0x9944fdf9
and edi, 0x5771d451
and eax, 0xa88e2bae
xor esi, edx
and edx, 0x5771d451
and esi, ecx
and ecx, 0xa88e2bae
or eax, edx
or ecx, edi
mov edx, esi
and esi, 0x47a876e9
xor eax, ecx
not edx
mov ecx, eax
mov edi, edx
and eax, 0x47a876e9
not ecx
and edi, 0xb8578916
or edx, ecx
and ecx, 0xb8578916
or esi, edi
or eax, ecx
not edx
xor eax, esi
or edx, eax
mov ecx, edx
mov eax, edx
not ecx
and eax, 0xe784be2
mov esi, ecx
and esi, 0xf187b41d
or eax, esi
mov esi, eax
xor eax, 0xf187b41d
xor esi, 0xe2008a2
mov edi, eax
and edi, 0xa05de344
and esi, 0x5fa21cbb
or esi, edi
mov edi, ecx
and edi, edx
and edx, 0x1ef3cde3
mov ebx, edi
and edi, 0x5fa21cbb
not ebx
or eax, ebx
and ebx, 0xa05de344
or edi, ebx
not eax
xor edi, esi
or eax, edi
mov edi, ecx
mov esi, eax
and eax, 0x2c6867ab
not esi
and esi, 0xd3979854
or eax, esi
mov esi, eax
xor eax, 0xd3979854
xor esi, 0x2c6867ab
mov ebx, esi
mov dword [ebp - 0x4c], esi
mov esi, ecx
and esi, 0xe10c321c
or edx, esi
xor edx, 0x1ef3cde3
xor edi, edx
and edi, edx
mov edx, ebx
mov ebx, eax
and edx, 0xb5a96370
and ebx, 0x4a569c8f
mov esi, edi
mov dword [ebp - 0x58], edi
or ebx, edx
mov edx, edi
not esi
xor edx, 0xb5a96370
mov ecx, edx
and edx, edi
and ecx, esi
and esi, 0x24919da5
mov edi, ecx
and edi, edx
xor edx, ecx
mov ecx, ebx
or edx, edi
not ecx
mov edi, dword [ebp - 0x4c]
and ecx, edx
not edx
and edx, ebx
or edx, ecx
mov ecx, eax
and ecx, 0xdb6e625a
and edi, 0x24919da5
or edi, ecx
mov ecx, dword [ebp - 0x58]
or eax, ecx
and ecx, 0xdb6e625a
or esi, ecx
not eax
xor esi, edi
or eax, esi
mov ecx, eax
and eax, 0x8618b9f1
not ecx
and ecx, 0x79e7460e
or eax, ecx
mov ecx, edx
xor eax, 0x8618b9f1
and ecx, eax
xor eax, edx
or eax, ecx
mov ecx, eax
mov esi, eax
and eax, 0x3a4bfa2a
not ecx
and esi, 0xc5b405d5
mov edx, ecx
and edx, 0x3a4bfa2a
or esi, edx
mov edx, ecx
and edx, 0xc5b405d5
or edx, eax
mov eax, dword [0x4e3454]
xor edx, esi
mov esi, 0x9fe8bd4a
xor ecx, edx
test ecx, edx
setne cl
sete dl
cmp eax, 0xa
setl ch
cmp eax, 9
setg ah
xor ch, dl
mov dh, ah
xor dl, ah
or dh, cl
xor dl, 1
xor dh, 1
mov al, dl
or dh, ch
xor dh, 1
and al, dh
xor dh, dl
or dh, al
mov al, dh
mov dl, dh
xor al, 1
and al, dh
xor al, 1
xor dl, al
or al, dh
xor al, 1
or al, dl
mov dl, ah
xor dl, cl
xor dl, 1
or cl, dl
or dl, ah
mov ch, cl
mov ah, dl
xor ch, 1
xor ah, 1
mov dh, ch
mov bl, ah
and dh, cl
and bl, dl
mov bh, dh
xor dh, ch
and bh, ch
mov ch, bl
xor bl, ah
xor ch, 1
or dh, bh
or ch, dl
mov ah, dh
xor ch, 1
xor ah, 1
or ch, bl
and ah, ch
xor ch, 1
and ch, dh
or ch, ah
mov ah, cl
and ah, dl
xor dl, cl
mov cl, ch
or dl, ah
mov ah, al
xor dl, 1
xor ah, 1
and cl, dl
xor dl, ch
mov ch, ah
mov dh, ah
or dl, cl
and ch, al
mov cl, dl
or al, dl
and dh, ch
xor ch, ah
xor cl, 1
xor al, 1
or ch, dh
xor ah, cl
and cl, dl
or al, ah
xor cl, 1
mov ah, dl
xor ah, cl
or cl, dl
mov dl, ch
mov bh, al
mov dh, al
xor cl, 1
xor dl, 1
or cl, ah
and dl, cl
xor cl, 1
and cl, ch
mov ch, al
or cl, dl
mov dl, cl
xor dl, 1
mov ah, dl
mov bl, dl
and bh, dl
xor dl, al
xor al, 1
and ch, al
and ah, cl
or dl, bh
xor dh, ch
xor ch, 1
xor bl, ah
xor ah, 1
or ch, al
or ah, cl
mov cl, dl
xor ch, 1
xor ah, 1
or ch, dh
or ah, bl
mov al, ch
xor al, 1
and al, ah
xor ah, 1
and ah, ch
or ah, al
xor cl, ah
test cl, 1
mov ecx, 0xd157a567
cmovne esi, ecx
test dl, 1
mov ecx, 0x9fe8bd4a
cmovne ecx, esi
test ah, 1
jmp 0x41287b
cmp ecx, 0xd85f18a6
je 0x412904
cmp ecx, 0xe2e146c7
jne 0x4117e0
mov eax, dword [ebp - 0x3c]
mov ecx, dword [ebp + 8]
mov eax, dword [eax + 0x24]
mov edx, ecx
add eax, ecx
mov ecx, dword [ebp - 0x24]
movzx eax, word [eax + ecx*2]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x6c], 2
mov ecx, dword [ecx + 0x1c]
add ecx, edx
mov eax, dword [ecx + eax*4]
mov ecx, 0x6fc85137
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x70], eax
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
cmp ecx, 0x5c3a0bbb
je 0x412f32
cmp ecx, 0x6fc85137
jne 0x4117e0
mov eax, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x40]
call fcn.004291e0
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x6c], 0
mov edx, dword [ebp - 0x18]
mov ecx, 0x837bcf14
mov eax, 0xd7bed401
cmove ecx, eax
mov dword [ebp - 0x74], edx
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
cmp ecx, 0x967db5e6
je 0x412f5e
cmp ecx, 0x9fe8bd4a
jne 0x4117e0
jmp 0x412f96
mov eax, dword [0x4e3450]
lea ecx, [eax - 1]
imul ecx, eax
mov eax, ecx
mov edx, ecx
not eax
and edx, 0x2509b134
mov esi, eax
mov dword [ebp - 0x4c], eax
and esi, 0xdaf64ecb
or edx, esi
mov edi, edx
xor edx, 0x98e60808
or edx, 0x4711d7d7
xor edi, 0x20000000
mov esi, edx
and edi, 0x28e20800
and esi, 0xd30ce3aa
or edi, esi
mov esi, ecx
xor esi, 0xb8ee2828
and esi, ecx
mov ebx, esi
and esi, 0x2cf31c55
not ebx
or edx, ebx
and ebx, 0xd30ce3aa
or esi, ebx
not edx
xor esi, edi
mov edi, ecx
or edx, esi
and edi, 0x81a48a87
mov esi, edx
and edx, 0xb8ee2828
not esi
and esi, 0x4711d7d7
or edx, esi
mov esi, edx
and edx, 0x1f94181a
not esi
and esi, 0xe06be7e5
or edx, esi
mov esi, edx
xor edx, 0x20020701
xor esi, 0x10040018
and edx, 0x26821703
and esi, 0x104480bc
or esi, edx
mov edx, eax
and edx, 0x7e5b7578
mov ebx, esi
xor esi, 0xe42a5103
or edi, edx
xor ebx, 0x104480bc
and esi, 0xf42ad18b
xor edi, 0xb7621d38
or edi, eax
mov eax, ebx
mov edx, edi
xor eax, edi
and edi, 0xf42ad18b
not edx
and eax, ebx
and ebx, 0x2c40634
and edx, 0xbd52e74
or ebx, esi
mov esi, eax
or edx, edi
mov edi, ecx
xor edx, ebx
xor edi, 0xfc00fd3a
and esi, edx
xor edx, eax
and edi, ecx
and ecx, 0xe000e112
or edx, esi
mov eax, edx
and edx, 0xce8f3b3e
not eax
and eax, 0x3170c4c1
or edx, eax
mov eax, edx
and edx, 0x10543aa
not eax
and eax, 0xfefabc55
or edx, eax
mov eax, edx
xor edx, 0x8144a800
xor eax, 0x4b30044
and edx, 0x8344b891
and eax, 0x7cbb476e
or edx, eax
mov eax, dword [ebp - 0x4c]
mov esi, edx
xor esi, 0x7cbb476e
and eax, 0x1c001c28
or ecx, eax
xor ecx, 0xe000e112
mov eax, ecx
and eax, edi
xor edi, ecx
or edi, eax
mov eax, edi
and edi, 0xfc00fd3a
not eax
and eax, 0x3ff02c5
or edi, eax
mov ecx, edi
mov eax, edi
and edi, 0x367f0dcb
not ecx
and eax, 0x75b02d8a
and ecx, 0x8a4fd275
or eax, ecx
mov ecx, edx
xor edx, 0xb53bb55a
xor eax, 0x75b02d8a
mov ebx, edx
and edx, esi
xor ecx, 0x8344b891
mov esi, eax
and ebx, ecx
and esi, 0xc980f234
or edi, esi
mov esi, ebx
and esi, edx
xor edx, ebx
or edx, esi
mov esi, edx
not esi
and esi, edi
not edi
and edi, edx
mov edx, dword [0x4e3454]
or edi, esi
mov esi, ecx
and esi, eax
xor eax, ecx
or eax, esi
mov esi, dword [ebp - 0x74]
mov ecx, eax
and eax, 0x57a218f5
not ecx
and ecx, 0xa85de70a
or eax, ecx
mov ecx, edi
mov dword [ebp - 0x14], esi
xor eax, 0x57a218f5
and ecx, eax
xor eax, edi
or eax, ecx
mov ecx, eax
and eax, 0xa58b894
not ecx
and ecx, 0xf5a7476b
or ecx, eax
mov eax, ecx
xor ecx, 0x95854209
xor eax, 0x402090
and ecx, 0x9f9dda0d
and eax, 0x606225f2
or eax, ecx
mov ecx, eax
xor eax, 0x15859a00
xor ecx, 0x400000b2
and eax, 0x35e7bf40
and ecx, 0xca1840bf
or ecx, eax
xor ecx, 0x35e7bf40
cmp ecx, 0xffffffff
setne al
sete ch
cmp edx, 9
setg bh
cmp edx, 0xa
mov byte [ebp - 0x54], ch
mov byte [ebp - 0x4c], al
setl dl
xor ch, al
mov byte [ebp - 0x45], bh
mov al, ch
mov cl, dl
mov ah, dl
mov byte [ebp - 0x44], dl
mov byte [ebp - 0x58], ch
xor al, 1
or cl, bh
mov bl, al
mov dh, cl
mov dl, al
and bl, ch
xor dh, 1
mov ch, cl
and dl, bl
xor bl, al
and ch, dh
mov byte [ebp - 0x4e], dh
or bl, dl
mov dl, cl
and dl, ch
xor ch, cl
or ch, dl
mov dl, dh
mov cl, ch
and ch, bh
or dl, bh
xor cl, 1
xor dl, 1
and cl, ah
or ch, cl
mov cl, dh
xor cl, bh
mov bh, bl
xor ch, 1
xor bh, 1
or dl, cl
mov cl, ch
mov dh, bh
or ch, dl
xor cl, dl
mov dl, bh
and dh, bl
xor ch, 1
and dl, dh
xor dh, bh
xor bh, bl
or ch, cl
or dh, dl
and bh, bl
mov bl, dh
mov cl, dh
mov ah, bh
xor bl, 1
xor ah, 1
or cl, bl
mov al, cl
mov dl, cl
xor al, 1
mov byte [ebp - 0x43], al
and dl, al
mov al, cl
and al, dl
xor dl, cl
or dl, al
mov al, dl
and dl, bh
or bh, byte [ebp - 0x43]
xor al, 1
and al, ah
xor ah, cl
or dl, al
xor bh, 1
mov al, dl
or bh, ah
xor bh, 1
and al, bh
xor bh, dl
or bh, al
mov al, bh
xor al, 1
and bh, al
xor bh, 1
mov cl, bh
or bh, al
xor cl, al
xor bh, 1
movzx eax, byte [ebp - 0x4c]
or bh, cl
mov cl, byte [ebp - 0x58]
xor al, cl
not al
and al, cl
mov cl, al
mov dl, al
and dh, al
xor cl, 1
xor dl, cl
and dl, al
or al, bl
and bl, cl
mov ah, dl
or bl, dh
mov cl, al
xor ah, 1
xor bl, 1
and ah, bh
xor bh, 1
xor cl, bl
or bl, al
and bh, dl
xor bl, 1
or bh, ah
or bl, cl
xor bl, bh
and bh, bl
mov eax, ebx
xor al, bh
xor bh, 1
or bh, bl
xor al, 1
xor bh, 1
or bh, al
mov dl, bh
xor dl, 1
mov eax, edx
mov cl, dl
mov byte [ebp - 0x43], dl
and al, bh
and cl, al
xor al, dl
mov dl, ch
xor dl, 1
or al, cl
mov bl, dl
mov cl, al
and bl, ch
xor cl, 1
mov ah, bl
mov dh, bl
or cl, al
xor bl, ch
xor ah, 1
or bl, dl
and dh, ah
xor bl, 1
xor dh, 1
mov al, dh
or dh, ah
xor al, ah
xor dh, 1
mov ah, byte [ebp - 0x4e]
or dh, al
xor dh, ch
mov al, dh
and al, bl
xor bl, dh
mov dh, byte [ebp - 0x44]
or bl, al
mov al, cl
xor al, 1
and cl, al
mov dl, al
xor cl, 1
xor dl, cl
or cl, al
xor cl, 1
or cl, dl
mov dl, cl
and cl, bh
xor dl, 1
and dl, byte [ebp - 0x43]
or cl, dl
mov dl, al
or al, bh
xor dl, bh
xor al, 1
xor cl, 1
mov bh, byte [ebp - 0x58]
or al, dl
mov dl, cl
or cl, al
xor dl, al
xor cl, 1
or cl, dl
mov dl, byte [ebp - 0x4c]
mov al, cl
xor al, 1
or al, bl
xor bl, 1
or bl, cl
and bh, dl
mov ecx, ebx
or bl, al
xor bh, 1
xor cl, al
mov al, dh
xor bl, 1
and dh, dl
xor al, ah
or bl, cl
and ah, al
xor ah, 1
mov cl, ah
or ah, al
xor cl, al
xor ah, 1
mov al, bh
or ah, cl
xor bh, ah
or al, ah
xor bh, 1
mov ecx, eax
and bh, ah
xor cl, bh
xor bh, 1
or bh, al
xor cl, 1
movzx eax, byte [ebp - 0x54]
xor bh, 1
or bh, cl
movzx ecx, byte [ebp - 0x45]
mov ch, bh
and al, cl
or cl, dl
mov dl, bh
xor dl, 1
xor cl, 1
or dh, al
mov eax, ecx
mov ah, dl
and ah, bh
and al, dh
xor dh, cl
or dh, al
xor ah, 1
mov cl, dh
xor ch, ah
or ah, bh
mov al, dh
xor dl, dh
xor ah, 1
xor cl, 1
and al, cl
or ah, ch
mov ch, dh
or cl, bh
and ch, al
xor al, dh
xor cl, 1
or al, ch
mov ch, ah
or cl, dl
xor ch, 1
mov edx, ecx
and ch, al
xor al, 1
and al, ah
mov ah, bl
or al, ch
xor ah, 1
xor dl, al
xor al, 1
mov ch, ah
or al, cl
xor dl, 1
xor al, 1
or al, dl
mov cl, al
mov edx, eax
xor cl, 1
or cl, al
xor dl, cl
or cl, al
xor cl, 1
or cl, dl
mov al, cl
xor al, 1
mov dh, al
mov byte [ebp - 0x4c], al
mov al, ah
or ah, bl
and al, bl
mov bh, ah
xor ch, al
xor al, 1
xor bh, 1
or al, bl
mov bl, cl
xor al, 1
or bl, dh
or al, ch
mov ch, al
mov edx, eax
xor ch, 1
xor dl, ch
or ch, cl
and dl, al
xor al, byte [ebp - 0x4c]
xor ch, 1
mov dh, dl
xor dh, 1
and bh, dh
or dh, ah
and ah, dl
mov dl, bl
or ah, bh
mov bh, dh
xor dl, 1
xor ah, 1
xor bh, ah
or ah, dh
mov dh, cl
and dh, byte [ebp - 0x4c]
xor ah, 1
or ah, bh
mov bh, cl
and bh, dh
xor dh, cl
or dh, bh
mov bh, dh
and dh, dl
mov dl, cl
xor bh, 1
and dl, bl
and bh, bl
xor bl, cl
mov cl, ch
or dh, bh
and cl, al
xor al, ch
or bl, dl
or al, cl
xor dh, 1
mov dl, dh
or dh, bl
mov ecx, eax
xor dl, bl
xor dh, 1
xor cl, 1
or dh, dl
mov dl, cl
and dl, al
xor dh, ah
xor cl, dl
xor dl, 1
or dl, al
mov al, dh
xor dl, 1
or dl, cl
mov ecx, 0x3aa795cf
xor al, dl
or dl, dh
xor dl, 1
or dl, al
mov ah, dl
xor ah, al
test dl, 1
mov edx, 0xd157a567
cmovne ecx, edx
test al, 1
not ah
cmove ecx, edx
test ah, 1
mov edx, 0x3aa795cf
cmovne ecx, edx
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
movzx edx, byte [ebp - 0x42]
mov esi, 0xd85f18a6
mov edi, 0x5047dad1
mov eax, edx
mov ecx, edx
mov byte [ebp - 0x5c], dl
xor al, 1
movzx ebx, byte [ebp - 0x41]
mov ah, al
or cl, al
mov bh, al
mov byte [ebp - 0x45], al
and ah, dl
mov edx, eax
mov ch, cl
xor dl, ah
and bh, ah
xor ch, 1
xor ah, 1
or bh, dl
mov byte [ebp - 0x4d], dl
mov dh, bl
and ch, bh
xor bh, 1
and bh, cl
or bh, ch
mov ch, cl
xor cl, al
and ch, al
xor bh, 1
or cl, ch
mov ch, bh
or bh, cl
xor ch, cl
xor bh, 1
or bh, ch
mov ch, bl
xor ch, 1
mov cl, ch
mov al, ch
and cl, bl
xor al, cl
and cl, ch
or cl, al
xor cl, 1
mov dl, cl
or cl, bl
xor dl, bl
or bl, ch
xor cl, 1
or dh, bl
xor bl, ch
or cl, dl
xor dh, 1
xor bl, 1
mov byte [ebp - 0x43], cl
mov cl, bh
mov ch, dh
and ch, bl
xor bl, dh
or bl, ch
mov al, bl
mov byte [ebp - 0x54], bl
xor al, 1
mov ch, al
mov dh, al
mov byte [ebp - 0x58], al
and ch, bl
mov bl, byte [ebp - 0x5c]
xor al, ch
and dh, ch
mov byte [ebp - 0x4e], ch
or dh, al
mov byte [ebp - 0x44], al
mov ch, dh
xor ch, 1
or ah, bl
mov al, ch
or ch, dh
xor ah, 1
xor al, dh
xor ch, 1
or ah, byte [ebp - 0x4d]
or ch, al
mov al, bh
xor al, 1
mov byte [ebp - 0x4c], ch
xor cl, al
or bh, al
mov byte [ebp - 0x4d], al
mov edx, ecx
and cl, al
mov al, bh
mov ch, ah
mov byte [ebp - 0x5b], cl
and cl, bh
xor al, 1
mov bh, dl
mov dh, ch
or bh, al
mov byte [ebp - 0x59], al
xor dh, 1
mov byte [ebp - 0x5a], cl
mov ah, bh
mov al, bh
or ch, dh
xor ah, 1
mov dl, ah
or al, ah
and dl, dh
xor dh, ah
and ah, al
xor al, 1
mov cl, al
or dl, dh
xor dh, 1
xor cl, bh
and cl, al
and al, bh
or al, ah
mov ah, cl
xor cl, al
xor ah, 1
xor al, 1
or al, ah
mov ah, ch
xor al, 1
and bl, ah
or al, cl
mov cl, ch
mov ch, byte [ebp - 0x45]
xor cl, 1
xor al, 1
and cl, ch
or bl, cl
mov cl, ah
xor ah, ch
and cl, ch
xor bl, 1
or ah, cl
mov ecx, ebx
or bl, ah
xor cl, ah
xor bl, 1
or bl, cl
mov ecx, eax
xor cl, bl
or al, bl
xor cl, 1
xor al, 1
and cl, bl
mov ah, cl
and ah, al
xor al, cl
mov cl, dh
or dh, dl
xor cl, dl
xor dh, 1
or al, ah
mov dl, byte [ebp - 0x43]
or dh, cl
mov cl, dh
xor cl, 1
mov ah, cl
and ah, dh
xor cl, ah
xor ah, 1
or ah, dh
xor ah, 1
or ah, cl
mov ecx, edx
xor ah, al
mov bl, ah
xor bl, 1
and bl, al
mov al, bl
xor bl, ah
and al, ah
or bl, al
mov eax, edx
xor al, 1
and cl, al
mov ah, al
xor cl, 1
xor ah, cl
or cl, al
or al, dl
movzx edx, byte [ebp - 0x4c]
xor cl, 1
or cl, ah
mov bh, dl
xor bh, 1
mov dh, bh
mov ah, bh
or dh, dl
or ah, dh
xor dh, bh
xor ah, 1
mov ch, ah
xor ah, dh
and ch, dh
mov dh, al
or ah, ch
mov ch, cl
xor dh, 1
xor ch, 1
xor ah, 1
mov dl, ch
and dh, ch
and ch, cl
or dl, al
and al, cl
xor ch, 1
xor dl, 1
or al, dh
mov dh, dl
and dh, al
xor al, dl
mov dl, ah
or al, dh
mov dh, byte [ebp - 0x5b]
xor dl, al
or ah, al
xor dl, 1
and dl, al
xor dl, 1
xor dh, 1
mov al, dl
or dl, ah
xor al, ah
xor dl, 1
mov ah, byte [ebp - 0x4c]
or dl, al
mov al, cl
xor al, ch
or ch, cl
xor ch, 1
or ch, al
mov al, ah
xor al, cl
or cl, ah
xor ch, bh
xor cl, 1
or cl, al
mov al, ch
xor cl, 1
and al, cl
xor cl, ch
mov ch, byte [ebp - 0x58]
or cl, al
mov eax, ecx
xor al, 1
mov ah, al
and ah, cl
xor al, ah
xor ah, 1
or ah, cl
xor ah, 1
or ah, al
xor ah, dl
mov al, ah
xor al, 1
and al, dl
mov dl, bl
mov cl, al
xor al, ah
and cl, ah
or al, cl
mov cl, bl
xor cl, 1
or dl, cl
mov ah, dl
and cl, dl
xor ah, 1
and ah, bl
or ah, cl
mov cl, bl
and cl, dl
xor dl, bl
xor ah, 1
or dl, cl
mov cl, ah
or ah, dl
xor cl, dl
xor ah, 1
or ah, cl
mov cl, al
xor cl, 1
xor ah, 1
and al, cl
mov dl, al
xor al, cl
and dl, cl
mov cl, ah
or al, dl
mov dl, byte [ebp - 0x59]
xor cl, al
or ah, al
xor cl, 1
and cl, al
xor cl, 1
mov al, cl
or cl, ah
xor al, ah
xor cl, 1
mov ah, byte [ebp - 0x4e]
or cl, al
mov al, byte [ebp - 0x54]
xor ah, 1
xor ch, al
or ah, al
and ch, al
mov al, dl
xor ah, 1
xor al, dh
and dh, dl
or ah, byte [ebp - 0x44]
xor ch, 1
or dh, byte [ebp - 0x5a]
and al, dl
mov dl, al
and dl, dh
xor dh, al
mov al, ah
xor al, 1
or dh, dl
or ah, al
mov dl, ah
and dl, ch
xor ch, ah
or dl, ch
mov ah, ch
xor dl, 1
and ah, dl
xor dl, ch
or dl, ah
xor dl, dh
mov dh, byte [ebp - 0x4d]
mov ah, dl
mov ebx, edx
xor ah, 1
and ah, dl
mov ch, dh
xor ah, 1
or ch, al
xor al, dh
xor bl, ah
or ah, dl
xor al, 1
mov dh, ch
xor ah, 1
xor dh, al
or al, ch
or ah, bl
xor al, 1
or al, dh
mov ch, al
mov dh, al
mov ebx, eax
xor ch, 1
and dh, ch
and bl, dh
xor dh, al
mov al, dl
xor al, ch
or ch, dl
or dh, bl
xor ch, 1
xor dh, ah
or ch, al
mov al, ch
xor al, dh
xor dh, 1
or dh, ch
xor al, 1
xor dh, 1
or dh, al
mov al, dh
mov dl, dh
xor al, 1
or dl, al
mov ah, dl
mov ch, dl
xor dl, dh
xor ah, 1
and ch, al
and dh, ah
or ah, al
or dh, ch
xor ah, 1
xor dh, 1
or ah, dl
mov al, dh
or dh, ah
xor al, ah
xor dh, 1
or dh, al
mov al, dh
xor al, 1
mov dl, al
or dl, dh
xor al, dl
or dl, dh
xor al, 1
xor dl, 1
or dl, al
mov eax, ecx
xor al, 1
mov ah, al
xor al, dl
and ah, dl
or al, ah
mov ah, dl
xor dl, cl
or ah, cl
xor dl, 1
xor ah, 1
and dl, cl
mov cl, ah
and cl, dl
xor dl, ah
or dl, cl
mov ecx, eax
xor cl, dl
xor dl, 1
xor cl, 1
or dl, al
mov eax, ecx
xor al, dl
test cl, 1
mov ecx, 0x5047dad1
cmovne ecx, esi
test dl, 1
cmovne ecx, edi
test al, 1
cmove ecx, esi
cmp ecx, 0xc7afebf
jg 0x411870
jmp 0x4117ec
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x30], ecx
add eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x40]
push eax
call fcn.00412fb0
push 0x235
push dword [ebp - 0x40]
call fcn.00404f20
add esp, 8
cmp eax, dword [ebp + 0xc]
mov ecx, 0x5c3a0bbb
mov eax, 0xe2e146c7
cmove ecx, eax
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
mov dword [ebp - 0x60], 0
mov ecx, 0x967db5e6
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x78], eax
cmp ecx, 0xc7afebf
jg 0x411870
jmp 0x4117ec
push eax
sub esp, 0x14
mov eax, esp
mov dword [ebp - 0x40], eax
mov eax, dword [ebp + 8]
mov ecx, eax
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + ecx + 0x78]
add eax, ecx
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 0x20]
add eax, ecx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x58], eax
mov eax, dword [0x4e3450]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
mov ebx, edx
and edx, 0xe11c9d76
not eax
and ebx, 0x64fc3949
mov ecx, eax
and eax, 0x1ee36289
or edx, eax
and ecx, 0x9b03c6b6
mov eax, edx
xor edx, 0x16fa2acd
or ebx, ecx
xor eax, 0xe1049532
mov ecx, ebx
and ebx, 0xe2840039
and eax, 0xf7e6b7bb
not ecx
or edx, eax
and ecx, 0x1562b782
mov eax, edx
and edx, 0x6b923384
or ebx, ecx
not eax
mov esi, ebx
mov dword [ebp - 0x54], ebx
xor ebx, 0x46e22683
and eax, 0x946dcc7b
xor esi, 0x7186868b
or edx, eax
and ebx, esi
mov ecx, edx
xor edx, 0x4294423
xor ecx, 0x6b923384
and edx, 0x47a955a7
mov eax, ecx
and ecx, 0xc89b57b3
and eax, 0xb856aa58
or eax, edx
mov edx, esi
or edx, 0xc89b57b3
mov dword [ebp - 0x4c], eax
mov eax, edx
mov edi, edx
not eax
and edi, 0xd351370b
and eax, 0x24248044
or eax, edi
mov edi, ebx
and ebx, 0x24a680b0
not edi
or edx, edi
and edi, 0xd3513f0b
or ebx, edi
not edx
xor ebx, eax
mov eax, dword [ebp - 0x4c]
or edx, ebx
mov ebx, eax
xor eax, 0x70cdfdeb
xor ebx, 0xb856aa58
and eax, ebx
and ebx, 0x83ec903
mov edi, eax
and edi, ecx
xor ecx, eax
mov eax, edx
and edx, 0xb5259d68
not eax
or ecx, edi
and eax, 0x42da2297
or edx, eax
mov eax, ecx
and ecx, 0xbd25dd68
not eax
and eax, 0x42da2297
or ecx, eax
mov eax, esi
xor ecx, edx
mov edx, dword [ebp - 0x54]
and eax, 0xf7c036b8
xor edx, 0x8384900
and edx, 0x83ec903
or edx, eax
mov eax, dword [ebp - 0x4c]
xor eax, 0x47a955a7
or esi, eax
and eax, 0xf7c136fc
or ebx, eax
not esi
xor ebx, edx
or esi, ebx
mov eax, esi
and esi, 0x9fa634db
not eax
and eax, 0x6059cb24
or esi, eax
mov eax, ecx
and ecx, 0xab532f4b
not eax
mov edx, eax
and edx, 0x54acd0b4
or ecx, edx
mov edx, esi
xor esi, 0x6059cb24
xor edx, 0x8b02244b
or eax, esi
and esi, 0x54acd0b4
and edx, 0xab532f4b
not eax
or edx, esi
xor edx, ecx
or eax, edx
mov ecx, eax
and eax, 0x9c862814
not ecx
mov edx, ecx
or ecx, 0x8194844
and edx, 0x6379d7eb
mov edi, ecx
and ecx, 0x3d3ee70e
or eax, edx
not edi
mov esi, eax
xor eax, 0x184000
and edi, 0xc2c010b1
xor esi, 0x800
or eax, 0x3526a70a
or edi, ecx
and eax, 0x3d3ee70e
and esi, 0x10840
or esi, eax
xor edi, esi
mov edx, edi
mov eax, edi
xor edx, 0xfffffffe
and eax, 0xc123c9a7
and edx, edi
not edi
mov esi, edi
and esi, 0x3edc3658
or eax, esi
xor eax, 0x3edc3659
mov esi, eax
xor esi, edi
and edi, 0xfffffffe
and esi, eax
mov eax, edi
and eax, edx
xor edx, edi
mov edi, esi
mov ecx, esi
or edx, eax
not edi
mov eax, edx
and edi, 0xa30b9478
and edx, 0x5cf46b87
not eax
xor ecx, eax
and eax, 0xa30b9478
and ecx, esi
and esi, 0x5cf46b87
or edx, eax
or esi, edi
mov eax, ecx
xor edx, esi
and eax, edx
xor edx, ecx
or edx, eax
mov eax, edx
mov esi, edx
mov ebx, edx
xor esi, 0x6c530449
not eax
and ebx, 0x44520448
mov ecx, eax
and esi, edx
and eax, 0x2df31c28
and edx, 0xd20ce3d7
or edx, eax
and ecx, 0x28010001
mov eax, edx
xor edx, 0x2df31c28
or ebx, ecx
xor eax, 0xd20ce3d7
xor ebx, 0x44520448
or edx, eax
mov edi, ebx
mov eax, edx
and edi, esi
xor esi, ebx
and edx, 0xe978f3f6
not eax
or esi, edi
and eax, 0x16870c09
mov ecx, esi
and esi, 0xf436c6d4
or edx, eax
not ecx
mov eax, edx
xor edx, 0x16870c09
and ecx, 0xbc9392b
xor eax, 0xe978f3f6
or esi, ecx
mov ebx, eax
mov dword [ebp - 0x4c], eax
mov eax, edx
mov ecx, esi
and edx, 0x77f04146
and eax, 0xc2d2cd35
and ebx, 0x3d2d32ca
xor ecx, 0x679a3d62
or ebx, eax
mov eax, esi
xor esi, 0x5ab70fa8
mov dword [ebp - 0x54], ecx
xor eax, 0x9865c29d
and esi, ecx
mov ecx, eax
mov edi, esi
and ecx, 0x3d2d32ca
and edi, ecx
xor ecx, esi
or ecx, edi
mov esi, ecx
and ecx, 0xb14f3fdb
not esi
and esi, 0x4eb0c024
or ecx, esi
mov esi, ebx
and ebx, 0xb14f3fdb
not esi
and esi, 0x4eb0c024
or ebx, esi
mov esi, dword [ebp - 0x54]
xor ebx, ecx
mov ecx, eax
and ecx, 0x880fbeb9
and esi, 0x77f04146
or esi, ecx
mov ecx, dword [ebp - 0x4c]
or eax, ecx
and ecx, 0x880fbeb9
or edx, ecx
not eax
xor edx, esi
mov esi, dword [0x4e3454]
or eax, edx
mov ecx, eax
and eax, 0x4d5d7c29
not ecx
and ecx, 0xb2a283d6
or eax, ecx
mov ecx, ebx
xor eax, 0x4d5d7c29
and ecx, eax
xor eax, ebx
or eax, ecx
mov ecx, eax
and eax, 0xbf43ffc9
not ecx
mov edx, ecx
and edx, 0x40bc0036
or eax, edx
mov edx, ecx
xor eax, 0xbf43ffc9
and edx, eax
xor eax, ecx
or eax, edx
cmp eax, 0xffffffff
sete dh
setne bh
cmp esi, 9
setg ch
cmp esi, 0xa
mov byte [ebp - 0x4c], bh
mov byte [ebp - 0x44], dh
mov esi, 0x5047dad1
setl dl
mov byte [ebp - 0x45], ch
mov eax, edx
mov cl, dl
mov byte [ebp - 0x54], dl
xor al, ch
xor al, 1
xor cl, al
xor cl, 1
mov ah, cl
and cl, al
xor al, ch
and al, ch
xor cl, 1
or ah, dl
xor al, 1
mov bl, cl
xor bl, al
or al, cl
xor al, 1
or al, bl
mov bl, al
and al, ah
xor ah, 1
xor bl, 1
mov cl, ah
xor cl, bl
and bl, ah
and cl, ah
mov ah, bh
or bl, al
xor ah, dh
mov al, cl
mov bh, ah
and al, bl
xor bl, cl
xor bh, 1
or bl, al
mov al, ah
and bh, ah
and al, bh
xor bh, ah
or bh, al
mov dh, bh
mov ah, bh
mov al, bh
xor dh, 1
and ah, dh
or al, dh
mov cl, ah
xor ah, 1
xor al, 1
mov ch, ah
xor cl, bh
xor ah, dh
or ch, dh
xor ch, 1
or cl, ch
or ah, ch
mov edx, ecx
and dl, al
xor al, cl
or al, dl
movzx edx, byte [ebp - 0x4c]
mov ecx, edx
xor cl, al
xor cl, 1
and cl, al
or al, dl
xor al, 1
mov edx, ecx
and dl, al
xor al, cl
or al, dl
movzx edx, byte [ebp - 0x44]
mov ecx, edx
xor ah, dl
mov dh, dl
xor cl, bh
or bh, dl
xor bh, 1
or bh, cl
mov cl, ah
xor bh, 1
and cl, bh
xor bh, ah
or bh, cl
xor bh, al
and al, bh
mov cl, bh
xor cl, al
xor al, 1
or al, bh
xor cl, 1
xor al, 1
or al, cl
mov ecx, ebx
xor cl, 1
mov dl, cl
and dl, bl
xor cl, dl
xor dl, 1
or dl, bl
xor dl, 1
or dl, cl
mov ah, dl
xor ah, 1
or ah, dl
mov dl, al
xor ah, 1
xor dl, 1
xor bl, ah
or al, dl
xor bl, 1
xor al, 1
and ah, bl
xor dl, al
xor ah, 1
mov cl, ah
or ah, bl
xor cl, bl
xor ah, 1
or ah, cl
mov ecx, edx
and dl, al
xor cl, 1
mov al, dl
and al, cl
xor dl, cl
movzx ecx, byte [ebp - 0x45]
or dl, al
mov ebx, edx
xor bl, ah
and dl, bl
and bl, ah
and dh, cl
mov eax, edx
and al, bl
xor bl, dl
mov dl, byte [ebp - 0x4c]
or bl, al
mov eax, ecx
or cl, dl
xor al, dl
xor cl, 1
or cl, al
mov ch, cl
mov cl, byte [ebp - 0x54]
and cl, dl
or cl, dh
mov eax, ecx
mov edx, ecx
xor al, 1
mov ah, al
and ah, cl
mov cl, al
xor cl, ah
xor ah, 1
or ah, dl
mov dl, ch
xor ah, 1
xor dl, 1
or ah, cl
mov cl, ch
and dl, ah
xor ah, 1
and cl, al
xor al, ch
and ah, ch
or al, cl
or ah, dl
xor ah, 1
mov cl, ah
or ah, al
xor cl, al
xor ah, 1
or ah, cl
mov al, ah
xor al, 1
or al, ah
mov ecx, eax
mov edx, eax
xor cl, 1
and dl, cl
mov ch, cl
xor dl, 1
xor ch, dl
or dl, cl
mov cl, ah
xor dl, 1
and cl, al
xor al, ah
or dl, ch
or al, cl
xor dl, ah
mov ah, bl
xor dl, 1
mov ecx, edx
xor cl, al
or al, dl
xor al, 1
or al, cl
mov ecx, eax
xor cl, 1
and al, cl
mov edx, eax
xor al, cl
and dl, cl
or al, dl
mov edx, ebx
mov ecx, eax
xor dl, 1
mov ch, al
xor cl, 1
and ah, cl
and cl, al
and ch, cl
xor cl, al
and al, dl
or ah, al
or cl, ch
mov al, ah
xor al, dl
and al, ah
mov ah, dl
and ah, bl
xor dl, ah
xor ah, 1
or ah, bl
xor ah, 1
or ah, dl
mov dl, ah
xor dl, 1
and dl, cl
xor cl, 1
and cl, ah
or cl, dl
mov edx, eax
xor dl, 1
xor cl, 1
mov ah, dl
xor al, cl
and ah, cl
xor cl, dl
mov edx, eax
or cl, ah
xor dl, cl
test cl, 1
mov ecx, 0x2ad0baa6
cmovne ecx, esi
test al, 1
mov eax, dword [ebp - 0x58]
not dl
cmovne ecx, esi
test dl, 1
mov edx, 0x2ad0baa6
cmove ecx, edx
mov eax, dword [eax + 0x18]
mov dword [ebp - 0x34], eax
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x6c], 0
mov ecx, 0x6fc85137
add eax, 4
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x68], eax
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
mov eax, dword [ebp - 0x78]
mov edx, 0xc7afec0
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x24]
cmp ecx, eax
mov ecx, 0x94b2253c
cmovb ecx, edx
cmp ecx, 0xc7afebf
jle 0x4117ec
jmp 0x411870
mov esi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004b91e8
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret