Function at 0x1004a7e6
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x6c
mov eax, 0xadf6c6df
lea esi, [ebp - 0x78]
lea edi, [ebp - 0x2c]
cmp eax, 0xf0662f03
jg 0x1004a835
cmp eax, 0xa5b948ea
jle 0x1004a872
cmp eax, 0xa5b948eb
je 0x1004a8bb
cmp eax, 0xadf6c6df
je 0x1004a8ce
cmp eax, 0xe67d740f
jne 0x1004a7fa
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov eax, 0x6eaad157
jmp 0x1004a7fa
cmp eax, 0x3407974e
jle 0x1004a898
cmp eax, 0x3407974f
je 0x1004a927
cmp eax, 0x6eaad157
je 0x1004a951
cmp eax, 0x7dc0c0ce
jne 0x1004a7fa
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x2c], 0
mov ecx, 0xf0662f04
mov dword [ebp - 0x58], eax
mov eax, 0xe67d740f
cmove eax, ecx
jmp 0x1004a7fa
cmp eax, 0x82d64b3d
je 0x1004a998
cmp eax, 0x8763fb5e
je 0x1004a9d5
cmp eax, 0xa19f5bab
jne 0x1004a7fa
jmp 0x1004ba69
cmp eax, 0xf0662f04
je 0x1004aaaf
cmp eax, 0x30d03f9c
jne 0x1004a7fa
mov dword [ebp - 0x44], esi
mov eax, 0x82d64b3d
jmp 0x1004a7fa
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x54]
mov eax, 0x7dc0c0ce
mov dword [ebp - 0x38], ecx
jmp 0x1004a7fa
push eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x3c], edi
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov eax, 0x528c9fab
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x14], 0x52
cmp eax, 0x424a2f1e
je 0x1004aabc
cmp eax, 0x528c9fab
jne 0x1004a8fc
mov eax, dword [ebp - 0x14]
mov ecx, eax
and eax, 0xffffffa7
not ecx
and ecx, 0x58
or eax, ecx
mov dword [ebp - 0x10], eax
mov eax, 0x424a2f1e
jmp 0x1004a8fc
mov eax, dword [ebp - 0x50]
push edi
push 2
push 0
push dword [ebp + 0xc]
push dword [ebp + 8]
call eax
mov dword [ebp - 0x38], eax
test eax, eax
mov ecx, 0x30d03f9c
mov eax, dword [ebp - 0x40]
mov eax, 0x7dc0c0ce
cmove eax, ecx
jmp 0x1004a7fa
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x14], 0x52
mov dword [ebp - 0x1c], eax
mov eax, 0x528c9fab
cmp eax, 0x424a2f1e
je 0x1004ab19
cmp eax, 0x528c9fab
jne 0x1004a963
mov eax, dword [ebp - 0x14]
mov ecx, eax
and eax, 0x449411a1
not ecx
and ecx, 0xbb6bee5e
or eax, ecx
xor eax, 0xbb6bee06
mov dword [ebp - 0x10], eax
mov eax, 0x424a2f1e
jmp 0x1004a963
mov eax, dword [ebp - 0x44]
mov eax, 0x528c9fab
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x14], 0x52
cmp eax, 0x424a2f1e
je 0x1004ab6a
cmp eax, 0x528c9fab
jne 0x1004a9aa
mov eax, dword [ebp - 0x14]
mov ecx, eax
and eax, 0xffffffa7
not ecx
and ecx, 0x58
or eax, ecx
mov dword [ebp - 0x10], eax
mov eax, 0x424a2f1e
jmp 0x1004a9aa
mov eax, dword [ebp - 0x34]
xor edi, edi
mov edx, 0x4fd7d4d7
cmp edx, 0x4f18c49f
jle 0x1004aa17
cmp edx, 0x76945186
jg 0x1004aa3d
cmp edx, 0x4f18c4a0
je 0x1004aa5f
cmp edx, 0x4fd7d4d7
jne 0x1004a9df
mov dword [ebp - 0x10], edi
mov ecx, 0xfe6707e1
mov edx, dword [ebp - 0x10]
cmp edx, 0xb
mov edx, 0x1a8ae65
cmovb edx, ecx
jmp 0x1004a9df
cmp edx, 0xa4e8cbd9
je 0x1004aaa7
cmp edx, 0xfe6707e1
je 0x1004aa76
cmp edx, 0x1a8ae65
jne 0x1004a9df
mov dword [ebp - 0x18], eax
mov edx, 0x4f18c4a0
jmp 0x1004a9df
cmp edx, 0x76945187
je 0x1004abc7
cmp edx, 0x7bf894e4
jne 0x1004a9df
mov ecx, dword [ebp - 0x10]
mov edx, 0xa4e8cbd9
inc ecx
mov dword [ebp - 0x14], ecx
jmp 0x1004a9df
mov edx, dword [ebp - 0x18]
mov byte [edx + 0xb], 0
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x24], edx
mov edx, 0x76945187
jmp 0x1004a9df
mov ebx, dword [ebp - 0x10]
mov cl, byte [eax + ebx]
mov edx, ecx
and cl, 0xa7
not dl
and dl, 0x58
or cl, dl
mov edx, dword [ebp - 0x10]
mov ch, cl
not ch
add dl, 0x58
and ch, dl
not dl
and dl, cl
or dl, ch
mov byte [eax + ebx], dl
mov edx, 0x7bf894e4
jmp 0x1004a9df
mov edi, dword [ebp - 0x14]
jmp 0x1004a9da
mov eax, dword [ebp - 0x3c]
mov eax, 0xa19f5bab
jmp 0x1004a7fa
mov eax, dword [ebp - 0x10]
mov ecx, eax
and al, 0xdd
not cl
and cl, 0x22
or al, cl
mov ecx, dword [ebp - 0x30]
xor al, 0x7a
mov byte [ecx], al
mov ecx, 0x528c9fab
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x14], 0x65
cmp ecx, 0x424a2f1e
je 0x1004abed
cmp ecx, 0x528c9fab
jne 0x1004aae0
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0x2cd502d
not edx
and edx, 0xfd32afd2
or ecx, edx
xor ecx, 0xfd32af8a
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004aae0
mov eax, dword [ebp - 0x10]
mov ecx, eax
and al, 0x5e
not cl
and cl, 0xa1
or al, cl
mov ecx, dword [ebp - 0x1c]
xor al, 0xf9
mov byte [ecx], al
mov ecx, 0x528c9fab
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], 0x65
cmp ecx, 0x424a2f1e
je 0x1004ac47
cmp ecx, 0x528c9fab
jne 0x1004ab3d
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004ab3d
mov eax, dword [ebp - 0x10]
mov ecx, eax
and al, 0x34
not cl
and cl, 0xcb
or al, cl
mov ecx, dword [ebp - 0x1c]
xor al, 0x93
mov byte [ecx], al
mov ecx, 0x528c9fab
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x14], 0x65
cmp ecx, 0x424a2f1e
je 0x1004aca1
cmp ecx, 0x528c9fab
jne 0x1004ab8e
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xd6308703
not edx
and edx, 0x29cf78fc
or ecx, edx
xor ecx, 0x29cf78a4
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004ab8e
mov ecx, dword [ebp - 0x24]
call fcn.1002d5ea
push dword [ebp - 0x2c]
call eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x2c], 0
mov eax, 0xf0662f04
mov ecx, esi
lea edi, [ebp - 0x2c]
jmp 0x1004a7fa
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x9e
not dl
and dl, 0x61
or cl, dl
xor cl, 0x38
mov byte [eax + 1], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x67
cmp ecx, 0x424a2f1e
je 0x1004b127
cmp ecx, 0x528c9fab
jne 0x1004ac0e
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xf0d742fe
not edx
and edx, 0xf28bd01
or ecx, edx
xor ecx, 0xf28bd59
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004ac0e
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xfa
not dl
and dl, 5
or cl, dl
xor cl, 0x5c
mov byte [eax + 1], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x67
cmp ecx, 0x424a2f1e
je 0x1004b175
cmp ecx, 0x528c9fab
jne 0x1004ac68
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0x909d143f
not edx
and edx, 0x6f62ebc0
or ecx, edx
xor ecx, 0x6f62eb98
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004ac68
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xa6
not dl
and dl, 0x59
or cl, dl
mov byte [eax + 1], cl
add eax, 2
mov ecx, 0x67bf40bf
mov dword [ebp - 0x20], eax
cmp ecx, 0x45ff9a16
jg 0x1004acdb
cmp ecx, 0xd8f9e4de
je 0x1004ad20
cmp ecx, 0xb4abeac
jne 0x1004acbe
jmp 0x1004b1cf
cmp ecx, 0x45ff9a17
je 0x1004ad34
cmp ecx, 0x67bf40bf
jne 0x1004acbe
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x67
cmp ecx, 0x424a2f1e
je 0x1004ad4d
cmp ecx, 0x528c9fab
jne 0x1004acf7
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004acf7
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
add ecx, 0x10
inc eax
mov dword [ebp - 0x24], ecx
mov ecx, 0x45ff9a17
jmp 0x1004acbe
mov byte [eax], 0
inc eax
mov ecx, 0x45ff9a17
mov edx, 0xb4abeac
cmp eax, dword [ebp - 0x24]
cmove ecx, edx
jmp 0x1004acbe
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xd2
not dl
and dl, 0x2d
or cl, dl
mov edx, dword [ebp - 0x20]
xor cl, 0x77
mov byte [edx], cl
mov edx, 0x528c9fab
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x14], 0x44
cmp edx, 0x424a2f1e
je 0x1004ada8
cmp edx, 0x528c9fab
jne 0x1004ad73
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xf406215
not ebx
and ebx, 0xf0bf9dea
or edx, ebx
xor edx, 0xf0bf9db2
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004ad73
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0xa4
not bl
and bl, 0x5b
or dl, bl
mov byte [ecx + 1], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x65
cmp edx, 0x424a2f1e
je 0x1004adef
cmp edx, 0x528c9fab
jne 0x1004adc6
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xffffffa7
not ebx
and ebx, 0x58
or edx, ebx
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004adc6
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0xa3
not bl
and bl, 0x5c
or dl, bl
mov byte [ecx + 2], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x6c
cmp edx, 0x424a2f1e
je 0x1004ae36
cmp edx, 0x528c9fab
jne 0x1004ae0d
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xffffffa7
not ebx
and ebx, 0x58
or edx, ebx
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004ae0d
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0x31
not bl
and bl, 0xce
or dl, bl
xor dl, 0x93
mov byte [ecx + 3], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x65
cmp edx, 0x424a2f1e
je 0x1004ae80
cmp edx, 0x528c9fab
jne 0x1004ae57
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xffffffa7
not ebx
and ebx, 0x58
or edx, ebx
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004ae57
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0xa1
not bl
and bl, 0x5e
or dl, bl
mov byte [ecx + 4], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x74
cmp edx, 0x424a2f1e
je 0x1004aec7
cmp edx, 0x528c9fab
jne 0x1004ae9e
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xffffffa7
not ebx
and ebx, 0x58
or edx, ebx
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004ae9e
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0xc
not bl
and bl, 0xf3
or dl, bl
xor dl, 0xac
mov byte [ecx + 5], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x65
cmp edx, 0x424a2f1e
je 0x1004af11
cmp edx, 0x528c9fab
jne 0x1004aee8
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xffffffa7
not ebx
and ebx, 0x58
or edx, ebx
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004aee8
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0x9f
not bl
and bl, 0x60
or dl, bl
mov byte [ecx + 6], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x56
cmp edx, 0x424a2f1e
je 0x1004af64
cmp edx, 0x528c9fab
jne 0x1004af2f
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0x741a0e21
not ebx
and ebx, 0x8be5f1de
or edx, ebx
xor edx, 0x8be5f186
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004af2f
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0x9e
not bl
and bl, 0x61
or dl, bl
mov byte [ecx + 7], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x61
cmp edx, 0x424a2f1e
je 0x1004afb7
cmp edx, 0x528c9fab
jne 0x1004af82
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xbb20c9ed
not ebx
and ebx, 0x44df3612
or edx, ebx
xor edx, 0x44df364a
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004af82
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0x2f
not bl
and bl, 0xd0
or dl, bl
xor dl, 0xb2
mov byte [ecx + 8], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x6c
cmp edx, 0x424a2f1e
je 0x1004b00d
cmp edx, 0x528c9fab
jne 0x1004afd8
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0xe8035009
not ebx
and ebx, 0x17fcaff6
or edx, ebx
xor edx, 0x17fcafae
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004afd8
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0x36
not bl
and bl, 0xc9
or dl, bl
xor dl, 0xaa
mov byte [ecx + 9], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x75
cmp edx, 0x424a2f1e
je 0x1004b063
cmp edx, 0x528c9fab
jne 0x1004b02e
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0x40ecc6
not ebx
and ebx, 0xffbf1339
or edx, ebx
xor edx, 0xffbf1361
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004b02e
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0xc6
not bl
and bl, 0x39
or dl, bl
xor dl, 0x5d
mov byte [ecx + 0xa], dl
mov edx, 0x528c9fab
mov dword [ebp - 0x14], 0x65
cmp edx, 0x424a2f1e
je 0x1004b0b9
cmp edx, 0x528c9fab
jne 0x1004b084
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0x8c981325
not ebx
and ebx, 0x7367ecda
or edx, ebx
xor edx, 0x7367ec82
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004b084
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0x9a
not bl
and bl, 0x65
or dl, bl
mov byte [ecx + 0xb], dl
add ecx, 0xc
mov dword [ebp - 0x14], 0x57
mov dword [ebp - 0x18], ecx
mov ecx, 0x528c9fab
cmp ecx, 0x424a2f1e
je 0x1004b106
cmp ecx, 0x528c9fab
jne 0x1004b0dd
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b0dd
mov ecx, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x18]
mov edx, ecx
and cl, 0xc8
not dl
and dl, 0x37
or cl, dl
xor cl, 0x51
mov byte [ebx], cl
mov ecx, 0xd8f9e4de
jmp 0x1004acbe
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x16
not dl
and dl, 0xe9
or cl, dl
xor cl, 0xb3
mov byte [eax + 2], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x4f
cmp ecx, 0x424a2f1e
je 0x1004b2cc
cmp ecx, 0x528c9fab
jne 0x1004b148
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b148
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x38
not dl
and dl, 0xc7
or cl, dl
xor cl, 0x9d
mov byte [eax + 2], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x43
cmp ecx, 0x424a2f1e
je 0x1004b625
cmp ecx, 0x528c9fab
jne 0x1004b196
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xe81f778b
not edx
and edx, 0x17e08874
or ecx, edx
xor ecx, 0x17e0882c
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b196
xor eax, eax
mov ecx, 0x3747aa57
cmp ecx, 0x6a4ab34
jle 0x1004b200
cmp ecx, 0x3747aa56
jg 0x1004b221
cmp ecx, 0x6a4ab35
je 0x1004b249
cmp ecx, 0x22e977b4
jne 0x1004b1d6
mov dword [ebp - 0x28], esi
mov ecx, 0x8057b969
jmp 0x1004b1d6
cmp ecx, 0x8057b969
je 0x1004b264
cmp ecx, 0xd76f7b91
je 0x1004b670
cmp ecx, 0xfa365b32
jne 0x1004b1d6
jmp 0x1004b2ac
cmp ecx, 0x6fbf5fe7
je 0x1004b27b
cmp ecx, 0x3747aa57
jne 0x1004b1d6
mov dword [ebp - 0x10], eax
mov edx, 0x6a4ab35
mov ecx, dword [ebp - 0x10]
cmp ecx, 0xf
mov ecx, 0x22e977b4
cmovb ecx, edx
jmp 0x1004b1d6
mov ecx, dword [ebp - 0x10]
add ecx, esi
mov dword [ebp - 0x20], ecx
mov ecx, dword [ebp - 0x20]
movsx ecx, byte [ecx]
mov dword [ebp - 0x18], ecx
mov ecx, 0x6fbf5fe7
jmp 0x1004b1d6
mov ecx, dword [ebp - 0x28]
mov byte [ecx + 0xf], 0
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x1c], ecx
mov ecx, 0xd76f7b91
jmp 0x1004b1d6
mov ecx, dword [ebp - 0x18]
mov edx, ecx
and ecx, 0x66fe6192
not edx
and edx, 0x99019e6d
or ecx, edx
xor ecx, 0x99019e35
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x10]
add ecx, 0x58
mov dword [ebp - 0x14], ecx
mov ecx, 0xfa365b32
jmp 0x1004b1d6
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x14]
mov edx, ecx
not edx
and edx, eax
not eax
and eax, ecx
or eax, edx
mov edx, dword [ebp - 0x20]
mov byte [edx], al
mov eax, dword [ebp - 0x10]
inc eax
jmp 0x1004b1d1
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xa4
not dl
and dl, 0x5b
or cl, dl
mov byte [eax + 3], cl
add eax, 4
mov ecx, 0xf655941b
mov dword [ebp - 0x1c], 0x1009f83e
mov dword [ebp - 0x28], eax
cmp ecx, 0xf8f3e1f1
jg 0x1004b34f
cmp ecx, 0xb9a238f9
je 0x1004b364
cmp ecx, 0xf655941b
jne 0x1004b2f0
mov ecx, dword [ebp - 0x1c]
movsx ecx, byte [ecx]
mov dword [ebp - 0x14], ecx
mov ecx, 0x528c9fab
cmp ecx, 0x424a2f1e
je 0x1004b3a3
cmp ecx, 0x528c9fab
jne 0x1004b316
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0x28ea6de2
not edx
and edx, 0xd715921d
or ecx, edx
xor ecx, 0xd7159245
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b316
cmp ecx, 0xf8f3e1f2
je 0x1004b3cf
cmp ecx, 0x49ef6af1
jne 0x1004b2f0
jmp 0x1004b68d
mov eax, dword [ebp - 0x18]
movsx eax, byte [eax]
mov dword [ebp - 0x14], eax
mov eax, 0x528c9fab
cmp eax, 0x424a2f1e
je 0x1004b3e8
cmp eax, 0x528c9fab
jne 0x1004b372
mov eax, dword [ebp - 0x14]
mov ecx, eax
and eax, 0xd2ac5a44
not ecx
and ecx, 0x2d53a5bb
or eax, ecx
xor eax, 0x2d53a5e3
mov dword [ebp - 0x10], eax
mov eax, 0x424a2f1e
jmp 0x1004b372
mov ecx, dword [ebp - 0x10]
mov ebx, dword [ebp - 0x28]
mov edx, ecx
and cl, 0xa3
not dl
and dl, 0x5c
or cl, dl
mov byte [ebx], cl
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x18], 0x1009f83f
inc ecx
mov dword [ebp - 0x20], ecx
mov ecx, 0xb9a238f9
jmp 0x1004b2f0
mov byte [eax], 0
inc eax
mov ecx, 0xf8f3e1f2
mov edx, 0x49ef6af1
cmp eax, dword [ebp - 0x24]
cmove ecx, edx
jmp 0x1004b2f0
mov eax, dword [ebp - 0x10]
mov ecx, eax
and al, 0xad
not cl
and cl, 0x52
or al, cl
mov ecx, dword [ebp - 0x20]
xor al, 0xf
mov byte [ecx], al
mov ecx, 0x528c9fab
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x14], 0x6e
cmp ecx, 0x424a2f1e
je 0x1004b441
cmp ecx, 0x528c9fab
jne 0x1004b40c
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0x21e9eb45
not edx
and edx, 0xde1614ba
or ecx, edx
xor ecx, 0xde1614e2
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b40c
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xec
not dl
and dl, 0x13
or cl, dl
xor cl, 0x4d
mov byte [eax + 1], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x4b
cmp ecx, 0x424a2f1e
je 0x1004b48b
cmp ecx, 0x528c9fab
jne 0x1004b462
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b462
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xa0
not dl
and dl, 0x5f
or cl, dl
mov byte [eax + 2], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x65
cmp ecx, 0x424a2f1e
je 0x1004b4de
cmp ecx, 0x528c9fab
jne 0x1004b4a9
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0x12a5e1a9
not edx
and edx, 0xed5a1e56
or ecx, edx
xor ecx, 0xed5a1e0e
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b4a9
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x9f
not dl
and dl, 0x60
or cl, dl
mov byte [eax + 3], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x79
cmp ecx, 0x424a2f1e
je 0x1004b525
cmp ecx, 0x528c9fab
jne 0x1004b4fc
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b4fc
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x9e
not dl
and dl, 0x61
or cl, dl
mov byte [eax + 4], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x45
cmp ecx, 0x424a2f1e
je 0x1004b56c
cmp ecx, 0x528c9fab
jne 0x1004b543
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b543
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x9d
not dl
and dl, 0x62
or cl, dl
mov byte [eax + 5], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x78
cmp ecx, 0x424a2f1e
je 0x1004b5b3
cmp ecx, 0x528c9fab
jne 0x1004b58a
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b58a
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x15
not dl
and dl, 0xea
or cl, dl
xor cl, 0x89
mov byte [eax + 6], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x57
cmp ecx, 0x424a2f1e
je 0x1004b5fd
cmp ecx, 0x528c9fab
jne 0x1004b5d4
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b5d4
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x9b
not dl
and dl, 0x64
or cl, dl
mov byte [eax + 7], cl
add eax, 8
mov ecx, dword [ebp - 0x30]
add ecx, 0xe
mov dword [ebp - 0x24], ecx
mov ecx, 0xf8f3e1f2
jmp 0x1004b2f0
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xa4
not dl
and dl, 0x5b
or cl, dl
mov byte [eax + 3], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x6c
cmp ecx, 0x424a2f1e
je 0x1004b7b9
cmp ecx, 0x528c9fab
jne 0x1004b643
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b643
mov ecx, dword [ebp - 0x1c]
call fcn.1002d5ea
push dword [ebp + 0x10]
push dword [ebp - 0x2c]
call eax
mov dword [ebp - 0x54], eax
mov eax, 0xa5b948eb
jmp 0x1004a7fa
xor eax, eax
mov ecx, 0x6eee4d25
cmp ecx, 0x1f59e062
jle 0x1004b722
cmp ecx, 0x35b99c2c
jg 0x1004b740
cmp ecx, 0x1f59e063
je 0x1004ba4a
cmp ecx, 0x2b7ddf91
jne 0x1004b694
mov ecx, dword [ebp - 0x10]
lea edx, [ebp - 0x68]
mov ebx, 0xf692fd94
add ecx, edx
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x18]
mov cl, byte [ecx]
mov edx, ecx
and cl, 0xa7
not dl
and dl, 0x58
or cl, dl
mov edx, dword [ebp - 0x10]
mov dword [ebp - 0x4c], eax
movsx ecx, cl
add edx, 0x58
mov eax, edx
not eax
and eax, ebx
mov ebx, 0x96d026b
and edx, ebx
mov ebx, ecx
or edx, eax
not ebx
mov eax, 0xf692fd94
and ebx, eax
mov eax, 0x96d026b
and ecx, eax
mov eax, dword [ebp - 0x4c]
or ecx, ebx
xor ecx, edx
mov dword [ebp - 0x24], ecx
mov ecx, 0x851ea7be
jmp 0x1004b694
cmp ecx, 0x851ea7be
je 0x1004b76f
cmp ecx, 0xb889e48b
je 0x1004b788
cmp ecx, 0xef0a4b51
jne 0x1004b694
jmp 0x1004b7b1
cmp ecx, 0x35b99c2d
je 0x1004b798
cmp ecx, 0x6eee4d25
jne 0x1004b694
mov dword [ebp - 0x10], eax
mov edx, 0x2b7ddf91
mov ecx, dword [ebp - 0x10]
cmp ecx, 0xd
mov ecx, 0x35b99c2d
cmovb ecx, edx
jmp 0x1004b694
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x18]
mov byte [edx], cl
mov ecx, dword [ebp - 0x10]
inc ecx
mov dword [ebp - 0x14], ecx
mov ecx, 0xef0a4b51
jmp 0x1004b694
mov ecx, dword [ebp - 0x20]
mov byte [ecx], 0
mov ecx, 0x1f59e063
jmp 0x1004b694
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
add ecx, 0xd
mov dword [ebp - 0x20], ecx
mov ecx, 0xb889e48b
jmp 0x1004b694
mov eax, dword [ebp - 0x14]
jmp 0x1004b68f
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xa3
not dl
and dl, 0x5c
or cl, dl
mov byte [eax + 4], cl
add eax, 5
mov ecx, 0xa72a5f75
mov byte [ebp - 0x30], 0x6f
mov dword [ebp - 0x20], eax
cmp ecx, 0x37d458e5
jg 0x1004b7f7
cmp ecx, 0xa72a5f75
je 0x1004b844
cmp ecx, 0x22f8a9fe
jne 0x1004b7da
jmp 0x1004ba5f
cmp ecx, 0x37d458e6
je 0x1004b87d
cmp ecx, 0x6b4a3e4f
jne 0x1004b7da
movsx eax, byte [ebp - 0x28]
mov dword [ebp - 0x14], eax
mov eax, 0x528c9fab
cmp eax, 0x424a2f1e
je 0x1004b896
cmp eax, 0x528c9fab
jne 0x1004b813
mov eax, dword [ebp - 0x14]
mov ecx, eax
and eax, 0x144aaaf6
not ecx
and ecx, 0xebb55509
or eax, ecx
xor eax, 0xebb55551
mov dword [ebp - 0x10], eax
mov eax, 0x424a2f1e
jmp 0x1004b813
movsx ecx, byte [ebp - 0x30]
mov dword [ebp - 0x14], ecx
mov ecx, 0x528c9fab
cmp ecx, 0x424a2f1e
je 0x1004b8f1
cmp ecx, 0x528c9fab
jne 0x1004b850
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xffffffa7
not edx
and edx, 0x58
or ecx, edx
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b850
mov byte [eax], 0
inc eax
mov ecx, 0x37d458e6
mov edx, 0x22f8a9fe
cmp eax, dword [ebp - 0x24]
cmove ecx, edx
jmp 0x1004b7da
mov eax, dword [ebp - 0x10]
mov ecx, eax
and al, 0xa0
not cl
and cl, 0x5f
or al, cl
mov ecx, dword [ebp - 0x18]
mov byte [ecx], al
mov ecx, 0x528c9fab
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x14], 0x4b
cmp ecx, 0x424a2f1e
je 0x1004b94d
cmp ecx, 0x528c9fab
jne 0x1004b8b8
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0xcc06b57a
not edx
and edx, 0x33f94a85
or ecx, edx
xor ecx, 0x33f94add
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b8b8
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xa2
not dl
and dl, 0x5d
or cl, dl
mov edx, dword [ebp - 0x20]
mov byte [edx], cl
mov edx, 0x528c9fab
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x14], 0x73
cmp edx, 0x424a2f1e
je 0x1004b9a0
cmp edx, 0x528c9fab
jne 0x1004b914
mov edx, dword [ebp - 0x14]
mov ebx, edx
and edx, 0x37879df8
not ebx
and ebx, 0xc8786207
or edx, ebx
xor edx, 0xc878625f
mov dword [ebp - 0x10], edx
mov edx, 0x424a2f1e
jmp 0x1004b914
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x9f
not dl
and dl, 0x60
or cl, dl
mov byte [eax + 1], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x65
cmp ecx, 0x424a2f1e
je 0x1004b9c9
cmp ecx, 0x528c9fab
jne 0x1004b96b
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0x8cac3dff
not edx
and edx, 0x7353c200
or ecx, edx
xor ecx, 0x7353c258
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b96b
mov edx, dword [ebp - 0x10]
mov ebx, edx
and dl, 0xee
not bl
and bl, 0x11
or dl, bl
xor dl, 0x4f
mov byte [ecx + 1], dl
add ecx, 2
mov byte [ebp - 0x28], 0x65
mov dword [ebp - 0x18], ecx
mov ecx, 0x6b4a3e4f
jmp 0x1004b7da
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0xfe
not dl
and dl, 1
or cl, dl
xor cl, 0x60
mov byte [eax + 2], cl
mov ecx, 0x528c9fab
mov dword [ebp - 0x14], 0x79
cmp ecx, 0x424a2f1e
je 0x1004ba1f
cmp ecx, 0x528c9fab
jne 0x1004b9ea
mov ecx, dword [ebp - 0x14]
mov edx, ecx
and ecx, 0x571d3ca2
not edx
and edx, 0xa8e2c35d
or ecx, edx
xor ecx, 0xa8e2c305
mov dword [ebp - 0x10], ecx
mov ecx, 0x424a2f1e
jmp 0x1004b9ea
mov ecx, dword [ebp - 0x10]
mov edx, ecx
and cl, 0x10
not dl
and dl, 0xef
or cl, dl
xor cl, 0x8d
mov byte [eax + 3], cl
add eax, 4
mov ecx, dword [ebp - 0x1c]
add ecx, 0xc
mov dword [ebp - 0x24], ecx
mov ecx, 0x37d458e6
jmp 0x1004b7da
mov ecx, dword [ebp - 0x1c]
call fcn.1002d5ea
mov dword [ebp - 0x50], eax
mov eax, 0x3407974f
jmp 0x1004a7fa
mov eax, 0x8763fb5e
jmp 0x1004a7fa
mov eax, dword [ebp - 0x58]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret