Function at 0x696d4e30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xbc
mov esi, dword [esp + 0xd4]
mov dword [esp + 0x6c], 0
mov edx, dword [esp + 0xd8]
test esi, esi
je 0x696d5250
test edx, edx
je 0x696d5288
lea ecx, [esp + 0x6c]
lea eax, [esp + 0x70]
call fcn.696c8f20
mov edx, dword [esp + 0xd4]
xor ecx, ecx
lea eax, [esp + 0x90]
call fcn.696c8f20
mov ebx, dword [esp + 0x6c]
test ebx, ebx
je 0x696d4ee0
mov eax, dword [esp + 0xd4]
xor ebx, ebx
mov dword [eax], 0
mov eax, dword [esp + 0xd4]
mov dword [eax + 0x1c], 0
mov eax, dword [esp + 0xd4]
lea ecx, [eax + 4]
mov edx, eax
xor eax, eax
and ecx, 0xfffffffc
sub edx, ecx
add edx, 0x20
and edx, 0xfffffffc
mov dword [ecx + eax], ebx
add eax, 4
cmp eax, edx
jb 0x696d4ec0
xor eax, eax
add esp, 0xbc
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x70]
mov esi, dword [esp + 0x90]
xor edx, edx
xor edi, edi
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x90]
add esi, eax
mov eax, dword [esp + 0x94]
adc edi, edx
add ebx, dword [esp + 0x70]
xor edx, edx
mov esi, edi
mov dword [esp + 0x1c], ebx
xor edi, edi
xor ebx, ebx
add eax, ecx
mov ecx, dword [esp + 0x78]
adc edx, ebx
add eax, esi
mov dword [esp + 0x38], eax
adc edx, edi
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x98]
mov esi, edx
mov dword [esp + 0x34], edx
xor edx, edx
add eax, ecx
mov ecx, dword [esp + 0x7c]
adc edx, ebx
add eax, esi
mov dword [esp + 0x50], eax
adc edx, edi
xor esi, esi
xor ebx, ebx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x9c]
mov ebp, edx
mov dword [esp + 0x44], edx
xor edx, edx
add eax, ecx
adc edx, ebx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0xa0]
add edx, ebp
adc ecx, esi
mov dword [esp + 0x54], edx
xor edi, edi
xor ebx, ebx
mov esi, ecx
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x48], edx
xor edx, edx
add eax, ecx
mov ecx, dword [esp + 0x84]
adc edx, ebx
add eax, esi
mov ebp, eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0xa4]
adc edx, edi
xor ebx, ebx
mov esi, edx
mov dword [esp + 0x5c], edx
xor edx, edx
mov edi, ebx
xor ebx, ebx
add eax, ecx
mov ecx, dword [esp + 0x88]
adc edx, ebx
add eax, esi
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xa8]
adc edx, edi
xor esi, esi
mov edi, esi
xor ebx, ebx
mov esi, edx
mov dword [esp + 0x24], edx
xor edx, edx
add eax, ecx
adc edx, ebx
mov ecx, edx
mov edx, eax
add edx, esi
adc ecx, edi
mov dword [esp + 0x28], edx
xor edi, edi
xor ebx, ebx
mov esi, ecx
mov dword [esp + 0x2c], ecx
mov eax, dword [esp + 0xac]
xor edx, edx
mov ecx, dword [esp + 0x8c]
add eax, ecx
adc edx, ebx
mov ecx, eax
mov eax, dword [esp + 0x20]
add ecx, esi
mov ebx, edx
adc ebx, edi
and eax, dword [esp + 0x28]
mov esi, ecx
and eax, ecx
mov edi, ebx
cmp eax, 0xffffffff
mov dword [esp + 0x3c], edi
setne dl
cmp ebp, 0xfffffffd
setbe al
xor ebx, ebx
or edx, eax
cmp ebp, 0xffffffff
mov ebp, dword [esp + 0x54]
movzx edx, dl
sete bl
mov eax, edx
not eax
and ebx, eax
xor eax, eax
cmp ebp, 0xbaaedce5
mov ecx, ebx
setbe al
not ecx
and eax, ecx
xor ecx, ecx
or eax, edx
cmp ebp, 0xbaaedce6
mov ebp, eax
seta cl
xor edx, edx
not ebp
and ebp, ecx
or ebx, ebp
mov ebp, dword [esp + 0x50]
mov ecx, ebx
cmp ebp, 0xaf48a03a
not ecx
setbe dl
and edx, ecx
xor ecx, ecx
or edx, eax
cmp ebp, 0xaf48a03b
mov ebp, edx
seta cl
xor eax, eax
not ebp
and ebp, ecx
or ebx, ebp
mov ebp, dword [esp + 0x38]
mov dword [esp + 0x38], esi
mov ecx, ebx
cmp ebp, 0xbfd25e8b
not ecx
setbe al
and eax, ecx
or eax, edx
cmp ebp, 0xbfd25e8c
seta cl
cmp dword [esp + 0x1c], 0xd0364140
mov edx, eax
seta al
not edx
or ecx, eax
movzx ecx, cl
and ecx, edx
xor edx, edx
or ebx, ecx
lea ebp, [ebx + edi]
mov ebx, dword [esp + 0x1c]
xor edi, edi
imul ecx, ebp, 0x2fc9bebf
mov esi, ecx
add esi, ebx
adc edi, edx
add ecx, ebx
xor esi, esi
xor edx, edx
imul eax, ebp, 0x402da173
mov dword [esp + 0x1c], ecx
mov ebx, edi
mov edi, esi
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x30]
mov esi, ebx
xor ebx, ebx
add ecx, eax
mov eax, dword [esp + 0x40]
adc ebx, edx
add ecx, esi
adc ebx, edi
mov dword [esp + 0x30], ecx
xor edi, edi
xor edx, edx
imul esi, ebp, 0x50b75fc4
mov dword [esp + 0x94], ecx
mov ecx, ebx
xor ebx, ebx
add eax, esi
adc edx, edi
add eax, ecx
mov ecx, dword [esp + 0x48]
adc edx, ebx
mov dword [esp + 0x40], eax
xor ebx, ebx
xor edi, edi
imul esi, ebp, 0x45512319
mov dword [esp + 0x98], eax
mov eax, edx
xor edx, edx
add esi, ecx
mov ecx, dword [esp + 0x38]
adc edi, ebx
add esi, eax
mov eax, dword [esp + 0x58]
adc edi, edx
mov dword [esp + 0x50], esi
xor edx, edx
xor ebx, ebx
mov dword [esp + 0x9c], esi
mov esi, edi
xor edi, edi
add eax, ebp
adc edx, ebx
add eax, esi
mov esi, dword [esp + 0x20]
adc edx, edi
mov dword [esp + 0x48], eax
xor edi, edi
mov dword [esp + 0xa0], eax
mov eax, edx
xor edx, edx
add eax, esi
mov esi, dword [esp + 0x28]
adc edx, edi
mov dword [esp + 0xa4], eax
mov ebp, eax
xor edi, edi
mov eax, edx
xor edx, edx
add eax, esi
adc edx, edi
mov dword [esp + 0xa8], eax
mov edi, eax
mov eax, edx
add eax, ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0xac], eax
or ecx, dword [esp + 0x30]
or ecx, dword [esp + 0x40]
or ecx, dword [esp + 0x50]
or ecx, dword [esp + 0x48]
or ebp, ecx
or edi, ebp
or edi, eax
je 0x696d4e8a
mov eax, dword [esp + 0xd4]
xor ebx, ebx
mov dword [eax], 0
mov eax, dword [esp + 0xd4]
mov dword [eax + 0x1c], 0
mov eax, dword [esp + 0xd4]
lea ecx, [eax + 4]
mov edx, eax
xor eax, eax
and ecx, 0xfffffffc
sub edx, ecx
add edx, 0x20
and edx, 0xfffffffc
mov dword [ecx + eax], ebx
add eax, 4
cmp eax, edx
jb 0x696d5223
mov eax, dword [esp + 0xd4]
lea edx, [esp + 0x90]
call fcn.696c39d0
add esp, 0xbc
mov eax, 1
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0xd0]
mov eax, dword [eax + 0xa8]
mov dword [esp], str.seckey___NULL
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd0]
call dword [eax + 0xa4]
add esp, 0xbc
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0xd0]
mov eax, dword [eax + 0xa8]
mov dword [esp], str.tweak___NULL
mov dword [esp + 4], eax
mov eax, dword [esp + 0xd0]
call dword [eax + 0xa4]
xor eax, eax
jmp 0x696d4ecc