Function at 0x425b10
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xec
mov dword [ebp - 0x28], 0x333
mov dword [ebp - 0x4c], 0x1dd
mov dword [ebp - 0x44], 0x137
mov dword [ebp - 0xc], 0x30d
mov dword [ebp - 0x1c], 0x259
mov dword [ebp - 0x24], 0xa5
mov dword [ebp - 0x20], 0x1b
mov dword [ebp - 0x30], 0x36
mov dword [ebp - 0x18], 0x3c9
mov dword [ebp - 0x70], 0x374
mov dword [ebp - 0x2c], 0x3e2
mov dword [ebp - 0x10], 0x262
mov dword [ebp - 0x50], 0xbf
mov dword [ebp - 0x48], 0x3a5
mov dword [ebp - 8], 0x345
mov dword [ebp - 0x38], 0x5c
mov dword [ebp - 0x3c], 0x8b
mov dword [ebp - 4], 0x6e
mov dword [ebp - 0xd8], 0x3b7
mov dword [ebp - 0x74], 0x135
mov dword [ebp - 0x34], 0xb1
mov dword [ebp - 0x14], 0x17d
mov dword [ebp - 0x40], 0x336
mov eax, dword [ebp - 0x50]
sub eax, 0x18
push eax
mov ecx, dword [ebp - 0xd8]
sub ecx, 0x19
push ecx
mov edx, dword [0x514eb8]
add edx, 0xa
push edx
mov eax, dword [0x514ef8]
sub eax, 0x2ce
push eax
mov ecx, dword [0x514e7c]
sub ecx, 0x2c3
push ecx
mov edx, dword [ebp - 4]
add edx, 0x90
push edx
call fcn.0040a9e0
add esp, 0x18
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x30]
jge 0x425c13
mov dword [ebp - 0x7c], 1
jmp 0x425c1a
mov dword [ebp - 0x7c], 0
mov ecx, dword [0x514ef8]
cmp ecx, dword [ebp - 0x10]
jge 0x425c2e
mov dword [ebp - 0x80], 1
jmp 0x425c35
mov dword [ebp - 0x80], 0
mov edx, dword [ebp - 4]
sub edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x7c]
and ecx, dword [ebp - 0x80]
and ecx, eax
je 0x425c57
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
mov eax, dword [ebp + 8]
add eax, 0x159f7
xor eax, 0x6c6d9a66
mov ecx, dword [ebp + 0x10]
xor ecx, 0x3fe2
xor ecx, 0xe2e4
mov dword [ecx + str.nFCJnABOjYPhHHTG], eax
mov edx, dword [0x514efc]
sub edx, 1
mov dword [0x514efc], edx
mov eax, dword [0x514efc]
sub eax, 0x1af
push eax
mov ecx, dword [ebp - 0x70]
sub ecx, 0x1e6
push ecx
mov edx, dword [ebp - 0x2c]
sub edx, 9
push edx
mov eax, dword [0x514ec0]
sub eax, 6
push eax
mov ecx, dword [ebp - 0x18]
sub ecx, 0x2b9
push ecx
mov edx, dword [0x514ecc]
add edx, 0x1c5
push edx
mov eax, dword [0x514eb4]
sub eax, 0x14a
push eax
mov ecx, dword [0x514eb4]
add ecx, 0xe9
push ecx
mov edx, dword [ebp - 0x30]
add edx, 0x399
push edx
mov eax, dword [0x514efc]
add eax, 0x1ea
push eax
call fcn.0041d1f0
add esp, 0x28
mov ecx, dword [ebp + 8]
and ecx, 0x5001
sub ecx, 0x2d53
xor ecx, 0xffffd28e
mov edx, dword [ebp + 0x10]
and edx, 0x1635
add edx, 0xcb0f
xor edx, 0xe3a9
xor edx, 0x3cb7
mov byte [edx + str.nFCJnABOjYPhHHTG], cl
mov eax, dword [0x514ef4]
sub eax, 0x14e
push eax
mov ecx, dword [ebp - 0x28]
sub ecx, 0x257
push ecx
mov edx, dword [ebp - 0x3c]
add edx, 0x106
push edx
mov eax, dword [ebp - 0x50]
sub eax, 0x21
push eax
mov ecx, dword [ebp - 8]
sub ecx, 0x127
push ecx
mov edx, dword [ebp - 0x44]
sub edx, 0x31
push edx
mov eax, dword [ebp - 4]
add eax, 0x2c4
push eax
mov ecx, dword [ebp - 0x1c]
add ecx, 0x155
push ecx
mov edx, dword [ebp - 0x40]
sub edx, 0x215
push edx
mov eax, dword [0x514eb8]
sub eax, 0x2c1
push eax
call fcn.0040b720
add esp, 0x28
mov ecx, dword [ebp + 0xc]
add ecx, 0x1cb0
xor ecx, 0x1f37
mov edx, dword [ebp + 8]
or edx, 0x463a
xor edx, 0x1aef
xor edx, 0xfc9a
mov byte [edx + str.nFCJnABOjYPhHHTG], cl
mov eax, dword [ebp - 0x24]
sub eax, 1
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x24]
or ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x18]
jge 0x425de0
mov dword [ebp - 0x84], 1
jmp 0x425dea
mov dword [ebp - 0x84], 0
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
and eax, dword [0x514e80]
or eax, dword [ebp - 0x84]
je 0x425ffa
mov ecx, dword [ebp - 0x74]
add ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x18]
jge 0x425e1f
mov dword [ebp - 0x88], 1
jmp 0x425e29
mov dword [ebp - 0x88], 0
mov edx, dword [ebp - 0x70]
cmp edx, dword [0x514e28]
jge 0x425e40
mov dword [ebp - 0x8c], 1
jmp 0x425e4a
mov dword [ebp - 0x8c], 0
mov eax, dword [ebp - 0x88]
or eax, dword [ebp - 0x8c]
je 0x425ffa
mov ecx, dword [0x514ec8]
cmp ecx, dword [ebp - 0x48]
jge 0x425e73
mov dword [ebp - 0x90], 1
jmp 0x425e7d
mov dword [ebp - 0x90], 0
mov edx, dword [0x514e80]
sub edx, 1
mov dword [0x514e80], edx
mov eax, dword [0x514efc]
sub eax, 1
mov dword [0x514efc], eax
mov ecx, dword [0x514e80]
cmp ecx, dword [0x514efc]
jge 0x425eb3
mov dword [ebp - 0x94], 1
jmp 0x425ebd
mov dword [ebp - 0x94], 0
mov edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 0x28]
jge 0x425ed1
mov dword [ebp - 0x98], 1
jmp 0x425edb
mov dword [ebp - 0x98], 0
mov eax, dword [ebp - 0x90]
and eax, dword [ebp - 0x94]
xor eax, dword [ebp - 0x20]
or eax, dword [ebp - 0x98]
je 0x425ffa
mov ecx, dword [ebp - 0x14]
imul ecx, dword [0x514eb8]
cmp ecx, dword [ebp - 0x1c]
jge 0x425f11
mov dword [ebp - 0x9c], 1
jmp 0x425f1b
mov dword [ebp - 0x9c], 0
mov edx, dword [0x514ebc]
cmp edx, dword [0x514e7c]
jge 0x425f35
mov dword [ebp - 0xa0], 1
jmp 0x425f3f
mov dword [ebp - 0xa0], 0
mov eax, dword [0x514ecc]
or eax, dword [ebp - 0x24]
and eax, dword [ebp - 0x9c]
and eax, dword [ebp - 0xa0]
je 0x425ffa
mov ecx, dword [ebp - 0x38]
cmp ecx, dword [0x514e7c]
jge 0x425f70
mov dword [ebp - 0xa4], 1
jmp 0x425f7a
mov dword [ebp - 0xa4], 0
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x50]
mov dword [ebp - 0xdc], edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0xe0], eax
mov ecx, dword [ebp - 8]
sub ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0xdc]
cmp edx, dword [ebp - 0xe0]
jge 0x425fb2
mov dword [ebp - 0xa8], 1
jmp 0x425fbc
mov dword [ebp - 0xa8], 0
mov eax, dword [ebp - 4]
cmp eax, dword [0x514ecc]
jge 0x425fd3
mov dword [ebp - 0xac], 1
jmp 0x425fdd
mov dword [ebp - 0xac], 0
mov ecx, dword [ebp - 0xa4]
and ecx, dword [ebp - 0xa8]
or ecx, dword [ebp - 0xac]
je 0x425ffa
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp + 0x10]
or eax, 0xb09e
xor eax, 0xd03f
and eax, 0x7757
xor eax, 0x2541
mov ecx, dword [ebp + 0x14]
and ecx, 0x80a1
xor ecx, 0xae
mov byte [ecx + str.nFCJnABOjYPhHHTG], al
mov edx, dword [0x514e30]
add edx, 1
mov dword [0x514e30], edx
mov dword [ebp - 0x54], 0
jmp 0x426047
mov eax, dword [ebp - 0x54]
add eax, 1
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x34]
sub ecx, 0xb0
cmp dword [ebp - 0x54], ecx
jge 0x42609e
mov edx, dword [0x514e80]
add edx, dword [ebp - 0x10]
cmp edx, dword [0x514ebc]
jge 0x426072
mov dword [ebp - 0xb0], 1
jmp 0x42607c
mov dword [ebp - 0xb0], 0
mov eax, dword [ebp - 4]
sub eax, dword [0x514e28]
and eax, dword [ebp - 0xb0]
je 0x42609c
mov ecx, dword [0x514ec4]
sub ecx, 1
mov dword [0x514ec4], ecx
jmp 0x42603e
mov edx, dword [ebp - 0x1c]
sub edx, 0xb1
push edx
mov eax, dword [0x514e7c]
sub eax, 0x116
push eax
mov ecx, dword [ebp - 0x20]
add ecx, 0x1c7
push ecx
mov edx, dword [0x514e30]
sub edx, 0x248
push edx
mov eax, dword [0x514e2c]
add eax, 0x176
push eax
mov ecx, dword [ebp - 0x48]
sub ecx, 0x323
push ecx
mov edx, dword [ebp - 0x1c]
sub edx, 0x146
push edx
mov eax, dword [ebp - 0x40]
sub eax, 0x295
push eax
mov ecx, dword [ebp - 0x48]
sub ecx, 0xbc
push ecx
mov edx, dword [ebp - 0x10]
sub edx, 0x92
push edx
call fcn.0041a9a0
add esp, 0x28
mov eax, dword [ebp - 0x20]
add eax, 0x8c
push eax
mov ecx, dword [0x514ef4]
sub ecx, 0x4a
push ecx
mov edx, dword [0x514e80]
add edx, 0x12b
push edx
mov eax, dword [0x514ef8]
sub eax, 0x2ce
push eax
mov ecx, dword [ebp - 8]
sub ecx, 0x244
push ecx
mov edx, dword [ebp - 0x2c]
sub edx, 0x2e4
push edx
call fcn.0040a9e0
add esp, 0x18
mov eax, dword [0x514e80]
sub eax, 1
mov dword [0x514e80], eax
mov dword [ebp - 0x58], 0
jmp 0x426174
mov ecx, dword [ebp - 0x58]
add ecx, 1
mov dword [ebp - 0x58], ecx
mov edx, dword [0x514e80]
sub edx, 0x18884
cmp dword [ebp - 0x58], edx
jge 0x4261f8
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov eax, dword [0x514ebc]
or eax, dword [ebp - 0x20]
cmp eax, dword [0x514ec8]
jge 0x4261a7
mov dword [ebp - 0xb4], 1
jmp 0x4261b1
mov dword [ebp - 0xb4], 0
mov ecx, dword [ebp - 0x14]
xor ecx, dword [0x514ec0]
cmp ecx, dword [0x514e30]
jge 0x4261ce
mov dword [ebp - 0xb8], 1
jmp 0x4261d8
mov dword [ebp - 0xb8], 0
mov edx, dword [ebp - 0xb4]
and edx, dword [ebp - 0xb8]
je 0x4261f3
mov eax, dword [0x514eb4]
add eax, 1
mov dword [0x514eb4], eax
jmp 0x42616b
mov ecx, dword [0x514ebc]
sub ecx, 0x197
push ecx
mov edx, dword [ebp - 8]
sub edx, 0x1b6
push edx
mov eax, dword [0x514efc]
add eax, 0x22b
push eax
mov ecx, dword [ebp - 0x10]
sub ecx, 0x1ba
push ecx
mov edx, dword [ebp - 0x2c]
sub edx, 0x2d2
push edx
mov eax, dword [0x514ebc]
add eax, 0x21c
push eax
mov ecx, dword [0x514efc]
sub ecx, 0x14a
push ecx
mov edx, dword [ebp - 0x24]
add edx, 0x1f3
push edx
mov eax, dword [0x514ec0]
add eax, 0x321
push eax
mov ecx, dword [ebp - 0x38]
add ecx, 0x33d
push ecx
call fcn.0041d1f0
add esp, 0x28
mov edx, dword [0x514ef8]
sub edx, 0xa0
push edx
mov eax, dword [ebp - 0x3c]
add eax, 0x51
push eax
mov ecx, dword [ebp - 0x20]
add ecx, 0x176
push ecx
mov edx, dword [0x514ec0]
sub edx, 0x10
push edx
mov eax, dword [0x514ef4]
sub eax, 0x1ca
push eax
mov ecx, dword [ebp - 4]
add ecx, 0x99
push ecx
mov edx, dword [ebp - 4]
add edx, 0x2c4
push edx
mov eax, dword [0x514ef8]
add eax, 0x74
push eax
mov ecx, dword [0x514ecc]
sub ecx, 0xcd
push ecx
mov edx, dword [0x514ebc]
sub edx, 0x152
push edx
call fcn.0040b720
add esp, 0x28
mov eax, dword [ebp - 0x28]
sub eax, 0x58
push eax
mov ecx, dword [ebp - 0x30]
add ecx, 0x173
push ecx
call fcn.00405060
add esp, 8
mov edx, dword [ebp + 0x1c]
add edx, 0x9640
xor edx, 0x168ca
mov eax, dword [ebp + 0x14]
or eax, 0xffff9d90
and eax, 0x4eef
xor eax, 0xca7
mov byte [eax + str.nFCJnABOjYPhHHTG], dl
mov ecx, dword [0x514ecc]
add ecx, 0x3e
push ecx
mov edx, dword [ebp - 0x44]
add edx, 0x201
push edx
mov eax, dword [ebp - 0x34]
add eax, 0x8d
push eax
mov ecx, dword [ebp - 0x28]
sub ecx, 0xe7
push ecx
mov edx, dword [0x514ecc]
add edx, 7
push edx
mov eax, dword [ebp - 0x14]
add eax, 0x57
push eax
mov ecx, dword [ebp - 0x3c]
add ecx, 0x2a5
push ecx
mov edx, dword [ebp - 0x2c]
sub edx, 0x1db
push edx
call fcn.00406b70
add esp, 0x20
mov dword [ebp - 0x5c], 0
jmp 0x426385
mov eax, dword [ebp - 0x5c]
add eax, 1
mov dword [ebp - 0x5c], eax
mov ecx, dword [0x514ef4]
sub ecx, 0x18a88
cmp dword [ebp - 0x5c], ecx
jge 0x4263ad
call dword [sym.imp.USER32.dll_RemovePropA]
mov edx, dword [0x514efc]
sub edx, 1
mov dword [0x514efc], edx
jmp 0x42637c
mov dword [ebp - 0x60], 0
jmp 0x4263bf
mov eax, dword [ebp - 0x60]
add eax, 1
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 8]
sub ecx, 0x343
cmp dword [ebp - 0x60], ecx
jge 0x4263e0
mov edx, dword [ebp - 0x10]
cmp edx, dword [ebp - 0x18]
jge 0x4263de
mov eax, dword [ebp - 0x38]
sub eax, 1
mov dword [ebp - 0x38], eax
jmp 0x4263b6
mov ecx, dword [ebp - 0xc]
sub ecx, 0xb5
push ecx
mov edx, dword [ebp - 0x74]
sub edx, 0x135
push edx
mov eax, dword [0x514e30]
sub eax, 0x313
push eax
mov ecx, dword [0x514ef4]
sub ecx, 0x314
push ecx
mov edx, dword [0x514ef8]
sub edx, 0x103
push edx
mov eax, dword [ebp - 0x4c]
add eax, 0x17
push eax
mov ecx, dword [ebp - 8]
sub ecx, 0x29d
push ecx
mov edx, dword [ebp - 0x44]
add edx, 0x238
push edx
call fcn.00414320
add esp, 0x20
mov eax, dword [ebp + 0xc]
add eax, 0xdb0a
xor eax, 0x6e72bb74
mov ecx, dword [ebp + 0x14]
or ecx, 0x5e6
xor ecx, 0x2dff
mov dword [ecx + str.nFCJnABOjYPhHHTG], eax
mov dword [ebp - 0x64], 0
jmp 0x426470
mov edx, dword [ebp - 0x64]
add edx, 1
mov dword [ebp - 0x64], edx
mov eax, dword [0x514e7c]
sub eax, 0x18a63
cmp dword [ebp - 0x64], eax
jge 0x426581
call dword [sym.imp.USER32.dll_GetDC]
mov ecx, dword [ebp - 0x18]
imul ecx, dword [0x514e80]
cmp ecx, dword [0x514e2c]
jge 0x4264a7
mov dword [ebp - 0xbc], 1
jmp 0x4264b1
mov dword [ebp - 0xbc], 0
mov edx, dword [ebp - 0x2c]
sub edx, dword [0x514efc]
mov dword [ebp - 0xe4], edx
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0xe8], eax
mov ecx, dword [0x514efc]
add ecx, 1
mov dword [0x514efc], ecx
mov edx, dword [ebp - 0xe4]
cmp edx, dword [ebp - 0xe8]
jge 0x4264f2
mov dword [ebp - 0xc0], 1
jmp 0x4264fc
mov dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0xbc]
and eax, dword [ebp - 0xc0]
je 0x42657c
mov ecx, dword [0x514eb4]
cmp ecx, dword [ebp - 0x34]
jge 0x426521
mov dword [ebp - 0xc4], 1
jmp 0x42652b
mov dword [ebp - 0xc4], 0
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x3c]
jge 0x42653f
mov dword [ebp - 0xc8], 1
jmp 0x426549
mov dword [ebp - 0xc8], 0
mov eax, dword [0x514ec4]
add eax, 1
mov dword [0x514ec4], eax
mov ecx, dword [ebp - 0x4c]
add ecx, dword [0x514ec4]
or ecx, dword [ebp - 0xc4]
or ecx, dword [ebp - 0xc8]
je 0x42657c
mov edx, dword [0x514e30]
add edx, 1
mov dword [0x514e30], edx
jmp 0x426467
mov eax, 0x3c9c
sub eax, dword [ebp + 0x1c]
xor eax, 0xcdcc0677
mov ecx, dword [ebp + 0x10]
and ecx, 0x22d6
xor ecx, 2
mov dword [ecx + str.nFCJnABOjYPhHHTG], eax
mov dword [ebp - 0x68], 0
jmp 0x4265b2
mov edx, dword [ebp - 0x68]
add edx, 1
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x14]
sub eax, 0x1881e
cmp dword [ebp - 0x68], eax
jge 0x4265d0
call dword [sym.imp.USER32.dll_LoadStringA]
mov ecx, dword [ebp - 0x40]
add ecx, 1
mov dword [ebp - 0x40], ecx
jmp 0x4265a9
mov edx, dword [ebp - 0x1c]
sub edx, 0x2d
push edx
mov eax, dword [0x514e7c]
sub eax, 0x8b
push eax
mov ecx, dword [ebp - 0xc]
sub ecx, 0x1ce
push ecx
mov edx, dword [ebp - 0x14]
add edx, 0xce
push edx
mov eax, dword [ebp - 0x44]
add eax, 0xbe
push eax
mov ecx, dword [ebp - 0x4c]
sub ecx, 8
push ecx
mov edx, dword [0x514e80]
add edx, 0x14c
push edx
mov eax, dword [ebp - 0x24]
add eax, 0x163
push eax
call fcn.00406b70
add esp, 0x20
mov eax, str.nFCJnABOjYPhHHTG
jmp 0x4267f4
mov esp, ebp
pop ebp
ret