Function at 0x1001a5e6
Capabilities:
Authenticate hmac

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x88
lea eax, [esp + 0x44]
lea ebp, [esp + 0x74]
mov dword [esp + 0x30], eax
mov eax, 0xd5c331fa
cmp eax, 0x2c2cee59
jle 0x1001a640
cmp eax, 0x56f16eeb
jle 0x1001a6b7
cmp eax, 0x6a65c7c8
jg 0x1001a71b
cmp eax, 0x56f16eec
je 0x1001a7d3
cmp eax, 0x66cdad7e
je 0x1001a7ea
cmp eax, 0x607e2c02
jne 0x1001a601
jmp 0x1001c970
cmp eax, 0xd9c44891
jg 0x1001a6e6
cmp eax, 0xba61487c
jg 0x1001a745
cmp eax, 0x9a3dfb01
je 0x1001a7fe
cmp eax, 0xb8280ab0
jne 0x1001a601
mov eax, dword [esp + 0x2c]
mov dword [esp + 8], ebp
mov dword [esp + 4], 0x43
mov dword [esp + 0x3c], eax
mov eax, 0xb58e6c93
cmp eax, 0x1d9e0de8
je 0x1001a812
cmp eax, 0xb58e6c93
jne 0x1001a681
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0x479fb619
not ecx
and ecx, 0xb86049e6
or eax, ecx
xor eax, 0xb860499a
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001a681
cmp eax, 0x418b6152
jg 0x1001a781
cmp eax, 0x2c2cee5a
je 0x1001a865
cmp eax, 0x2fde15b7
jne 0x1001a601
mov esi, dword [esp + 0x5c]
mov eax, 0xd9c44892
jmp 0x1001a601
cmp eax, 0xf103d93a
jg 0x1001a7ab
cmp eax, 0xd9c44892
je 0x1001a8ec
cmp eax, 0xe1a95fbb
jne 0x1001a601
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x54], eax
mov eax, 0xf103d93b
jmp 0x1001a601
cmp eax, 0x6a65c7c9
je 0x1001ae1a
cmp eax, 0x7626dbc0
jne 0x1001a601
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x58], eax
mov eax, 0xba61487d
jmp 0x1001a601
cmp eax, 0xba61487d
je 0x1001ae61
cmp eax, 0xd5c331fa
jne 0x1001a601
mov eax, dword [esp + 0x30]
mov dword [esp + 0x44], 0xc
mov dword [esp + 0x4c], 1
mov dword [esp + 0x48], 0
mov eax, 0x2c2cee5a
jmp 0x1001a601
cmp eax, 0x418b6153
je 0x1001ae73
cmp eax, 0x470730f1
jne 0x1001a601
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x50], eax
mov eax, 0x4c1b54c
jmp 0x1001a601
cmp eax, 0xf103d93b
je 0x1001ae85
cmp eax, 0x4c1b54c
jne 0x1001a601
mov ecx, dword [esp + 0x50]
mov eax, 0xb8280ab0
mov dword [esp + 0x2c], ecx
jmp 0x1001a601
cmp byte [esp + 0x1a], 0
mov eax, 0x6a65c7c9
mov ecx, 0x7626dbc0
cmovne eax, ecx
jmp 0x1001c822
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x5c], eax
mov eax, 0x2fde15b7
jmp 0x1001a601
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x60], eax
mov eax, 0x418b6153
jmp 0x1001a601
mov eax, dword [esp]
mov ecx, eax
and al, 0x83
not cl
and cl, 0x7c
or al, cl
mov ecx, dword [esp + 8]
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 8]
mov dword [esp + 4], 0x6f
cmp ecx, 0x1d9e0de8
je 0x1001ae9d
cmp ecx, 0xb58e6c93
jne 0x1001a837
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001a837
lea eax, [esp + 0x40]
lea ecx, [esp + 0x64]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x38], ecx
mov eax, dword [esp + 0x38]
push 0x1000
call fcn.10004940
lea eax, [esp + 0x68]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x20]
push dword [esp + 0x9c]
push dword [eax]
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 8
mov eax, 0xb58e6c93
mov dword [esp + 8], ebp
mov dword [esp + 4], 0x43
cmp eax, 0x1d9e0de8
je 0x1001aef9
cmp eax, 0xb58e6c93
jne 0x1001a8b6
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0x4ca2d06a
not ecx
and ecx, 0xb35d2f95
or eax, ecx
xor eax, 0xb35d2fe9
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001a8b6
mov ecx, 0xdcaa74d1
mov dword [esp + 0x14], ebp
cmp ecx, 0xdcaa74d0
jg 0x1001a924
cmp ecx, 0xa94b0348
je 0x1001a97b
cmp ecx, 0xc585adf5
jne 0x1001a8f5
mov byte [eax], 0
inc eax
mov ecx, 0xc585adf5
mov edx, 0x1a9c6c6b
cmp eax, dword [esp + 0x10]
cmove ecx, edx
jmp 0x1001a8f5
cmp ecx, 0x1a9c6c6b
je 0x1001af5a
cmp ecx, 0xdcaa74d1
jne 0x1001a8f5
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x53
cmp ecx, 0x1d9e0de8
je 0x1001a9c1
cmp ecx, 0xb58e6c93
jne 0x1001a945
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x4a59bf3d
not edx
and edx, 0xb5a640c2
or ecx, edx
xor ecx, 0xb5a640be
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001a945
mov eax, dword [esp + 0xc]
movsx eax, byte [eax]
mov dword [esp + 4], eax
mov eax, 0xb58e6c93
cmp eax, 0x1d9e0de8
je 0x1001aa24
cmp eax, 0xb58e6c93
jne 0x1001a98b
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0x2719dac1
not ecx
and ecx, 0xd8e6253e
or eax, ecx
xor eax, 0xd8e62542
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001a98b
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x15
not dl
and dl, 0xea
or cl, dl
mov edx, dword [esp + 0x14]
xor cl, 0x96
mov byte [edx], cl
mov edx, 0xb58e6c93
mov ecx, dword [esp + 0x14]
mov dword [esp + 4], 0x65
cmp edx, 0x1d9e0de8
je 0x1001aa85
cmp edx, 0xb58e6c93
jne 0x1001a9ea
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xd12ba61f
not edi
and edi, 0x2ed459e0
or edx, edi
xor edx, 0x2ed4599c
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001a9ea
mov eax, dword [esp]
mov ecx, eax
and al, 0xa
not cl
and cl, 0xf5
or al, cl
mov ecx, dword [esp + 8]
xor al, 0x73
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 8]
mov dword [esp + 4], 0x74
cmp ecx, 0x1d9e0de8
je 0x1001aadd
cmp ecx, 0xb58e6c93
jne 0x1001aa4b
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x4e7ef8b9
not edx
and edx, 0xb1810746
or ecx, edx
xor ecx, 0xb181073a
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001aa4b
mov edx, dword [esp]
mov ebx, edx
and dl, 0x34
not bl
and bl, 0xcb
or dl, bl
xor dl, 0xb6
mov byte [ecx + 1], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x74
cmp edx, 0x1d9e0de8
je 0x1001ab29
cmp edx, 0xb58e6c93
jne 0x1001aaa7
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0x24d5ca65
not edi
and edi, 0xdb2a359a
or edx, edi
xor edx, 0xdb2a35e6
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001aaa7
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x73
not dl
and dl, 0x8c
or cl, dl
xor cl, 0xb
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001ab72
cmp ecx, 0xb58e6c93
jne 0x1001aaff
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001aaff
mov edx, dword [esp]
mov ebx, edx
and dl, 0x81
not bl
and bl, 0x7e
or dl, bl
mov byte [ecx + 2], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x46
cmp edx, 0x1d9e0de8
je 0x1001abbe
cmp edx, 0xb58e6c93
jne 0x1001ab48
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001ab48
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x5d
not dl
and dl, 0xa2
or cl, dl
xor cl, 0x2a
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x72
cmp ecx, 0x1d9e0de8
je 0x1001ac16
cmp ecx, 0xb58e6c93
jne 0x1001ab94
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001ab94
mov edx, dword [esp]
mov ebx, edx
and dl, 0x82
not bl
and bl, 0x7d
or dl, bl
xor dl, 2
mov byte [ecx + 3], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x69
cmp edx, 0x1d9e0de8
je 0x1001ac43
cmp edx, 0xb58e6c93
jne 0x1001abe0
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0x848b56eb
not edi
and edi, 0x7b74a914
or edx, edi
xor edx, 0x7b74a968
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001abe0
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x88
not dl
and dl, 0x77
or cl, dl
xor cl, 0xfe
mov byte [eax + 3], cl
add eax, 4
mov ecx, dword [esp + 0x14]
add ecx, 0xf
mov dword [esp + 0x10], ecx
mov ecx, 0xc585adf5
jmp 0x1001a8f5
mov edx, dword [esp]
mov ebx, edx
and dl, 0x4b
not bl
and bl, 0xb4
or dl, bl
xor dl, 0x34
mov byte [ecx + 4], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x6c
cmp edx, 0x1d9e0de8
je 0x1001ac9b
cmp edx, 0xb58e6c93
jne 0x1001ac65
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0x5bb864c
not edi
and edi, 0xfa4479b3
or edx, edi
xor edx, 0xfa4479cf
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001ac65
mov edx, dword [esp]
mov ebx, edx
and dl, 0x6d
not bl
and bl, 0x92
or dl, bl
xor dl, 0x13
mov byte [ecx + 5], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp edx, 0x1d9e0de8
je 0x1001acf3
cmp edx, 0xb58e6c93
jne 0x1001acbd
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0x820a68cc
not edi
and edi, 0x7df59733
or edx, edi
xor edx, 0x7df5974f
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001acbd
mov edx, dword [esp]
mov ebx, edx
and dl, 0x14
not bl
and bl, 0xeb
or dl, bl
xor dl, 0x69
mov byte [ecx + 6], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x50
cmp edx, 0x1d9e0de8
je 0x1001ad4b
cmp edx, 0xb58e6c93
jne 0x1001ad15
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xfd54a7cd
not edi
and edi, 0x2ab5832
or edx, edi
xor edx, 0x2ab584e
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001ad15
mov edx, dword [esp]
mov ebx, edx
and dl, 0x7c
not bl
and bl, 0x83
or dl, bl
mov byte [ecx + 7], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x6f
cmp edx, 0x1d9e0de8
je 0x1001ad94
cmp edx, 0xb58e6c93
jne 0x1001ad6a
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001ad6a
mov edx, dword [esp]
mov ebx, edx
and dl, 0x3d
not bl
and bl, 0xc2
or dl, bl
xor dl, 0x46
mov byte [ecx + 8], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x69
cmp edx, 0x1d9e0de8
je 0x1001adec
cmp edx, 0xb58e6c93
jne 0x1001adb6
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0x88f8dec
not edi
and edi, 0xf7707213
or edx, edi
xor edx, 0xf770726f
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001adb6
mov edx, dword [esp]
mov ebx, edx
and dl, 0xd4
not bl
and bl, 0x2b
or dl, bl
xor dl, 0xae
mov byte [ecx + 9], dl
add ecx, 0xa
mov dword [esp + 0xc], 0x1009470a
mov dword [esp + 8], ecx
mov ecx, 0xa94b0348
jmp 0x1001a8f5
mov eax, 0xb58e6c93
mov dword [esp + 0x24], ebp
mov dword [esp + 4], 0x43
cmp eax, 0x1d9e0de8
je 0x1001b054
cmp eax, 0xb58e6c93
jne 0x1001ae2b
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0x447f03a9
not ecx
and ecx, 0xbb80fc56
or eax, ecx
xor eax, 0xbb80fc2a
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001ae2b
mov ecx, dword [esp + 0x58]
mov eax, 0x6a65c7c9
mov dword [esp + 0x1c], ecx
jmp 0x1001a601
mov ecx, dword [esp + 0x60]
mov eax, 0x607e2c02
mov dword [esp + 0x28], ecx
jmp 0x1001a601
mov eax, dword [esp + 0x54]
cmp eax, 0x3e5
mov eax, 0x56f16eec
setne byte [esp + 0x1a]
jmp 0x1001a601
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x72
not dl
and dl, 0x8d
or cl, dl
xor cl, 0xf0
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x6e
cmp ecx, 0x1d9e0de8
je 0x1001b0a7
cmp ecx, 0xb58e6c93
jne 0x1001aebf
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xca9bf9d7
not edx
and edx, 0x35640628
or ecx, edx
xor ecx, 0x35640654
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001aebf
mov eax, dword [esp]
mov ecx, eax
and al, 0x25
not cl
and cl, 0xda
or al, cl
mov ecx, dword [esp + 8]
xor al, 0xa6
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 8]
mov dword [esp + 4], 0x72
cmp ecx, 0x1d9e0de8
je 0x1001b103
cmp ecx, 0xb58e6c93
jne 0x1001af20
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x6cbb8ac7
not edx
and edx, 0x93447538
or ecx, edx
xor ecx, 0x93447544
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001af20
xor eax, eax
mov ecx, 0xe5074dd1
cmp ecx, 0xe0c30169
jle 0x1001af99
cmp ecx, 0x234cca89
jg 0x1001afba
cmp ecx, 0xe0c3016a
je 0x1001afdd
cmp ecx, 0xe5074dd1
jne 0x1001af61
mov dword [esp], eax
mov edx, 0xadc52292
mov ecx, dword [esp]
cmp ecx, 0xe
mov ecx, 0xe0c3016a
cmovb ecx, edx
jmp 0x1001af61
cmp ecx, 0xaa6a462e
je 0x1001aff3
cmp ecx, 0xadc52292
je 0x1001b033
cmp ecx, 0xb4125676
jne 0x1001af61
jmp 0x1001b041
cmp ecx, 0x234cca8a
je 0x1001b150
cmp ecx, 0x55a52ef8
jne 0x1001af61
mov ecx, dword [esp + 0x14]
mov dword [esp + 8], ecx
mov ecx, 0x234cca8a
jmp 0x1001af61
mov dword [esp + 0x14], ebp
mov ecx, dword [esp + 0x14]
mov byte [ecx + 0xe], 0
mov ecx, 0x55a52ef8
jmp 0x1001af61
mov ecx, dword [esp + 0xc]
add ecx, dword [esp]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov cl, byte [ecx]
mov ebx, dword [esp]
mov edx, ecx
add ebx, 0x7c
and cl, 0x83
not dl
mov edi, ebx
and dl, 0x7c
not edi
or cl, dl
movsx ecx, cl
and edi, ecx
not ecx
and ecx, ebx
or ecx, edi
mov dword [esp + 4], ecx
mov ecx, 0xb4125676
jmp 0x1001af61
mov dword [esp + 0xc], ebp
mov ecx, 0xaa6a462e
jmp 0x1001af61
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x10]
mov byte [ecx], al
mov eax, dword [esp]
inc eax
jmp 0x1001af5c
mov eax, dword [esp]
mov ecx, eax
and al, 0x83
not cl
and cl, 0x7c
or al, cl
mov ecx, dword [esp + 0x24]
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 0x24]
mov dword [esp + 4], 0x72
cmp ecx, 0x1d9e0de8
je 0x1001b1a6
cmp ecx, 0xb58e6c93
jne 0x1001b079
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b079
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x3e
not dl
and dl, 0xc1
or cl, dl
xor cl, 0xbf
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x6e
cmp ecx, 0x1d9e0de8
je 0x1001b1f6
cmp ecx, 0xb58e6c93
jne 0x1001b0c9
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xe62f68e4
not edx
and edx, 0x19d0971b
or ecx, edx
xor ecx, 0x19d09767
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b0c9
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x82
not dl
and dl, 0x7d
or cl, dl
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001b243
cmp ecx, 0xb58e6c93
jne 0x1001b122
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b122
mov ecx, dword [esp + 8]
call fcn.1001a30b
xor ecx, ecx
push ecx
push ecx
push ecx
mov ecx, dword [esp + 0xb0]
push dword [ecx]
call eax
mov eax, 0xb58e6c93
mov dword [esp + 8], ebp
mov dword [esp + 4], 0x47
cmp eax, 0x1d9e0de8
je 0x1001b290
cmp eax, 0xb58e6c93
jne 0x1001b17a
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0xffffff83
not ecx
and ecx, 0x7c
or eax, ecx
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001b17a
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x81
not dl
and dl, 0x7e
or cl, dl
xor cl, 3
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001b8d7
cmp ecx, 0xb58e6c93
jne 0x1001b1c8
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b1c8
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x80
not dl
and dl, 0x7f
or cl, dl
mov byte [eax + 3], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001b930
cmp ecx, 0xb58e6c93
jne 0x1001b215
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b215
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x81
not dl
and dl, 0x7e
or cl, dl
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x61
cmp ecx, 0x1d9e0de8
je 0x1001b98c
cmp ecx, 0xb58e6c93
jne 0x1001b262
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b262
mov eax, dword [esp]
mov ecx, eax
and al, 0xfa
not cl
and cl, 5
or al, cl
mov ecx, dword [esp + 8]
xor al, 0x79
mov byte [ecx], al
mov ecx, 0x3cbe0602
cmp ecx, 0x3cbe0601
jg 0x1001b2c8
cmp ecx, 0xb67273ab
je 0x1001b327
cmp ecx, 0xcb9b20c
jne 0x1001b2ab
jmp 0x1001b9e8
cmp ecx, 0x63449277
je 0x1001b36a
cmp ecx, 0x3cbe0602
jne 0x1001b2ab
mov ecx, dword [esp + 8]
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp edx, 0x1d9e0de8
je 0x1001b384
cmp edx, 0xb58e6c93
jne 0x1001b2ed
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xe1b576ce
not edi
and edi, 0x1e4a8931
or edx, edi
xor edx, 0x1e4a894d
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b2ed
mov eax, 0xb58e6c93
mov dword [esp + 4], 0x73
cmp eax, 0x1d9e0de8
je 0x1001b3d0
cmp eax, 0xb58e6c93
jne 0x1001b334
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0xe1f0bcc0
not ecx
and ecx, 0x1e0f433f
or eax, ecx
xor eax, 0x1e0f4343
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001b334
mov byte [eax], 0
inc eax
mov ecx, 0x63449277
mov edx, 0xcb9b20c
cmp eax, dword [esp + 0x10]
cmove ecx, edx
jmp 0x1001b2ab
mov edx, dword [esp]
mov ebx, edx
and dl, 0x5c
not bl
and bl, 0xa3
or dl, bl
xor dl, 0xde
mov byte [ecx + 1], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x74
cmp edx, 0x1d9e0de8
je 0x1001b41f
cmp edx, 0xb58e6c93
jne 0x1001b3a6
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b3a6
mov eax, dword [esp]
mov ecx, eax
and al, 0x74
not cl
and cl, 0x8b
or al, cl
mov ecx, dword [esp + 0xc]
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 0xc]
mov dword [esp + 4], 0x75
cmp ecx, 0x1d9e0de8
je 0x1001b47b
cmp ecx, 0xb58e6c93
jne 0x1001b3f5
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b3f5
mov edx, dword [esp]
mov ebx, edx
and dl, 0xa9
not bl
and bl, 0x56
or dl, bl
xor dl, 0x28
mov byte [ecx + 2], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x4f
cmp edx, 0x1d9e0de8
je 0x1001b4d0
cmp edx, 0xb58e6c93
jne 0x1001b441
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0x8e335471
not edi
and edi, 0x71ccab8e
or edx, edi
xor edx, 0x71ccabf2
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b441
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x73
not dl
and dl, 0x8c
or cl, dl
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x6c
cmp ecx, 0x1d9e0de8
je 0x1001b51c
cmp ecx, 0xb58e6c93
jne 0x1001b49a
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x9881cffa
not edx
and edx, 0x677e3005
or ecx, edx
xor ecx, 0x677e3079
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b49a
mov edx, dword [esp]
mov ebx, edx
and dl, 0xd0
not bl
and bl, 0x2f
or dl, bl
xor dl, 0x50
mov byte [ecx + 3], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x76
cmp edx, 0x1d9e0de8
je 0x1001b568
cmp edx, 0xb58e6c93
jne 0x1001b4f2
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b4f2
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x41
not dl
and dl, 0xbe
or cl, dl
xor cl, 0x33
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x74
cmp ecx, 0x1d9e0de8
je 0x1001b5b1
cmp ecx, 0xb58e6c93
jne 0x1001b53e
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b53e
mov edx, dword [esp]
mov ebx, edx
and dl, 0x7f
not bl
and bl, 0x80
or dl, bl
mov byte [ecx + 4], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp edx, 0x1d9e0de8
je 0x1001b5db
cmp edx, 0xb58e6c93
jne 0x1001b587
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b587
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x71
not dl
and dl, 0x8e
or cl, dl
mov byte [eax + 3], cl
add eax, 4
mov ecx, dword [esp + 8]
add ecx, 0x14
mov dword [esp + 0x10], ecx
mov ecx, 0x63449277
jmp 0x1001b2ab
mov edx, dword [esp]
mov ebx, edx
and dl, 0xf9
not bl
and bl, 6
or dl, bl
xor dl, 0x87
mov byte [ecx + 5], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x72
cmp edx, 0x1d9e0de8
je 0x1001b633
cmp edx, 0xb58e6c93
jne 0x1001b5fd
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xee31101b
not edi
and edi, 0x11ceefe4
or edx, edi
xor edx, 0x11ceef98
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b5fd
mov edx, dword [esp]
mov ebx, edx
and dl, 0x62
not bl
and bl, 0x9d
or dl, bl
xor dl, 0x1f
mov byte [ecx + 6], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x6c
cmp edx, 0x1d9e0de8
je 0x1001b67f
cmp edx, 0xb58e6c93
jne 0x1001b655
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b655
mov edx, dword [esp]
mov ebx, edx
and dl, 0x39
not bl
and bl, 0xc6
or dl, bl
xor dl, 0x45
mov byte [ecx + 7], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x61
cmp edx, 0x1d9e0de8
je 0x1001b6d7
cmp edx, 0xb58e6c93
jne 0x1001b6a1
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0x2c06748a
not edi
and edi, 0xd3f98b75
or edx, edi
xor edx, 0xd3f98b09
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b6a1
mov edx, dword [esp]
mov ebx, edx
and dl, 0x7b
not bl
and bl, 0x84
or dl, bl
mov byte [ecx + 8], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x70
cmp edx, 0x1d9e0de8
je 0x1001b720
cmp edx, 0xb58e6c93
jne 0x1001b6f6
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b6f6
mov edx, dword [esp]
mov ebx, edx
and dl, 0x7a
not bl
and bl, 0x85
or dl, bl
mov byte [ecx + 9], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x70
cmp edx, 0x1d9e0de8
je 0x1001b769
cmp edx, 0xb58e6c93
jne 0x1001b73f
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b73f
mov edx, dword [esp]
mov ebx, edx
and dl, 0x79
not bl
and bl, 0x86
or dl, bl
mov byte [ecx + 0xa], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp edx, 0x1d9e0de8
je 0x1001b7b2
cmp edx, 0xb58e6c93
jne 0x1001b788
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xffffff83
not edi
and edi, 0x7c
or edx, edi
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b788
mov edx, dword [esp]
mov ebx, edx
and dl, 0x56
not bl
and bl, 0xa9
or dl, bl
xor dl, 0x2e
mov byte [ecx + 0xb], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x64
cmp edx, 0x1d9e0de8
je 0x1001b80a
cmp edx, 0xb58e6c93
jne 0x1001b7d4
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xb77e6b6c
not edi
and edi, 0x48819493
or edx, edi
xor edx, 0x488194ef
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b7d4
mov edx, dword [esp]
mov ebx, edx
and dl, 0x77
not bl
and bl, 0x88
or dl, bl
mov byte [ecx + 0xc], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x52
cmp edx, 0x1d9e0de8
je 0x1001b85f
cmp edx, 0xb58e6c93
jne 0x1001b829
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xdb44a4a2
not edi
and edi, 0x24bb5b5d
or edx, edi
xor edx, 0x24bb5b21
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b829
mov edx, dword [esp]
mov ebx, edx
and dl, 0x76
not bl
and bl, 0x89
or dl, bl
mov byte [ecx + 0xd], dl
mov edx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp edx, 0x1d9e0de8
je 0x1001b8b4
cmp edx, 0xb58e6c93
jne 0x1001b87e
mov edx, dword [esp + 4]
mov edi, edx
and edx, 0xf65422e3
not edi
and edi, 0x9abdd1c
or edx, edi
xor edx, 0x9abdd60
mov dword [esp], edx
mov edx, 0x1d9e0de8
jmp 0x1001b87e
mov edx, dword [esp]
mov ebx, edx
and dl, 0x75
not bl
and bl, 0x8a
or dl, bl
mov byte [ecx + 0xe], dl
add ecx, 0xf
mov dword [esp + 0xc], ecx
mov ecx, 0xb67273ab
jmp 0x1001b2ab
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x81
not dl
and dl, 0x7e
or cl, dl
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x61
cmp ecx, 0x1d9e0de8
je 0x1001bad9
cmp ecx, 0xb58e6c93
jne 0x1001b8f6
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x8479a9d
not edx
and edx, 0xf7b86562
or ecx, edx
xor ecx, 0xf7b8651e
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b8f6
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x51
not dl
and dl, 0xae
or cl, dl
xor cl, 0x2e
mov byte [eax + 4], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x63
cmp ecx, 0x1d9e0de8
je 0x1001bdd2
cmp ecx, 0xb58e6c93
jne 0x1001b952
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xb8d8abb7
not edx
and edx, 0x47275448
or ecx, edx
xor ecx, 0x47275434
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b952
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x9b
not dl
and dl, 0x64
or cl, dl
xor cl, 0x1b
mov byte [eax + 3], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x74
cmp ecx, 0x1d9e0de8
je 0x1001be2e
cmp ecx, 0xb58e6c93
jne 0x1001b9ae
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x83313cd9
not edx
and edx, 0x7ccec326
or ecx, edx
xor ecx, 0x7ccec35a
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001b9ae
xor eax, eax
mov ecx, 0x74d29090
cmp ecx, 0x36abdca2
jle 0x1001ba1a
cmp ecx, 0x74b6e280
jg 0x1001ba34
cmp ecx, 0x36abdca3
je 0x1001ba60
cmp ecx, 0x4dcb1776
jne 0x1001b9ef
mov dword [esp + 0x14], ebp
mov ecx, 0xe51e4dc0
jmp 0x1001b9ef
cmp ecx, 0xaac92ec9
je 0x1001ba7e
cmp ecx, 0xe51e4dc0
je 0x1001ba9c
cmp ecx, 0x5882613
jne 0x1001b9ef
jmp 0x1001bab1
cmp ecx, 0x74b6e281
je 0x1001be87
cmp ecx, 0x74d29090
jne 0x1001b9ef
mov dword [esp], eax
mov edx, 0x36abdca3
mov ecx, dword [esp]
cmp ecx, 0x13
mov ecx, 0x4dcb1776
cmovb ecx, edx
jmp 0x1001b9ef
mov ecx, dword [esp]
add ecx, ebp
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xc]
movsx ecx, byte [ecx]
mov dword [esp + 0x10], ecx
mov ecx, 0xaac92ec9
jmp 0x1001b9ef
mov ecx, dword [esp + 0x10]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp + 4], ecx
mov ecx, 0x5882613
jmp 0x1001b9ef
mov ecx, dword [esp + 0x14]
add ecx, 0x13
mov dword [esp + 8], ecx
mov ecx, 0x74b6e281
jmp 0x1001b9ef
mov ecx, dword [esp]
mov edi, dword [esp + 4]
mov eax, 0xffffff83
sub eax, ecx
lea edx, [ecx + 0x7c]
and eax, edi
not edi
and edi, edx
mov edx, dword [esp + 0xc]
or eax, edi
mov byte [edx], al
mov eax, dword [esp]
inc eax
jmp 0x1001b9ea
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x80
not dl
and dl, 0x7f
or cl, dl
mov byte [eax + 3], cl
add eax, 4
mov ecx, 0x46782ac3
mov dword [esp + 8], 0x100946f8
mov dword [esp + 0x14], eax
cmp ecx, 0x46782ac2
jg 0x1001bb55
cmp ecx, 0xa20fe888
je 0x1001bba7
cmp ecx, 0x5d6ea72
jne 0x1001baff
movsx eax, byte [esp + 0x1b]
mov dword [esp + 4], eax
mov eax, 0xb58e6c93
cmp eax, 0x1d9e0de8
je 0x1001bbc1
cmp eax, 0xb58e6c93
jne 0x1001bb29
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0xffffff83
not ecx
and ecx, 0x7c
or eax, ecx
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001bb29
cmp ecx, 0x73e67709
je 0x1001bec8
cmp ecx, 0x46782ac3
jne 0x1001baff
mov ecx, dword [esp + 8]
movsx ecx, byte [ecx]
mov dword [esp + 4], ecx
mov ecx, 0xb58e6c93
cmp ecx, 0x1d9e0de8
je 0x1001bc1e
cmp ecx, 0xb58e6c93
jne 0x1001bb79
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bb79
mov byte [eax], 0
inc eax
mov ecx, 0xa20fe888
mov edx, 0x73e67709
cmp eax, dword [esp + 0x10]
cmove ecx, edx
jmp 0x1001baff
mov eax, dword [esp]
mov ecx, eax
and al, 0xf8
not cl
and cl, 7
or al, cl
mov ecx, dword [esp + 0xc]
xor al, 0x86
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 0xc]
mov dword [esp + 4], 0x46
cmp ecx, 0x1d9e0de8
je 0x1001bc4b
cmp ecx, 0xb58e6c93
jne 0x1001bbe8
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x7b1635d4
not edx
and edx, 0x84e9ca2b
or ecx, edx
xor ecx, 0x84e9ca57
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bbe8
mov ecx, dword [esp]
mov esi, dword [esp + 0x14]
mov edx, ecx
and cl, 0x7f
not dl
and dl, 0x80
or cl, dl
mov byte [esi], cl
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x1b], 0x65
inc ecx
mov dword [esp + 0xc], ecx
mov ecx, 0x5d6ea72
jmp 0x1001baff
mov ecx, dword [esp]
mov edx, ecx
and cl, 0xb2
not dl
and dl, 0x4d
or cl, dl
xor cl, 0xcf
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x69
cmp ecx, 0x1d9e0de8
je 0x1001bca3
cmp ecx, 0xb58e6c93
jne 0x1001bc6d
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xcea4858b
not edx
and edx, 0x315b7a74
or ecx, edx
xor ecx, 0x315b7a08
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bc6d
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7c
not dl
and dl, 0x83
or cl, dl
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x6c
cmp ecx, 0x1d9e0de8
je 0x1001bcf8
cmp ecx, 0xb58e6c93
jne 0x1001bcc2
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x15ea1e08
not edx
and edx, 0xea15e1f7
or ecx, edx
xor ecx, 0xea15e18b
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bcc2
mov ecx, dword [esp]
mov edx, ecx
and cl, 0xfc
not dl
and dl, 3
or cl, dl
xor cl, 0x87
mov byte [eax + 3], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001bd50
cmp ecx, 0xb58e6c93
jne 0x1001bd1a
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xdf47c326
not edx
and edx, 0x20b83cd9
or ecx, edx
xor ecx, 0x20b83ca5
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bd1a
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x4c
not dl
and dl, 0xb3
or cl, dl
xor cl, 0x36
mov byte [eax + 4], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x57
cmp ecx, 0x1d9e0de8
je 0x1001bda8
cmp ecx, 0xb58e6c93
jne 0x1001bd72
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x5be21c97
not edx
and edx, 0xa41de368
or ecx, edx
xor ecx, 0xa41de314
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bd72
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x79
not dl
and dl, 0x86
or cl, dl
mov byte [eax + 5], cl
add eax, 6
mov ecx, dword [esp + 0x24]
add ecx, 0xc
mov dword [esp + 0x10], ecx
mov ecx, 0xa20fe888
jmp 0x1001baff
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x44
not dl
and dl, 0xbb
or cl, dl
xor cl, 0x3a
mov byte [eax + 5], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x74
cmp ecx, 0x1d9e0de8
je 0x1001bfd6
cmp ecx, 0xb58e6c93
jne 0x1001bdf4
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x9c6ae8d9
not edx
and edx, 0x63951726
or ecx, edx
xor ecx, 0x6395175a
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bdf4
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7f
not dl
and dl, 0x80
or cl, dl
mov byte [eax + 4], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001c02f
cmp ecx, 0xb58e6c93
jne 0x1001be4d
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xc8da731b
not edx
and edx, 0x37258ce4
or ecx, edx
xor ecx, 0x37258c98
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001be4d
mov eax, dword [esp + 8]
mov byte [eax], 0
mov ecx, dword [esp + 0x14]
call fcn.1001a30b
push 0
lea ecx, [esp + 0x44]
push ecx
push dword [esp + 0xb0]
mov ecx, dword [esp + 0xac]
push dword [ecx]
call eax
test eax, eax
mov eax, 0x607e2c02
mov ecx, 0x9a3dfb01
mov dword [esp + 0x28], esi
cmove eax, ecx
jmp 0x1001a601
xor eax, eax
mov ecx, 0x51691f31
cmp ecx, 0xff43c17
jle 0x1001bf02
cmp ecx, 0x51691f30
jg 0x1001bf29
cmp ecx, 0xff43c18
je 0x1001bfc3
cmp ecx, 0x4f47243f
jne 0x1001becf
mov ecx, dword [esp + 0x14]
mov byte [ecx + 0xb], 0
mov ecx, 0xa8f09dfc
jmp 0x1001becf
cmp ecx, 0xa8f09dfc
je 0x1001c07f
cmp ecx, 0xf513dfc4
je 0x1001bf54
cmp ecx, 0xff5c13ca
jne 0x1001becf
mov dword [esp + 0x14], ebp
mov ecx, 0x4f47243f
jmp 0x1001becf
cmp ecx, 0x5cf075e6
je 0x1001bf8d
cmp ecx, 0x51691f31
jne 0x1001becf
mov dword [esp], eax
mov edx, 0xf513dfc4
mov ecx, dword [esp]
cmp ecx, 0xb
mov ecx, 0xff5c13ca
cmovb ecx, edx
jmp 0x1001becf
mov ecx, dword [esp]
add ecx, ebp
mov dword [esp + 8], ecx
mov ecx, dword [esp + 8]
mov cl, byte [ecx]
mov edx, ecx
and cl, 0x2a
not dl
and dl, 0xd5
or cl, dl
xor cl, 0xa9
movsx ecx, cl
mov dword [esp + 0xc], ecx
mov ecx, dword [esp]
add ecx, 0x7c
mov dword [esp + 0x10], ecx
mov ecx, 0x5cf075e6
jmp 0x1001becf
mov ecx, dword [esp + 0xc]
mov edi, dword [esp + 0x10]
mov ebx, 0x321b03a8
mov esi, 0xcde4fc57
mov edx, edi
and edi, esi
not edx
and edx, ebx
or edi, edx
mov edx, ecx
and ecx, esi
not edx
and edx, ebx
or ecx, edx
xor ecx, edi
mov dword [esp + 4], ecx
mov ecx, 0xff43c18
jmp 0x1001becf
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov byte [ecx], al
mov eax, dword [esp]
inc eax
jmp 0x1001beca
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7d
not dl
and dl, 0x82
or cl, dl
mov byte [eax + 6], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x4e
cmp ecx, 0x1d9e0de8
je 0x1001c0c7
cmp ecx, 0xb58e6c93
jne 0x1001bff5
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x459f795
not edx
and edx, 0xfba6086a
or ecx, edx
xor ecx, 0xfba60816
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001bff5
mov ecx, dword [esp]
mov edx, ecx
and cl, 0xe8
not dl
and dl, 0x17
or cl, dl
xor cl, 0x96
mov byte [eax + 5], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x4e
cmp ecx, 0x1d9e0de8
je 0x1001c113
cmp ecx, 0xb58e6c93
jne 0x1001c051
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c051
mov ecx, dword [esp + 0x14]
call fcn.1001a30b
mov ecx, dword [esp + 0x20]
xor edi, edi
push edi
push 0x40000000
push 2
lea edx, [esp + 0x50]
push edx
push edi
push 0xc0000000
push dword [ecx]
call eax
mov ecx, dword [esp + 0xa4]
mov esi, dword [esp + 0x1c]
cmp eax, 0xffffffff
mov edx, 0x66cdad7e
mov dword [ecx], eax
mov eax, 0xd9c44892
cmove eax, edx
jmp 0x1001a601
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x8d
not dl
and dl, 0x72
or cl, dl
xor cl, 0xf1
mov byte [eax + 7], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x61
cmp ecx, 0x1d9e0de8
je 0x1001c15c
cmp ecx, 0xb58e6c93
jne 0x1001c0e9
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c0e9
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7d
not dl
and dl, 0x82
or cl, dl
mov byte [eax + 6], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x61
cmp ecx, 0x1d9e0de8
je 0x1001c1a5
cmp ecx, 0xb58e6c93
jne 0x1001c132
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c132
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7b
not dl
and dl, 0x84
or cl, dl
mov byte [eax + 8], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x6d
cmp ecx, 0x1d9e0de8
je 0x1001c1ee
cmp ecx, 0xb58e6c93
jne 0x1001c17b
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c17b
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7c
not dl
and dl, 0x83
or cl, dl
mov byte [eax + 7], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x6d
cmp ecx, 0x1d9e0de8
je 0x1001c237
cmp ecx, 0xb58e6c93
jne 0x1001c1c4
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c1c4
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7a
not dl
and dl, 0x85
or cl, dl
mov byte [eax + 9], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001c290
cmp ecx, 0xb58e6c93
jne 0x1001c20d
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c20d
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x7b
not dl
and dl, 0x84
or cl, dl
mov byte [eax + 8], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001c2e5
cmp ecx, 0xb58e6c93
jne 0x1001c256
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x9090f5a
not edx
and edx, 0xf6f6f0a5
or ecx, edx
xor ecx, 0xf6f6f0d9
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c256
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x79
not dl
and dl, 0x86
or cl, dl
mov byte [eax + 0xa], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x64
cmp ecx, 0x1d9e0de8
je 0x1001c335
cmp ecx, 0xb58e6c93
jne 0x1001c2af
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x9e73d589
not edx
and edx, 0x618c2a76
or ecx, edx
xor ecx, 0x618c2a0a
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c2af
mov ecx, dword [esp]
mov edx, ecx
and cl, 0xc8
not dl
and dl, 0x37
or cl, dl
xor cl, 0xb2
mov byte [eax + 9], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x64
cmp ecx, 0x1d9e0de8
je 0x1001c4fa
cmp ecx, 0xb58e6c93
jne 0x1001c307
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c307
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x78
not dl
and dl, 0x87
or cl, dl
mov byte [eax + 0xb], cl
add eax, 0xc
mov ecx, 0x644b2cc9
mov dword [esp + 0xc], eax
cmp ecx, 0x45e5188e
jg 0x1001c3a5
cmp ecx, 0x90a8a16c
je 0x1001c547
cmp ecx, 0x9fcb5450
jne 0x1001c353
movsx eax, byte [esp + 0x14]
mov dword [esp + 4], eax
mov eax, 0xb58e6c93
cmp eax, 0x1d9e0de8
je 0x1001c3c1
cmp eax, 0xb58e6c93
jne 0x1001c37d
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0xffffff83
not ecx
and ecx, 0x7c
or eax, ecx
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001c37d
cmp ecx, 0x45e5188f
je 0x1001c41e
cmp ecx, 0x644b2cc9
jne 0x1001c353
mov byte [esp + 0x14], 0x50
mov ecx, 0x9fcb5450
jmp 0x1001c353
mov eax, dword [esp]
mov ecx, eax
and al, 0x2c
not cl
and cl, 0xd3
or al, cl
mov ecx, dword [esp + 0xc]
xor al, 0x5b
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 0xc]
mov dword [esp + 4], 0x69
cmp ecx, 0x1d9e0de8
je 0x1001c438
cmp ecx, 0xb58e6c93
jne 0x1001c3e8
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0x975116de
not edx
and edx, 0x68aee921
or ecx, edx
xor ecx, 0x68aee95d
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c3e8
mov byte [eax], 0
inc eax
mov ecx, 0x45e5188f
mov edx, 0x90a8a16c
cmp eax, dword [esp + 0x10]
cmove ecx, edx
jmp 0x1001c353
mov ecx, dword [esp]
mov edx, ecx
and cl, 0xe9
not dl
and dl, 0x16
or cl, dl
xor cl, 0x9f
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x70
cmp ecx, 0x1d9e0de8
je 0x1001c484
cmp ecx, 0xb58e6c93
jne 0x1001c45a
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c45a
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x3d
not dl
and dl, 0xc2
or cl, dl
xor cl, 0x48
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001c4d0
cmp ecx, 0xb58e6c93
jne 0x1001c4a6
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c4a6
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x74
not dl
and dl, 0x8b
or cl, dl
mov byte [eax + 3], cl
add eax, 4
mov ecx, dword [esp + 8]
add ecx, 0x11
mov dword [esp + 0x10], ecx
mov ecx, 0x45e5188f
jmp 0x1001c353
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x79
not dl
and dl, 0x86
or cl, dl
mov byte [eax + 0xa], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x50
cmp ecx, 0x1d9e0de8
je 0x1001c63e
cmp ecx, 0xb58e6c93
jne 0x1001c519
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c519
xor eax, eax
mov ecx, 0x4ee1a077
cmp ecx, 0x32840126
jle 0x1001c57d
cmp ecx, 0x4ee1a076
jg 0x1001c59e
cmp ecx, 0x32840127
je 0x1001c5c6
cmp ecx, 0x4279fda8
jne 0x1001c54e
mov ecx, dword [esp + 4]
mov byte [esp + 8], cl
mov ecx, 0xe7b4602c
jmp 0x1001c54e
cmp ecx, 0xa34e7fbe
je 0x1001c5d8
cmp ecx, 0xe7b4602c
je 0x1001c62b
cmp ecx, 0x26268c63
jne 0x1001c54e
jmp 0x1001c7f8
cmp ecx, 0x6c0f346a
je 0x1001c5e6
cmp ecx, 0x4ee1a077
jne 0x1001c54e
mov dword [esp], eax
mov edx, 0x6c0f346a
mov ecx, dword [esp]
cmp ecx, 0x10
mov ecx, 0xa34e7fbe
cmovb ecx, edx
jmp 0x1001c54e
mov ecx, dword [esp + 0xc]
mov byte [ecx + 0x10], 0
mov ecx, 0x26268c63
jmp 0x1001c54e
mov dword [esp + 0xc], ebp
mov ecx, 0x32840127
jmp 0x1001c54e
mov ecx, dword [esp]
mov edi, esi
add ecx, ebp
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov cl, byte [ecx]
mov ebx, dword [esp]
mov edx, ecx
and cl, 0x62
add ebx, 0x7c
not dl
mov esi, ebx
and dl, 0x9d
not esi
or cl, dl
xor cl, 0xe1
movsx ecx, cl
and esi, ecx
not ecx
and ecx, ebx
or ecx, esi
mov esi, edi
mov dword [esp + 4], ecx
mov ecx, 0x4279fda8
jmp 0x1001c54e
mov eax, dword [esp + 0x10]
mov cl, byte [esp + 8]
mov byte [eax], cl
mov eax, dword [esp]
inc eax
jmp 0x1001c549
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x78
not dl
and dl, 0x87
or cl, dl
mov byte [eax + 0xb], cl
add eax, 0xc
mov ecx, 0x644b2cc9
mov dword [esp + 0xc], eax
cmp ecx, 0x45e5188e
jg 0x1001c6ae
cmp ecx, 0x90a8a16c
je 0x1001c82f
cmp ecx, 0x9fcb5450
jne 0x1001c65c
movsx eax, byte [esp + 0x14]
mov dword [esp + 4], eax
mov eax, 0xb58e6c93
cmp eax, 0x1d9e0de8
je 0x1001c6ca
cmp eax, 0xb58e6c93
jne 0x1001c686
mov eax, dword [esp + 4]
mov ecx, eax
and eax, 0xffffff83
not ecx
and ecx, 0x7c
or eax, ecx
mov dword [esp], eax
mov eax, 0x1d9e0de8
jmp 0x1001c686
cmp ecx, 0x45e5188f
je 0x1001c719
cmp ecx, 0x644b2cc9
jne 0x1001c65c
mov byte [esp + 0x14], 0x69
mov ecx, 0x9fcb5450
jmp 0x1001c65c
mov eax, dword [esp]
mov ecx, eax
and al, 0x77
not cl
and cl, 0x88
or al, cl
mov ecx, dword [esp + 0xc]
mov byte [ecx], al
mov ecx, 0xb58e6c93
mov eax, dword [esp + 0xc]
mov dword [esp + 4], 0x70
cmp ecx, 0x1d9e0de8
je 0x1001c733
cmp ecx, 0xb58e6c93
jne 0x1001c6ef
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c6ef
mov byte [eax], 0
inc eax
mov ecx, 0x45e5188f
mov edx, 0x90a8a16c
cmp eax, dword [esp + 0x10]
cmove ecx, edx
jmp 0x1001c65c
mov ecx, dword [esp]
mov edx, ecx
and cl, 0xc2
not dl
and dl, 0x3d
or cl, dl
xor cl, 0xb4
mov byte [eax + 1], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x65
cmp ecx, 0x1d9e0de8
je 0x1001c77f
cmp ecx, 0xb58e6c93
jne 0x1001c755
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c755
mov ecx, dword [esp]
mov edx, ecx
and cl, 0xad
not dl
and dl, 0x52
or cl, dl
xor cl, 0xd8
mov byte [eax + 2], cl
mov ecx, 0xb58e6c93
mov dword [esp + 4], 0x57
cmp ecx, 0x1d9e0de8
je 0x1001c7cb
cmp ecx, 0xb58e6c93
jne 0x1001c7a1
mov ecx, dword [esp + 4]
mov edx, ecx
and ecx, 0xffffff83
not edx
and edx, 0x7c
or ecx, edx
mov dword [esp], ecx
mov ecx, 0x1d9e0de8
jmp 0x1001c7a1
mov ecx, dword [esp]
mov edx, ecx
and cl, 0x69
not dl
and dl, 0x96
or cl, dl
xor cl, 0x1d
mov byte [eax + 3], cl
add eax, 4
mov ecx, dword [esp + 8]
add ecx, 0x11
mov dword [esp + 0x10], ecx
mov ecx, 0x45e5188f
jmp 0x1001c65c
mov ecx, dword [esp + 0xc]
call fcn.1001a30b
push dword [esp + 0xa8]
mov ecx, dword [esp + 0xa4]
push dword [ecx]
call eax
test eax, eax
mov eax, 0x6a65c7c9
mov ecx, 0xe1a95fbb
cmove eax, ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x1c], ecx
jmp 0x1001a601
xor eax, eax
mov ecx, 0x4ee1a077
cmp ecx, 0x32840126
jle 0x1001c865
cmp ecx, 0x4ee1a076
jg 0x1001c886
cmp ecx, 0x32840127
je 0x1001c8ae
cmp ecx, 0x4279fda8
jne 0x1001c836
mov ecx, dword [esp + 4]
mov byte [esp + 8], cl
mov ecx, 0xe7b4602c
jmp 0x1001c836
cmp ecx, 0xa34e7fbe
je 0x1001c8c0
cmp ecx, 0xe7b4602c
je 0x1001c90c
cmp ecx, 0x26268c63
jne 0x1001c836
jmp 0x1001c91f
cmp ecx, 0x6c0f346a
je 0x1001c8ce
cmp ecx, 0x4ee1a077
jne 0x1001c836
mov dword [esp], eax
mov edx, 0x6c0f346a
mov ecx, dword [esp]
cmp ecx, 0x10
mov ecx, 0xa34e7fbe
cmovb ecx, edx
jmp 0x1001c836
mov ecx, dword [esp + 0xc]
mov byte [ecx + 0x10], 0
mov ecx, 0x26268c63
jmp 0x1001c836
mov dword [esp + 0xc], ebp
mov ecx, 0x32840127
jmp 0x1001c836
mov ecx, dword [esp]
add ecx, ebp
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x10]
mov cl, byte [ecx]
mov edi, dword [esp]
mov edx, ecx
add edi, 0x7c
and cl, 0x83
not dl
mov ebx, edi
and dl, 0x7c
not ebx
or cl, dl
movsx ecx, cl
and ebx, ecx
not ecx
and ecx, edi
or ecx, ebx
mov dword [esp + 4], ecx
mov ecx, 0x4279fda8
jmp 0x1001c836
mov eax, dword [esp + 0x10]
mov cl, byte [esp + 8]
mov byte [eax], cl
mov eax, dword [esp]
inc eax
jmp 0x1001c831
mov ecx, dword [esp + 0xc]
call fcn.1001a30b
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x44]
xor edi, edi
push edx
push edi
mov edx, 0x1000
push edx
push edx
push 0xff
mov dword [esp + 0x40], 0
push edi
push 0x40000003
push dword [ecx]
call eax
mov ecx, dword [esp + 0xa0]
cmp eax, 0xffffffff
mov edx, 0x470730f1
mov dword [ecx], eax
mov eax, 0xb8280ab0
cmove eax, edx
jmp 0x1001a601
lea ecx, [esp + 0x64]
call fcn.10004ce8
mov eax, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
mov eax, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
add esp, 0x88
pop esi
pop edi
pop ebx
pop ebp
ret 0x10