Function at 0x415d30
Capabilities:
Authenticate hmac

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
mov dword [esp - 0x20], ebp
push ebx
push esi
mov esi, dword [ebp + 8]
xchg edx, edx
mov ebx, ecx
push edi
push ecx
xchg ebp, ebp
mov edi, esp
mov dword [ebp - 4], ebx
nop
xchg edi, edi
mov dword [esp - 4], 0x2fe10ff3
xor dword [esp - 4], 0xd101016
add dword [esp - 4], 0x5c8e723f
sub dword [esp - 4], 0x3f15b984
mov edx, edx
sub dword [esp - 4], 0x3adbeacc
sub dword [esp - 4], 0x58dedc8
sub esp, 4
call fcn.0048b6d0
xchg ecx, ecx
add esp, 4
test eax, eax
je 0x415da9
xchg ebp, ebp
lea ecx, [ebp + 0xb]
mov dword [eax], 0x401050
mov dword [eax + 4], esi
mov dword [esp - 0x30], ebx
mov dword [eax + 8], ecx
jmp 0x415dab
xor eax, eax
mov dword [edi], eax
nop
sub esp, 4
xchg ebp, ebp
mov dword [esp], 0x33450a79
sub dword [esp], 0x2e241d12
xor dword [esp], 0x50a07bcc
mov edi, edi
add dword [esp], 0x53f271c
sub dword [esp], 0x3e7c19bb
xor dword [esp], 0x1c43a412
mov dword [ebp - 0x1c], 0x78d2ab69
mov dword [esp - 0x10], 0x789f244a
add dword [ebp - 0x1c], 0x2f05637
sub dword [ebp - 0x1c], 0x6f5a3aac
xor dword [ebp - 0x1c], 0x112e119e
add dword [ebp - 0x1c], 0x36cc8735
xchg ebp, ebp
xor dword [ebp - 0x1c], 0x621aa966
add dword [ebp - 0x1c], 0xa06551e
mov dword [ebp - 0x18], 0x5b0fdd2a
add dword [ebp - 0x18], 0xe2ef83b
mov dword [esp - 0x24], edi
sub dword [ebp - 0x18], 0x21d48e0a
sub dword [ebp - 0x18], 0x38f1a818
add dword [ebp - 0x18], 0x3c3dc2f
mov dword [ebp - 0x14], 0x3a67a31f
mov dword [esp - 0x3c], ecx
xor dword [ebp - 0x14], 0x734168e0
xor dword [ebp - 0x14], 0x5ffc5de5
add dword [ebp - 0x14], 0x3dc42beb
sub dword [ebp - 0x14], 0x5652019
xchg edi, edi
sub dword [ebp - 0x14], 0x23a238b6
sub dword [ebp - 0x14], 0xf5b2803
mov word [ebp - 0x10], 0x474e
add word [ebp - 0x10], 0x140c
mov dword [esp - 0x10], edx
add word [ebp - 0x10], 0xf26
xor word [ebp - 0x10], 0x62e1
add word [ebp - 0x10], 0xb6f
xchg esp, esp
xor word [ebp - 0x10], 0x51ea
xor word [ebp - 0x10], 0x141b
mov byte [ebp - 0xe], 0x71
mov dword [esp - 0x30], 0xcbdecb9
xor byte [ebp - 0xe], 0x7d
add byte [ebp - 0xe], 7
add byte [ebp - 0xe], 0x44
mov dword [esp - 0x10], ebx
sub byte [ebp - 0xe], 0x4b
add byte [ebp - 0xe], 0x58
sub byte [ebp - 0xe], 0x4a
mov dword [esp - 0x3c], ebx
mov dword [ebp - 8], 0x10b2930
add dword [ebp - 8], 0x41c0b930
sub dword [ebp - 8], 0xd3df51b
xor dword [ebp - 8], 0x403b9162
mov dword [esp - 0xc], 0x1d6ea4d0
sub dword [ebp - 8], 0x3f9f985
xor dword [ebp - 8], 0x71bc82ad
call fcn.0048b720
mov edx, edx
xor edx, edx
mov dword [ebp - 0xc], eax
add esp, 4
mov dword [esp - 0x3c], 0x188a2fb8
cmp dword [ebp - 8], edx
jbe 0x415f36
movsx cx, byte [ebp + edx - 0x1c]
mov word [eax + edx*2], cx
mov dword [esp - 0x20], esi
inc edx
cmp edx, dword [ebp - 8]
jb 0x415f22
lea eax, [ebp - 0xc]
mov dword [esp - 0x24], 0x737d3638
mov ecx, ebx
push eax
call fcn.00415330
mov dword [esp - 0x40], 0x38406766
test al, al
sete bl
cmp dword [ebp - 8], 2
mov dword [esp - 0x14], 0x1f059512
jbe 0x415f71
push dword [ebp - 0xc]
call fcn.0048b6f0
add esp, 4
mov edi, edi
test bl, bl
jne 0x416557
mov esi, dword [ebp + 0xc]
mov dword [esp - 0x30], ebx
lea ebx, [ebp + 0xb]
push ecx
mov edi, esp
xchg esi, esi
nop
sub esp, 4
mov dword [esp], 0x6321e918
sub dword [esp], 0xe493ac
mov dword [esp - 0x2c], 0x6ebb399a
xor dword [esp], 0x35612780
add dword [esp], 0x20529c95
xor dword [esp], 0x77af0f8d
call fcn.0048b6d0
xchg esp, esp
add esp, 4
test eax, eax
je 0x415fd7
mov dword [eax], 0x40105c
mov dword [esp - 0x24], edi
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
jmp 0x415fd9
xor eax, eax
mov dword [edi], eax
nop
sub esp, 4
mov dword [esp - 0x18], 0x4a766320
mov dword [esp], 0x3f1cfebd
sub dword [esp], 0x1763510c
add dword [esp], 0x1f73c020
sub dword [esp], 0x3000a7f2
mov ecx, ecx
sub dword [esp], 0x1506d5fc
sub dword [esp], 0x225efcf
mov dword [ebp - 0x18], 0xd852457
add dword [ebp - 0x18], 0x343044cb
xchg ecx, ecx
add dword [ebp - 0x18], 0x3cfc5262
sub dword [ebp - 0x18], 0x64a8f380
add dword [ebp - 0x18], 0x293aefb5
xor dword [ebp - 0x18], 0x3d2479d3
mov dword [esp - 0x18], ebx
sub dword [ebp - 0x18], 0x3e578153
mov dword [ebp - 0x14], 0x7f1cc938
sub dword [ebp - 0x14], 0x2ce09315
add dword [ebp - 0x14], 0x2687984b
xchg ebp, ebp
sub dword [ebp - 0x14], 0x6d91a91b
add dword [ebp - 0x14], 0x2f0a561f
mov word [ebp - 0x10], 0x179
mov dword [esp - 0x18], 0x3a6a34df
add word [ebp - 0x10], 0x10be
add word [ebp - 0x10], 0x4949
xor word [ebp - 0x10], 0x3fe4
add word [ebp - 0x10], 0x12ab
mov dword [esp - 0x38], esp
mov dword [ebp - 8], 0x1397997d
add dword [ebp - 8], 0x22041422
add dword [ebp - 8], 0x2c8daeb4
xor dword [ebp - 8], 0xedc365e
mov edi, edi
sub dword [ebp - 8], 0x4f84a405
add dword [ebp - 8], 0x434ddfb5
sub dword [ebp - 8], 0x60bea5b3
call fcn.0048b720
mov dword [esp - 0x10], 0x6f7825c4
xor edx, edx
mov dword [ebp - 0xc], eax
add esp, 4
cmp dword [ebp - 8], edx
xchg esp, esp
jbe 0x4160fc
movsx cx, byte [ebp + edx - 0x18]
mov word [eax + edx*2], cx
xchg edi, edi
inc edx
cmp edx, dword [ebp - 8]
jb 0x4160e8
mov edi, edi
mov ecx, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
call fcn.00415330
xchg edi, edi
test al, al
sete bl
cmp dword [ebp - 8], 2
mov dword [esp - 0x40], ebp
jbe 0x416126
push dword [ebp - 0xc]
call fcn.0048b6f0
xchg edi, edi
add esp, 4
test bl, bl
jne 0x416557
xchg esi, esi
mov esi, dword [ebp + 0x10]
lea ebx, [ebp + 0xb]
push ecx
mov edi, esp
mov dword [esp - 0xc], 0x72dd0249
nop
sub esp, 4
mov dword [esp], 0x7b3178bf
sub dword [esp], 0x4f56e7cf
mov edx, edx
xor dword [esp], 0x6be6868d
add dword [esp], 0x35dadca6
sub dword [esp], 0x692f8f96
mov ecx, ecx
xor dword [esp], 0xce76381
call fcn.0048b6d0
add esp, 4
mov dword [esp - 0x28], 0x69340e9
test eax, eax
je 0x416199
mov dword [eax], 0x401068
mov dword [esp - 0x20], esp
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
jmp 0x41619b
xor eax, eax
mov dword [edi], eax
nop
sub esp, 4
mov ebx, ebx
mov dword [esp], 0x13f9f470
add dword [esp], 0x6936bbb8
xor dword [esp], 0x3cd308e9
add dword [esp], 0x314d7b58
xchg esp, esp
add dword [esp], 0x6376051
xor dword [esp], 0x79689442
mov dword [ebp - 0x20], 0x317c9e97
sub dword [ebp - 0x20], 0xa120694
mov ecx, ecx
xor dword [ebp - 0x20], 0x7f059ec0
add dword [ebp - 0x20], 0x1bb5af48
xor dword [ebp - 0x20], 0x41f3af5c
xchg ebp, ebp
add dword [ebp - 0x20], 0xa3933c0
mov dword [ebp - 0x1c], 0x4184e8c2
sub dword [ebp - 0x1c], 0x1854bda
mov dword [esp - 0x2c], esp
xor dword [ebp - 0x1c], 0x3ab52829
add dword [ebp - 0x1c], 0x685e61fe
sub dword [ebp - 0x1c], 0x4a83ba11
xchg edx, edx
sub dword [ebp - 0x1c], 0x7f6e13c
mov dword [ebp - 0x18], 0x3c6ca3b7
xor dword [ebp - 0x18], 0x4c85bf04
xor dword [ebp - 0x18], 0x408fa99a
mov edi, edi
add dword [ebp - 0x18], 0x26adefb
sub dword [ebp - 0x18], 0x139021c5
xor dword [ebp - 0x18], 0xf562566
mov dword [ebp - 0x14], 0x347586c7
mov edx, edx
add dword [ebp - 0x14], 0x20a11b8a
xor dword [ebp - 0x14], 0x16da00dc
sub dword [ebp - 0x14], 0x33d6eb5a
mov ebx, ebx
add dword [ebp - 0x14], 0xbbf794e
sub dword [ebp - 0x14], 0x581e860
mov dword [ebp - 0x10], 0x4f5c7119
sub dword [ebp - 0x10], 0x13b0a9b3
mov dword [esp - 0x28], 0x760d7c56
xor dword [ebp - 0x10], 0x217e44ab
add dword [ebp - 0x10], 0x60ec079f
sub dword [ebp - 0x10], 0x71b5403f
mov dword [ebp - 8], 0x4dbb248d
mov esi, esi
xor dword [ebp - 8], 0x592d5d65
add dword [ebp - 8], 0x56677a63
sub dword [ebp - 8], 0x6a9f097f
sub dword [ebp - 8], 0x5eeab8
mov dword [esp - 0xc], 0x5ed7e3d6
call fcn.0048b720
xor edx, edx
mov dword [ebp - 0xc], eax
mov dword [esp - 0x10], ecx
add esp, 4
cmp dword [ebp - 8], edx
jbe 0x416309
movsx cx, byte [ebp + edx - 0x20]
xchg ebp, ebp
mov word [eax + edx*2], cx
inc edx
cmp edx, dword [ebp - 8]
xchg edx, edx
jb 0x4162f5
mov ecx, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov dword [esp - 0x24], ebx
call fcn.00415330
test al, al
sete bl
mov dword [esp - 0x30], 0xeb46a2b
cmp dword [ebp - 8], 2
jbe 0x416339
push dword [ebp - 0xc]
mov ebp, ebp
call fcn.0048b6f0
add esp, 4
test bl, bl
jne 0x416557
mov ebx, ebx
mov esi, dword [ebp + 0x14]
lea ebx, [ebp + 0xb]
push ecx
mov ebx, ebx
mov edi, esp
nop
sub esp, 4
mov esp, esp
mov dword [esp], 0x793b4b23
xor dword [esp], 0x52049b30
add dword [esp], 0x4adf95c6
sub dword [esp], 0xab33b22
mov esi, esi
sub dword [esp], 0x49df7f1d
sub dword [esp], 0x1667d8b
sub dword [esp], 0x20262e03
call fcn.0048b6d0
xchg ecx, ecx
add esp, 4
test eax, eax
je 0x4163a5
mov dword [eax], 0x401074
xchg esi, esi
mov dword [eax + 4], esi
mov dword [eax + 8], ebx
jmp 0x4163a7
xor eax, eax
mov dword [edi], eax
nop
mov dword [esp - 4], 0x62a81de9
mov edi, edi
xor dword [esp - 4], 0x699d1753
xor dword [esp - 4], 0x75918ef8
sub dword [esp - 4], 0x7c402ee3
sub dword [esp - 4], 0x2645541
mov ecx, ecx
sub esp, 4
mov dword [ebp - 0x1c], 0x4f3ab579
sub dword [ebp - 0x1c], 0x32abb660
mov dword [esp - 0x34], esi
add dword [ebp - 0x1c], 0xd2ced9a
sub dword [ebp - 0x1c], 0xa7ab52d
xor dword [ebp - 0x1c], 0x4e025a2c
xor dword [ebp - 0x1c], 0x6d176672
mov esi, esi
add dword [ebp - 0x1c], 0x3bc413f
mov dword [ebp - 0x18], 0x367aa85
add dword [ebp - 0x18], 0x61d023e9
sub dword [ebp - 0x18], 0x47b70208
mov edx, edx
xor dword [ebp - 0x18], 0x376c611c
sub dword [ebp - 0x18], 0x1dcd8593
xor dword [ebp - 0x18], 0x2fb7b2ce
sub dword [ebp - 0x18], 0x217a19b7
mov dword [esp - 0x18], ecx
mov dword [ebp - 0x14], 0x23b372bd
xor dword [ebp - 0x14], 0x64651160
xor dword [ebp - 0x14], 0x67b2f6ba
add dword [ebp - 0x14], 0x4858c109
mov ebx, ebx
sub dword [ebp - 0x14], 0x68a20f41
mov word [ebp - 0x10], 0x1356
add word [ebp - 0x10], 0xc96
mov dword [esp - 0x44], 0x4ecc5216
add word [ebp - 0x10], 0x59f
add word [ebp - 0x10], 0x649
xor word [ebp - 0x10], 0x60e7
mov byte [ebp - 0xe], 0x40
xchg ebx, ebx
xor byte [ebp - 0xe], 0x74
sub byte [ebp - 0xe], 0x2d
add byte [ebp - 0xe], 0x5c
mov ecx, ecx
sub byte [ebp - 0xe], 0x36
xor byte [ebp - 0xe], 0x7c
sub byte [ebp - 0xe], 0x45
mov dword [ebp - 8], 0x24088e6a
mov esi, esi
xor dword [ebp - 8], 0x2283bea7
xor dword [ebp - 8], 0x7d06f405
xor dword [ebp - 8], 0x27a5c76d
xor dword [ebp - 8], 0x63f1b627
xchg edi, edi
xor dword [ebp - 8], 0x38667044
sub dword [ebp - 8], 0x7bfc5b7
call fcn.0048b720
xchg esp, esp
xor edx, edx
mov dword [ebp - 0xc], eax
add esp, 4
mov ebp, ebp
cmp dword [ebp - 8], edx
jbe 0x416511
movsx cx, byte [ebp + edx - 0x1c]
xchg esi, esi
mov word [eax + edx*2], cx
inc edx
cmp edx, dword [ebp - 8]
mov esp, esp
jb 0x4164fd
mov ecx, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov dword [esp - 0x1c], ebp
call fcn.00415330
test al, al
sete bl
mov dword [esp - 0x40], ebp
cmp dword [ebp - 8], 2
jbe 0x416543
push dword [ebp - 0xc]
call fcn.0048b6f0
mov dword [esp - 0x18], 0x2d6d18c9
add esp, 4
test bl, bl
sete al
mov edx, edx
pop edi
pop esi
pop ebx
mov esp, ebp
mov dword [esp - 0xc], esi
pop ebp
ret 0x10
pop edi
pop esi
xor al, al
pop ebx
mov dword [esp - 0x44], edi
mov esp, ebp
pop ebp
ret 0x10