Function at 0x18a2a5b
Capabilities:
Authenticate hmac
Parse pe header

Disassembly:
push eax
lea ecx, [esp + 0x165c]
jmp 0x175a941
add eax, 4
jmp 0x1726645
call fcn.004062b0
lea ecx, [esp + 0xe70]
push ecx
mov cx, bp
cdq
cwd
lea edx, [esp + 0xa54]
push edx
cdq
bswap edx
lea edx, [esp + 0x1674]
movsx ecx, bx
movzx ecx, di
lea ecx, [esp + 0x1150]
jmp 0x182e8b2
call fcn.004062b0
lea edx, [esp + 0x1180]
mov ax, bp
cbw
lahf
push edx
cwde
lea eax, [esp + 0x15e4]
xchg dl, dh
push eax
lea edx, [esp + 0x1674]
setne cl
mov cx, 0x6bb9
cmovo ecx, esi
lea ecx, [esp + 0xeb0]
jmp 0x16f0edf
mov byte [esp + 0x1a27], 0x52
mov byte [esp + 0x1a28], 0x54
mov byte [esp + 0x1a29], 0x5f
jmp 0x16dbf6d
mov byte [esp + 0x1a22], 0x54
jmp 0x17c9650
inc eax
cmp eax, ebx
mov dword [esp + 0x18], eax
jmp 0x17e03e2
call fcn.00450231
add esp, 4
push edi
push 1
mov cx, 0x6369
xchg ecx, ecx
mov ecx, edi
lea ecx, [esp + 0x1150]
jmp 0x167dc55
call fcn.0044a530
cmp dword [eax + 0x18], 0x10
jb 0x1624787
mov eax, dword [eax + 4]
jmp 0x183be5c
jb 0x530e63
mov eax, dword [eax + 4]
jmp 0x1726645
push ecx
xchg cx, cx
lea ecx, [esp + 0xeac]
mov byte [esp + 0x1bf4], 0x87
jmp 0x5751bc
lea ecx, [esp + 0x114c]
jmp 0x17c608b
call fcn.0044a530
cmp dword [eax + 0x18], 0x10
jmp 0x16c0193
je 0x1870162
mov ecx, dword [esp + 0x10]
sal esi, 0x41
mov edx, dword [ecx + 0x84]
jmp 0x605cb7
movzx ecx, byte [edx + 0xbf8]
movzx esi, byte [edx + 0xbf4]
movzx edx, byte [edx + 0xbf0]
cmp si, bp
stc
cmp di, 0x410f
shl ecx, 8
stc
cmc
or ecx, esi
shl ecx, 8
or ecx, edx
push ecx
movsx ecx, cx
cmovbe ecx, eax
mov ecx, eax
jmp 0x17b6af2
mov byte [esp + 0x1a0c], 0x50
jmp 0x1849645
call fcn.004062b0
lea ecx, [esp + 0x18b8]
jmp 0x5d02ec
mov byte [esp + 0x1a26], 0x45
jmp 0x58b678
mov byte [esp + 0x1ad1], 0x4c
jmp 0x18becf6
mov byte [esp + 0x1a00], 0x3c
jmp 0x183bb72
add eax, 4
jmp 0x17fdffd
je 0x17f75d8
push 0x511f08
movsx ecx, bp
lea ecx, [esp + 0xc98]
jmp 0x1821e64
push 1
movsx ecx, di
lea ecx, [esp + 0xeb0]
call fcn.00406570
push edi
push 1
movsx ecx, si
lea ecx, [esp + 0x1188]
jmp 0x1651235
mov byte [esp + 0x1bf8], 6
jmp 0x17d0505
mov byte [esp + 0x1a20], 0x3c
jmp 0x174c170
mov dword [edx + 0xbf0], eax
add eax, 0x49df7dc1
add esp, 4
ror ah, 0x5e
stc
rol ah, cl
sub edi, edi
jmp 0x17956dd
mov byte [esp + 0x1bf8], 0x7f
jmp 0x1686b13
mov byte [esp + 0x1a09], 0x5f
jmp 0x1749705
mov dword [esp + 0xa70], esi
jmp 0x17ea122
call fcn.0044a3a0
lea esp, [esp + 8]
mov byte [esp + 0x1bf0], 0x81
cmp dword [esp + 0x91c], ebx
jb 0x175544f
mov edx, dword [esp + 0x908]
jmp 0x18beae4
jmp 0x179c1d2
jb 0x179c1cf
mov eax, dword [eax + 4]
jmp 0x168bbcb
mov byte [esp + 0x1a2a], 0x47
jmp 0x1732866
mov dword [esp + 0x918], edi
mov byte [esp + 0x908], 0
jmp 0x18a7648
mov byte [esp + 0x1a04], 0x5f
mov byte [esp + 0x1a05], 0x48
jmp 0x1836ec1
mov byte [esp + 0x1bf8], 0x88
jmp 0x173acdd
push eax
jmp 0x182cf31
mov byte [esp + 0x1a0e], 0
jmp 0x1778bf7
mov byte [esp + 0x1a2b], 0x41
jmp 0x18ec4c5
call fcn.0042cfb0
push 0xffffffffffffffff
cmovnp cx, si
bswap ecx
push edi
bswap cx
not ch
movzx ecx, ax
push eax
bswap cx
mov ecx, eax
cmovl cx, sp
lea ecx, [esp + 0x165c]
jmp 0x189c736
lea eax, [esp + 0x1a1c]
mov cl, 0xb2
push eax
mov ecx, 0x2b2f3411
cmovp cx, cx
lea ecx, [esp + 0x1184]
jmp 0x1651e4c
mov byte [esp + 0x1a0a], 0x47
jmp 0x1766c17
mov byte [esp + 0x1a21], 0x42
jmp 0x58b9d1
mov byte [esp + 0x1a2d], 0x3e
jmp 0x17618d0
call fcn.00440f80
mov ebx, 0x10
bswap edx
lea esi, [ebx - 1]
not cl
lea edx, [esp + 0x19fc]
cmovno ecx, ecx
movzx ecx, bx
push edx
movzx ecx, dx
lea ecx, [esp + 0xe74]
jmp 0x16237ce
mov dword [esp + 0x91c], esi
jmp 0x16e236d
call fcn.00450231
add esp, 4
rcr dh, 0x7f
bt ecx, 0xd3
movsx edx, di
mov ecx, dword [esp + 0x5dc]
inc bl
ror edx, cl
shr dh, 0x1b
sub ecx, dword [esp + 0x5d8]
clc
cmc
cwd
mov eax, 0x92492493
mov edx, ebp
imul ecx
sub bh, 0x4e
shr bl, cl
add edx, ecx
bswap ebx
movsx ebx, sp
cmp ah, dh
sar edx, 4
sar bh, cl
mov ebx, edx
cmp ebp, ecx
clc
stc
shr ebx, 0x1f
add ebx, edx
clc
sub eax, eax
cmp ebx, edi
jmp 0x17547fb
mov byte [esp + 0x1bfc], 0x85
jmp 0x1852f06
mov byte [esp + 0x1a2e], 0
jmp 0x62f06e
mov byte [esp + 0x1a0b], 0x41
jmp 0x627847
call fcn.00406570
push edi
movsx ecx, dx
jmp 0x165078b
call fcn.00406570
cmp dword [esp + 0x1664], edi
jmp 0x17ee1de
mov byte [esp + 0x1bf0], 6
jmp 0x1750a92
call fcn.004062b0
lea eax, [esp + 0x18b8]
xchg cx, cx
push eax
jmp 0x5d751a
mov eax, dword [esp + 0x18]
jmp 0x5b24df
call fcn.0046e038
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
bts ecx, eax
sbb cx, 0x291d
add esp, 4
bswap cx
cmovl cx, sp
push edi
not cx
cmovno ecx, edx
movsx ecx, sp
push 1
lea ecx, [esp + 0xc9c]
mov dword [edx + 0xc00], eax
jmp 0x18705e4
add eax, 4
push eax
jmp 0x179797f
call fcn.004062b0
lea eax, [esp + 0x904]
sets cl
mov ecx, edi
movzx ecx, bx
push eax
movsx ecx, si
mov ch, bl
jmp 0x185f5d4
xor edi, edi
jmp 0x17bd112
call fcn.00440fd0
cmp dword [eax + 0x18], 0x10
jmp 0x5cf34b
call fcn.00465a6c
jmp 0x1870166
lea esi, [esp + 0x5cc]
jmp 0x17b59f9
push edi
movzx ecx, dx
jmp 0x5302c0
mov byte [esp + 0x1bf4], 0x83
jmp 0x53cdf3
mov byte [esp + 0x1a23], 0x4e
jmp 0x185b6b5
call fcn.00406570
cmp dword [esp + 0x1664], edi
jmp 0x163021c
jl 0x18a7652
test byte [esp + 0x14], 7
jmp 0x17ea6a7
push ecx
movsx ecx, sp
lea ecx, [esp + 0x1658]
jmp 0x1667525
mov dword [esp + 0xa6c], edi
jmp 0x17efb5f
je 0x1870173
push 8
call fcn.00450202
add esp, 4
test si, 0x4ceb
mov dword [esp + 0x1c], eax
stc
mov byte [esp + 0x1bf0], 0x82
stc
cmc
cmp eax, edi
jmp 0x5fb51f
je 0x17428f4
push 0x511f08
mov cl, 0xaf
bswap ecx
setge ch
lea ecx, [esp + 0x12d4]
jmp 0x180a8fa
mov byte [esp + 0xa5c], 0
call fcn.00406570
push edi
xchg ch, cl
cmovle cx, ax
movzx ecx, bx
push 1
not ecx
setb cl
movsx ecx, dx
lea ecx, [esp + 0xe78]
jmp 0x186ef2f
call fcn.00406570
mov esi, 0xf
setg ah
lea eax, [esp + 0x1acc]
movzx cx, bh
push eax
setns ch
lea ecx, [esp + 0xee4]
jmp 0x188e375
mov byte [esp + 0x1a07], 0x52
mov byte [esp + 0x1a08], 0x5a
jmp 0x1675ece
push eax
jmp 0x183a3e0
call fcn.004062b0
lea esi, [esp + 0x12d0]
bswap ax
lea eax, [esp + 0x1650]
mov byte [esp + 0x1bf0], 0x86
jmp 0x5ce42c
mov byte [esp + 0x1a02], 0x54
jmp 0x1840cf4
je 0x17a82d6
sub eax, 1
jmp 0x421e6e
call fcn.004062b0
lea esi, [esp + 0xc94]
sete al
movzx ax, dl
lea eax, [esp + 0x1650]
jmp 0x18821ac
je 0x1750aa3
push 0x511994
lea ecx, [esp + 0x908]
jmp 0x17a3706
call fcn.0046e038
mov ecx, dword [esp + 0x14]
cmp edx, esp
xor edx, 0x5c6c3b79
ror edx, cl
mov edx, dword [ecx + 0x84]
cmc
or dword [esp + 0x18], 1
cmp edi, 0x58363abf
clc
jmp 0x1666fe4
mov byte [esp + 0x1bf8], 0x84
call fcn.0042cfb0
push 0xffffffffffffffff
jmp 0x17be39e
mov byte [esp + 0x1a06], 0x4f
jmp 0x17fc628
call fcn.0046e038
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x84]
bt ecx, 0x33
sub cx, si
add esp, 4
movzx ecx, sp
not cl
push edi
movsx cx, al
jmp 0x407873
mov byte [esp + 0x1a25], 0x56
jmp 0x631920
mov byte [esp + 0x1a01], 0x42
jmp 0x180d825
jmp 0x17fdffd
jb 0x183df8e
mov edx, dword [esp + 0xa00]
push edx
call fcn.00450231
add esp, 4
mov dword [esp + 0xa14], esi
mov dword [esp + 0xa10], edi
test esp, ecx
stc
mov byte [esp + 0xa00], 0
cmp al, 0xd7
test edi, ecx
mov dword [esp + 0x14], edi
cmp esp, esp
cmp dword [esp + 0x1664], edi
jmp 0x1829633
push eax
jmp 0x5bb35c
mov byte [esp + 0x1a03], 0x4e
jmp 0x16eed9b
mov byte [esp + 0x1a0d], 0x3e
jmp 0x17289f2
call fcn.00406480
cmp dword [esp + 0xa68], ebx
jmp 0x1892e77
mov byte [esp + 0x1a24], 0x5f
jmp 0x183bab5
lea ecx, [esp + 0x5d0]
jmp 0x17e06d4
mov byte [esp + 0x1bf8], 6
jmp 0x176bcaf
sub eax, eax
xchg ecx, esi
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x174], eax
movzx esi, sp
lea esi, [esp + 0x5cc]
jmp 0x176ec38
mov byte [esp + 0x1bf8], 6
jmp 0x17f75cb
mov byte [esp + 0x1bf0], 0x8a
jmp 0x5e5dd7
mov byte [esp + 0x1ad0], 0x3c
jmp 0x161f35a
jb 0x5bb364
mov eax, dword [esp + 0xa54]
jmp 0x183f8b8
mov byte [esp + 0x1bfc], 0x89
call fcn.00406480
push edi
setns ch
movsx cx, bl
not cl
push 1
movsx ecx, dx
movzx ecx, di
lea ecx, [esp + 0x15e8]
jmp 0x176a883
push 0x53352945
call fcn.0057a757
test edi, esp
cmp dword [esp + 0xa14], ebx
jmp 0x183df78
mov dword [esp + 0x18], eax
jle 0x17e03e8
sub eax, edi
jmp 0x181696f
push edx
jmp 0x175543d
mov byte [esp + 0x1ad2], 0x41
jmp 0x4319b9
mov byte [esp + 0x1a2c], 0x50
jmp 0x174fc03