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

Disassembly:
push 0xffffffffffffffff
push 0x1007e754
mov eax, dword fs:[0]
push eax
sub esp, 0x14c
mov eax, dword [0x10099060]
xor eax, esp
mov dword [esp + 0x148], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x10099060]
xor eax, esp
push eax
lea eax, [esp + 0x160]
mov dword fs:[0], eax
xor ebx, ebx
mov dword [esp + 0x18], ebx
push 0xd
mov ebp, 0xf
push str.landingCrypto
lea ecx, [esp + 0x40]
mov dword [esp + 0x58], ebp
mov dword [esp + 0x54], ebx
mov byte [esp + 0x44], bl
call fcn.10009130
lea eax, [esp + 0xb4]
push eax
lea ecx, [esp + 0x3c]
mov dword [esp + 0x16c], ebx
call fcn.10022e30
add esp, 4
mov esi, 0x10
cmp dword [esp + 0x50], esi
jb 0x10027065
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.1005f31a
add esp, 4
push 0x1009eb70
mov dword [esp + 0xd4], 0x1009eb70
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [esp + 0x168], 3
call fcn.10028940
mov edx, dword [0x100a154c]
mov byte [0x100a1554], bl
mov byte [0x100a1530], bl
mov eax, dword [edx + 4]
push eax
mov ecx, 0x100a1534
call fcn.1000b650
mov eax, dword [0x100a154c]
and dword [esp + 0x84], 0xfffffe00
mov dword [eax + 4], eax
mov eax, dword [0x100a154c]
mov dword [0x100a1550], ebx
mov dword [eax], eax
mov eax, dword [0x100a154c]
mov dword [eax + 8], eax
mov dword [0x100a1558], ebx
mov dword [0x100a155c], ebx
mov dword [0x100a1560], ebx
mov dword [0x100a1564], ebx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov byte [esp + 0x168], 5
push 0xa
push str.MoveCrypto
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
lea ecx, [esp + 0x17]
push ecx
lea edx, [esp + 0x20]
mov byte [esp + 0x16c], 6
push edx
lea ecx, [esp + 0xbc]
mov dword [esp + 0x20], 1
mov byte [esp + 0x1f], bl
call fcn.10001ab0
add esp, 8
test al, al
je 0x100271aa
cmp byte [esp + 0x17], bl
je 0x100271aa
push ebp
push str.MoveCryptoRules
lea ecx, [esp + 0x40]
mov dword [esp + 0x58], ebp
mov dword [esp + 0x54], ebx
mov byte [esp + 0x44], bl
call fcn.10009130
lea eax, [esp + 0x38]
mov dword [esp + 0x168], 7
push eax
lea edi, [esp + 0x80]
lea ecx, [esp + 0xb8]
mov dword [esp + 0x1c], 3
call fcn.10001be0
add esp, 4
mov byte [esp + 0x17], 1
test al, al
jne 0x100271ae
mov byte [esp + 0x17], bl
test byte [esp + 0x18], 2
je 0x100271d9
and dword [esp + 0x18], 0xfffffffd
cmp dword [esp + 0x50], esi
jb 0x100271cd
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.1005f31a
add esp, 4
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
mov dword [esp + 0x168], 5
test byte [esp + 0x18], 1
je 0x100271fe
cmp dword [esp + 0x34], esi
jb 0x100271fe
mov edx, dword [esp + 0x20]
push edx
call fcn.1005f31a
add esp, 4
cmp byte [esp + 0x17], bl
je 0x10027ba4
mov dword [esp + 0x18], ebx
lea esp, [esp]
movsx eax, byte [esp + 0x84]
cmp eax, 7
ja case.0x10027221.0
jmp dword [eax*4 + 0x10027c00]
mov eax, dword [esp + 0x7c]
cmp dword [eax + 0x1c], ebx
je case.0x10027221.0
mov ecx, dword [eax + 0x18]
mov eax, dword [eax]
lea esi, [esp + 0x58]
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], ecx
call fcn.10047e65
mov eax, dword [esp + 0x58]
cmp eax, ebx
jne 0x1002726e
call fcn.1005f2e0
xor eax, eax
mov esi, dword [esp + 0x5c]
cmp esi, dword [eax + 0x18]
jne 0x10027268
call fcn.1005f2e0
mov eax, dword [esi + 0x14]
inc eax
jmp 0x10027279
mov eax, dword [eax]
jmp 0x1002725a
mov eax, dword [esp + 0x7c]
mov eax, dword [eax + 0x1c]
cmp dword [esp + 0x18], eax
jae case.0x10027221.0
mov ecx, dword [esp + 0x18]
push ecx
lea edx, [esp + 0x80]
push edx
call fcn.100450a5
mov ebp, eax
mov esi, 7
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x130], esi
mov dword [esp + 0x12c], ebx
mov word [esp + 0x11c], ax
mov dword [esp + 0x150], esi
mov dword [esp + 0x14c], ebx
mov word [esp + 0x13c], cx
mov byte [esp + 0x168], 8
push 6
push str.source
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], 0xf
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
push 0x64
lea edi, [esp + 0x20]
mov ebx, ebp
mov byte [esp + 0x16c], 9
call fcn.10022d40
add esp, 4
mov byte [esp + 0x168], 8
cmp dword [esp + 0x34], 0x10
mov dword [esp + 0x114], eax
jb 0x1002732f
mov edx, dword [esp + 0x20]
push edx
call fcn.1005f31a
add esp, 4
xor eax, eax
push 4
push str.dest
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], 0xf
mov dword [esp + 0x38], eax
mov byte [esp + 0x28], al
call fcn.10009130
push 0x64
lea edi, [esp + 0x20]
mov ebx, ebp
mov byte [esp + 0x16c], 0xa
call fcn.10022d40
add esp, 4
mov byte [esp + 0x168], 8
cmp dword [esp + 0x34], 0x10
mov dword [esp + 0x134], eax
jb 0x1002738c
mov eax, dword [esp + 0x20]
push eax
call fcn.1005f31a
add esp, 4
mov eax, 0x64
cmp dword [esp + 0x114], eax
je 0x100275f3
cmp dword [esp + 0x134], eax
je 0x100275f3
push 7
xor ebx, ebx
mov esi, 0xf
push str.srcPath
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
sub esp, 0x1c
mov byte [esp + 0x184], 0xb
mov ecx, esp
mov dword [esp + 0x70], esp
push ebx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push 0x10083c5f
mov byte [ecx + 4], bl
call fcn.10009130
lea ecx, [esp + 0x7c]
push ecx
lea esi, [esp + 0x3c]
mov edi, ebp
call fcn.10001700
push eax
lea edx, [esp + 0x5c]
push edx
mov byte [esp + 0x190], 0xc
call fcn.10001360
add esp, 0x28
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x120]
mov byte [esp + 0x170], 0xd
call fcn.10008590
cmp dword [esp + 0x50], 8
jb 0x10027444
mov eax, dword [esp + 0x3c]
push eax
call fcn.1005f31a
add esp, 4
xor ecx, ecx
mov esi, 0x10
mov dword [esp + 0x50], 7
mov dword [esp + 0x4c], ebx
mov word [esp + 0x3c], cx
cmp dword [esp + 0x78], esi
jb 0x1002746f
mov edx, dword [esp + 0x64]
push edx
call fcn.1005f31a
add esp, 4
mov byte [esp + 0x168], 8
mov dword [esp + 0x78], 0xf
mov dword [esp + 0x74], ebx
mov byte [esp + 0x64], bl
cmp dword [esp + 0x34], esi
jb 0x1002749a
mov eax, dword [esp + 0x20]
push eax
call fcn.1005f31a
add esp, 4
push 7
mov esi, 0xf
push str.dstPath
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
sub esp, 0x1c
mov byte [esp + 0x184], 0xe
mov ecx, esp
mov dword [esp + 0x70], esp
push ebx
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x14], ebx
push 0x10083c5f
mov byte [ecx + 4], bl
call fcn.10009130
lea ecx, [esp + 0x54]
push ecx
lea esi, [esp + 0x3c]
mov edi, ebp
call fcn.10001700
push eax
lea edx, [esp + 0x84]
push edx
mov byte [esp + 0x190], 0xf
call fcn.10001360
add esp, 0x28
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x140]
mov byte [esp + 0x170], 0x10
call fcn.10008590
cmp dword [esp + 0x78], 8
jb 0x10027534
mov eax, dword [esp + 0x64]
push eax
call fcn.1005f31a
add esp, 4
xor ecx, ecx
mov edi, 0x10
mov dword [esp + 0x78], 7
mov dword [esp + 0x74], ebx
mov word [esp + 0x64], cx
cmp dword [esp + 0x50], edi
jb 0x1002755f
mov edx, dword [esp + 0x3c]
push edx
call fcn.1005f31a
add esp, 4
mov esi, 0xf
mov byte [esp + 0x168], 8
mov dword [esp + 0x50], esi
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x3c], bl
cmp dword [esp + 0x34], edi
jb 0x1002758b
mov eax, dword [esp + 0x20]
push eax
call fcn.1005f31a
add esp, 4
push 6
push str.action
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], esi
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
push 2
lea edi, [esp + 0x20]
mov ebx, ebp
mov byte [esp + 0x16c], 0x11
call fcn.10022d40
add esp, 4
mov byte [esp + 0x168], 8
cmp dword [esp + 0x34], 0x10
mov dword [esp + 0x154], eax
jb 0x100275e2
mov ecx, dword [esp + 0x20]
push ecx
call fcn.1005f31a
add esp, 4
lea ebx, [esp + 0x114]
call fcn.100288a0
mov esi, 7
mov edi, 8
mov byte [esp + 0x168], 5
cmp dword [esp + 0x150], edi
jb 0x10027619
mov edx, dword [esp + 0x13c]
push edx
call fcn.1005f31a
add esp, 4
xor eax, eax
mov dword [esp + 0x150], esi
mov dword [esp + 0x14c], 0
mov word [esp + 0x13c], ax
cmp dword [esp + 0x130], edi
jb 0x1002764e
mov ecx, dword [esp + 0x11c]
push ecx
call fcn.1005f31a
add esp, 4
inc dword [esp + 0x18]
xor ebx, ebx
lea ebp, [ebx + 0xf]
jmp 0x10027210
mov edi, dword [0x100a1578]
mov esi, dword [0x100a1574]
mov ecx, edi
sub ecx, esi
mov eax, 0x78787879
imul ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x100276e6
mov dword [esp + 0x18], edi
cmp esi, edi
jbe 0x10027698
call fcn.1005f2e0
mov edi, dword [0x100a1578]
mov esi, dword [0x100a1574]
mov ebp, dword [0x100a1568]
cmp esi, edi
jbe 0x100276a7
call fcn.1005f2e0
cmp ebp, ebx
je 0x100276b3
cmp ebp, dword [0x100a1568]
je 0x100276b8
call fcn.1005f2e0
mov edi, dword [esp + 0x18]
mov ecx, edi
sub ecx, esi
mov eax, 0x78787879
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
push 0x10027c20
add ecx, edx
push ecx
push edi
push esi
call fcn.1002b4d0
add esp, 0x10
mov ebp, 0xf
push 0xd
push str.MoveCryptoExt
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
lea edx, [esp + 0x17]
push edx
lea eax, [esp + 0x20]
mov byte [esp + 0x16c], 0x12
push eax
lea ecx, [esp + 0xbc]
mov byte [esp + 0x1f], bl
call fcn.10001ab0
add esp, 8
test al, al
je 0x10027736
cmp byte [esp + 0x17], bl
mov byte [esp + 0x17], 1
jne 0x1002773a
mov byte [esp + 0x17], bl
mov edi, 0x10
mov byte [esp + 0x168], 5
cmp dword [esp + 0x34], edi
jb 0x1002775a
mov ecx, dword [esp + 0x20]
push ecx
call fcn.1005f31a
add esp, 4
cmp byte [esp + 0x17], bl
je 0x100279ae
push 0xe
push str.MoveCryptoExts
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
sub esp, 0x18
mov dword [esp + 0x6c], esp
mov eax, esp
je 0x1002779e
mov dword [eax], vtable.std::tr1::_Impl_base1_class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t____class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__.0
mov dword [eax], 0x10085884
mov dword [eax + 4], fcn.1000bc00
mov dword [eax + 0x10], eax
push str..
sub esp, 0x1c
mov byte [esp + 0x1a0], 0x14
mov ecx, esp
mov dword [esp + 0x50], esp
push ebx
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], ebx
push 0x10083c5f
mov byte [ecx + 4], bl
call fcn.10009130
lea edx, [esp + 0x54]
push edx
lea ecx, [esp + 0xf0]
lea esi, [esp + 0xd4]
call fcn.10023510
push eax
lea eax, [esp + 0xa0]
push eax
mov byte [esp + 0x1ac], 0x15
call fcn.10001360
add esp, 0x28
mov byte [esp + 0x184], 0x16
cmp dword [eax + 0x18], 8
jb 0x1002780f
mov eax, dword [eax + 4]
jmp 0x10027812
add eax, 4
push eax
lea ecx, [esp + 0x58]
push ecx
call fcn.1003c186
add esp, 0xc
lea edx, [esp + 0x10c]
push edx
mov ecx, eax
mov byte [esp + 0x184], 0x17
call fcn.1000b8a0
add esp, 4
mov byte [esp + 0x180], 0x18
lea ecx, [esp + 0xec]
push ecx
mov ecx, eax
mov byte [esp + 0x184], 0x1c
call fcn.1000bea0
add esp, 0x1c
mov esi, eax
mov byte [esp + 0x168], 0x1d
cmp esi, 0x100a1534
je 0x100278a4
mov eax, dword [0x100a154c]
mov ecx, dword [0x100a1534]
mov edx, dword [eax]
push eax
push ecx
push edx
push ecx
lea edx, [esp + 0x68]
push edx
mov eax, 0x100a1534
call fcn.10009ca0
mov ebx, esi
mov eax, 0x100a1534
call fcn.1000d480
mov edi, 0x10
lea ebp, [edi - 1]
xor ebx, ebx
lea esi, [esp + 0xd4]
mov byte [esp + 0x168], 0x1e
call fcn.10008c40
mov eax, dword [esp + 0xd4]
push eax
call fcn.1005f31a
add esp, 4
lea esi, [esp + 0xf4]
mov byte [esp + 0x168], 0x1f
call fcn.10008c40
mov ecx, dword [esp + 0xf4]
push ecx
call fcn.1005f31a
mov eax, dword [esp + 0x48]
add esp, 4
cmp eax, ebx
je 0x10027917
mov edx, dword [esp + 0x54]
mov edi, dword [esp + 0x48]
push edx
call fcn.1000dc30
mov eax, dword [esp + 0x48]
add esp, 4
push eax
call fcn.1005f31a
add esp, 4
mov edi, 0x10
mov ecx, dword [esp + 0x38]
push ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
call fcn.1005f31a
add esp, 4
cmp dword [esp + 0x78], 8
jb 0x10027944
mov edx, dword [esp + 0x64]
push edx
call fcn.1005f31a
add esp, 4
xor eax, eax
mov dword [esp + 0x78], 7
mov dword [esp + 0x74], ebx
mov word [esp + 0x64], ax
cmp dword [esp + 0xb0], edi
jb 0x10027970
mov ecx, dword [esp + 0x9c]
push ecx
call fcn.1005f31a
add esp, 4
mov byte [esp + 0x168], 5
mov dword [esp + 0xb0], ebp
mov dword [esp + 0xac], ebx
mov byte [esp + 0x9c], bl
cmp dword [esp + 0x34], edi
jb 0x100279a0
mov edx, dword [esp + 0x20]
push edx
call fcn.1005f31a
add esp, 4
cmp dword [0x100a1550], ebx
setne al
mov byte [0x100a1530], al
push 0xe
push str.MoveCryptoSize
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
lea ecx, [esp + 0x17]
push ecx
lea edx, [esp + 0x20]
mov byte [esp + 0x16c], 0x20
push edx
lea ecx, [esp + 0xbc]
mov byte [esp + 0x1f], bl
call fcn.10001ab0
add esp, 8
test al, al
je 0x100279fe
cmp byte [esp + 0x17], bl
mov byte [esp + 0x17], 1
jne 0x10027a02
mov byte [esp + 0x17], bl
mov byte [esp + 0x168], 5
cmp dword [esp + 0x34], edi
jb 0x10027a1d
mov eax, dword [esp + 0x20]
push eax
call fcn.1005f31a
add esp, 4
cmp byte [esp + 0x17], bl
je 0x10027b1a
push 0x11
push str.MoveCryptoSizeMin
lea ecx, [esp + 0x24]
mov byte [0x100a1554], 1
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x20]
mov byte [esp + 0x16c], 0x21
push edx
lea ecx, [esp + 0xbc]
mov dword [esp + 0x20], ebx
call fcn.10023300
movzx eax, al
add esp, 8
neg eax
sbb eax, eax
and eax, dword [esp + 0x18]
mov byte [esp + 0x168], 5
shl eax, 0xa
cdq
mov dword [0x100a1558], eax
mov dword [0x100a155c], edx
cmp dword [esp + 0x34], edi
jb 0x10027aa4
mov eax, dword [esp + 0x20]
push eax
call fcn.1005f31a
add esp, 4
push 0x11
push str.MoveCryptoSizeMax
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
call fcn.10009130
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x20]
mov byte [esp + 0x16c], 0x22
push edx
lea ecx, [esp + 0xbc]
mov dword [esp + 0x20], ebx
call fcn.10023300
movzx eax, al
add esp, 8
neg eax
sbb eax, eax
and eax, dword [esp + 0x18]
mov byte [esp + 0x168], 5
shl eax, 0xa
cdq
mov dword [0x100a1560], eax
mov dword [0x100a1564], edx
cmp dword [esp + 0x34], edi
jb 0x10027b1a
mov eax, dword [esp + 0x20]
push eax
call fcn.1005f31a
add esp, 4
lea ecx, [esp + 0x98]
mov eax, 0x100a1530
call fcn.100254c0
cmp dword [eax + 0x18], 8
jb 0x10027b36
mov eax, dword [eax + 4]
jmp 0x10027b39
add eax, 4
mov ecx, dword [0x100a1578]
sub ecx, dword [0x100a1574]
push eax
mov eax, 0x78787879
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
push ecx
push str._d_MoveCryptoRules_loaded__match_rule:__s
mov ebx, str.athenwDbg
call fcn.1003f549
add esp, 0xc
cmp dword [esp + 0xb0], 8
jb 0x10027b84
mov edx, dword [esp + 0x9c]
push edx
call fcn.1005f31a
add esp, 4
xor eax, eax
mov dword [esp + 0xb0], 7
mov dword [esp + 0xac], 0
mov word [esp + 0x9c], ax
lea esi, [esp + 0x7c]
mov byte [esp + 0x168], 3
call fcn.10044696
push 0x1009eb70
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea esi, [esp + 0xb4]
mov dword [esp + 0x168], 0xffffffff
call fcn.10044696
mov ecx, dword [esp + 0x160]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x148]
xor ecx, esp
call fcn.1005ebcb
add esp, 0x158
ret