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

Disassembly:
push 0xffffffffffffffff
push 0x100b2e88
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100e87b8]
xor eax, esp
push eax
lea eax, [esp + 0x24]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi]
mov edx, dword [eax + 0xd8]
mov dword [esi + 0x384], 1
call edx
xor ebp, ebp
cmp eax, ebp
mov dword [esp + 0x14], eax
jne 0x1001c653
mov eax, dword [esi]
mov edx, dword [eax + 0x94]
mov ecx, esi
call edx
cmp eax, ebp
lea edi, [esi + 0x88]
mov ecx, edi
je 0x1001c490
mov ebx, dword [edi]
mov eax, dword [ebx + 0x74]
call eax
mov edx, dword [ebx + 0x78]
or eax, 1
push eax
mov ecx, edi
call edx
mov ebx, dword [edi]
mov eax, dword [esi + 0x478]
mov edx, dword [ebx + 0x1fc]
mov ecx, edi
mov dword [esi + 0x1c0], eax
call edx
push eax
mov eax, dword [ebx + 0x114]
mov ecx, edi
call eax
test eax, eax
jne 0x1001c471
mov eax, dword [esi + 0x278]
cmp eax, ebp
mov dword [esp + 0x14], 0x64
je 0x1001c471
mov edx, dword [edi]
mov ebx, dword [eax]
mov eax, dword [edx + 0x1fc]
mov ecx, edi
call eax
mov ecx, dword [esi + 0x278]
mov edx, dword [ebx + 0x28]
push eax
push str.Error_while_writing_file:__s
push 1
push 0x573
push str..BackupDocBase.cpp
push ecx
call edx
add esp, 0x18
mov ebx, dword [edi]
mov eax, dword [ebx + 0x74]
mov ecx, edi
call eax
mov edx, dword [ebx + 0x78]
and eax, 0xfffffffe
push eax
mov ecx, edi
call edx
mov dword [esi + 0x1c0], ebp
jmp 0x1001c641
mov eax, dword [edi]
mov edx, dword [eax + 0x158]
call edx
cmp dword [eax + 8], ebp
jbe 0x1001c615
mov edx, dword [esi]
push eax
mov eax, dword [edx + 0xf4]
mov ecx, esi
call eax
mov ebp, eax
xor ecx, ecx
test ebp, ebp
setne cl
push 0x586
push 0x100c1aac
mov dword [esp + 0x20], ebp
push ecx
call fcn.10001230
mov edx, dword [esi]
mov eax, dword [edx + 0x94]
add esp, 0xc
mov ecx, esi
call eax
mov ebx, eax
test ebx, ebx
je 0x1001c5b3
mov edx, dword [edi]
mov eax, dword [edx + 0x1b0]
mov ecx, edi
call eax
test eax, eax
je 0x1001c50a
mov edx, dword [ebx]
mov eax, dword [edx + 0x88]
mov ecx, ebx
call eax
push eax
mov ecx, esi
call fcn.10017c30
mov ecx, esi
call fcn.10001320
test eax, eax
je 0x1001c576
lea ecx, [esp + 0x1c]
call fcn.10089a50
push 0x10
lea ecx, [esp + 0x20]
mov dword [esp + 0x30], 0
call fcn.10087260
mov edx, dword [edi]
mov eax, dword [edx + 0xf8]
mov ecx, edi
call eax
push eax
lea ecx, [esp + 0x20]
call fcn.10087690
mov ebp, dword [ebx]
push 1
lea ecx, [esp + 0x20]
call fcn.10087020
mov edx, dword [ebp + 0xa0]
push eax
mov ecx, ebx
call edx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x2c], 0xffffffff
call fcn.1008a670
mov ebp, dword [esp + 0x18]
jmp 0x1001c597
mov eax, dword [ebx]
mov edx, dword [edi]
mov dword [esp + 0x18], eax
mov eax, dword [edx + 0xf8]
mov ecx, edi
call eax
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [edx + 0xa0]
mov ecx, ebx
call eax
mov eax, dword [ebx]
mov edx, dword [eax + 0x14]
mov ecx, ebx
mov dword [esp + 0x18], eax
call edx
push eax
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 0xe8]
mov ecx, ebx
call edx
test ebp, ebp
je 0x1001c5d2
mov ebx, dword [edi]
mov eax, dword [ebx + 0x1fc]
mov ecx, edi
call eax
mov edx, dword [ebx + 0x114]
push eax
mov ecx, edi
call edx
test eax, eax
jne 0x1001c641
mov eax, dword [esi + 0x278]
test eax, eax
mov dword [esp + 0x14], 0x64
je 0x1001c641
mov ebx, dword [eax]
mov eax, dword [edi]
mov edx, dword [eax + 0x1fc]
mov ecx, edi
call edx
mov ecx, dword [ebx + 0x28]
push eax
mov eax, dword [esi + 0x278]
push str.Error_while_writing_file:__s
push 1
push 0x5a4
push str..BackupDocBase.cpp
push eax
call ecx
add esp, 0x18
jmp 0x1001c641
mov eax, dword [esi + 0x278]
cmp eax, ebp
mov dword [esp + 0x14], 0x64
je 0x1001c641
mov edx, dword [eax]
push 0x5aa
push str..BackupDocBase.cpp
push str.Source_path_list_is_empty___
push eax
mov eax, dword [edx + 0x24]
call eax
add esp, 0x10
mov edx, dword [esi]
mov eax, dword [edx + 0xdc]
mov ecx, esi
call eax
mov eax, dword [esp + 0x14]
xor ebp, ebp
mov ecx, dword [esi + 0x478]
cmp ecx, ebp
mov dword [esi + 0x384], ebp
je 0x1001c66b
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 8]
call eax
xor eax, eax
mov dword [esi + 0x278], ebp
mov ecx, dword [esp + 0x24]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
push 0xffffffffffffffff
push 0x100b3fe8
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100e87b8]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esi + 0x384], 1
call fcn.1005c930
mov ebp, eax
mov eax, dword [esi + 0x88]
mov edx, dword [eax + 0xfc]
lea ebx, [esi + 0x88]
mov ecx, ebx
mov dword [esp + 0x1c], ebp
call edx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10029f07
sub eax, edx
sar eax, 1
je 0x10029f30
mov eax, dword [ebp]
mov edx, dword [eax + 0xb0]
mov ecx, ebp
call edx
test eax, eax
je 0x10029f30
mov ecx, esi
call fcn.10022550
mov eax, dword [esi + 0x280]
mov edx, dword [eax + 4]
lea edi, [esi + 0x280]
mov ecx, edi
call edx
mov eax, dword [edi]
mov edx, dword [eax + 0xc]
push 0
mov ecx, edi
call edx
mov ecx, dword [esi + 0x27c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x18]
push edi
call edx
mov eax, dword [ebp]
mov edx, dword [eax + 0x12c]
mov ecx, ebp
call edx
test eax, eax
je 0x10029f83
mov eax, dword [ebp]
mov edx, dword [eax + 0x130]
mov ecx, ebp
call edx
push eax
call fcn.1008b2c0
add esp, 4
mov eax, dword [ebp]
mov edx, dword [eax + 0x114]
mov ecx, ebp
call edx
shl eax, 0x14
xor ebp, ebp
mov ecx, esi
mov dword [esi + 0x4c0], eax
mov dword [esi + 0x380], ebp
call fcn.100102d0
mov eax, dword [esi + 0x47c]
cmp eax, ebp
je 0x10029fe0
mov edi, dword [eax]
mov eax, dword [ebx]
mov edx, dword [eax + 0xac]
mov ecx, ebx
call edx
mov ecx, dword [esi + 0x47c]
mov edx, dword [edi + 0x24]
movzx eax, ax
push eax
call edx
mov ecx, dword [esi + 0x47c]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
lea edx, [esi + 0x3c]
push edx
call eax
mov edx, dword [esi]
mov eax, dword [edx + 0xbc]
mov ecx, esi
mov dword [esp + 0x18], ebp
mov dword [esp + 0x14], ebp
call eax
test eax, eax
je 0x1002a281
mov edx, dword [esi]
mov eax, dword [edx + 0x94]
mov ecx, esi
call eax
mov edx, dword [ebx]
mov edi, eax
mov eax, dword [edx + 0xfc]
mov ecx, ebx
mov dword [esi + 0x378], ebp
mov dword [esi + 0x37c], ebp
call eax
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bp
jne 0x1002a025
sub eax, edx
sar eax, 1
je 0x1002a05f
cmp edi, ebp
jne 0x1002a067
mov eax, dword [esi + 0x278]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x24]
push 0x47a
push str..BackupDocBase.cpp
push str.This_backup_is_started_as_a_job_but_no_data_items_are_available_for_backup___
push eax
call edx
add esp, 0x10
jmp 0x1002a11e
cmp edi, ebp
je 0x1002a11e
mov eax, dword [ebx]
mov edx, dword [eax + 0xfc]
mov ecx, ebx
call edx
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, bp
jne 0x1002a076
sub eax, edx
sar eax, 1
je 0x1002a11a
mov eax, dword [ebx]
mov edx, dword [eax + 0x234]
mov ecx, ebx
call edx
cmp eax, 8
je 0x1002a10e
mov eax, dword [ebx]
mov edx, dword [eax + 0x234]
mov ecx, ebx
call edx
cmp eax, 9
je 0x1002a10e
mov eax, dword [esi + 0x278]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x1c]
push 0x488
push str..BackupDocBase.cpp
push 0x100c15fc
push 0x14
push eax
call edx
mov eax, dword [esi]
mov edx, dword [eax + 0x134]
add esp, 0x14
mov ecx, esi
call edx
mov eax, dword [esi + 0x278]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x1c]
push 0x48a
push str..BackupDocBase.cpp
push 0x100c15fc
push 0x15
push eax
call edx
mov ecx, dword [esi + 0x138]
mov eax, dword [ecx]
mov edx, dword [eax + 0x34]
add esp, 0x14
push ebp
push ebp
call edx
jmp 0x1002a11e
mov eax, dword [esi]
mov edx, dword [eax + 0x138]
mov ecx, esi
call edx
cmp edi, ebp
jne 0x1002a197
mov eax, dword [ebx]
mov edx, dword [eax + 0x158]
mov edi, dword [esi]
mov ecx, ebx
call edx
push eax
mov eax, dword [edi + 0xf4]
mov ecx, esi
call eax
mov edx, dword [esi]
mov ebp, eax
mov eax, dword [edx + 0x94]
mov ecx, esi
call eax
test ebp, ebp
mov edi, eax
je 0x1002a14f
test edi, edi
jne 0x1002a195
mov edx, dword [esi + 0x280]
mov eax, dword [edx + 0xc]
lea ecx, [esi + 0x280]
push 0xa
call eax
mov eax, dword [esi + 0x278]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x1c]
push 0x49a
push str..BackupDocBase.cpp
push 0x100c15fc
push 0xb
push eax
call edx
add esp, 0x14
test edi, edi
mov ebp, 1
mov dword [esp + 0x14], ebp
je 0x1002a26f
xor ebp, ebp
mov eax, dword [ebx]
mov edx, dword [eax + 0x1b0]
mov ecx, ebx
call edx
test eax, eax
je 0x1002a1bb
mov eax, dword [edi]
mov edx, dword [eax + 0x88]
mov ecx, edi
call edx
push eax
mov ecx, esi
call fcn.10017c30
mov eax, dword [ebx]
mov edx, dword [eax + 0x3c]
mov ecx, ebx
call edx
cmp eax, 2
jne 0x1002a222
lea ecx, [esp + 0x20]
call fcn.10089a50
push 0x10
lea ecx, [esp + 0x24]
mov dword [esp + 0x34], ebp
call fcn.10087260
mov eax, dword [ebx]
mov edx, dword [eax + 0xf8]
mov ecx, ebx
call edx
push eax
lea ecx, [esp + 0x24]
call fcn.10087690
mov ebx, dword [edi]
push 1
lea ecx, [esp + 0x24]
call fcn.10087020
push eax
mov eax, dword [ebx + 0xa0]
mov ecx, edi
call eax
lea ecx, [esp + 0x20]
mov dword [esp + 0x30], 0xffffffff
call fcn.1008a670
jmp 0x1002a23b
mov edx, dword [ebx]
mov eax, dword [edx + 0xf8]
mov ebp, dword [edi]
mov ecx, ebx
call eax
mov edx, dword [ebp + 0xa0]
push eax
mov ecx, edi
call edx
mov ebx, dword [edi]
mov eax, dword [ebx + 0x14]
mov ecx, edi
call eax
mov edx, dword [ebx + 0xe8]
push eax
mov ecx, edi
call edx
lea eax, [esp + 0x14]
push eax
mov ecx, esi
call fcn.10029520
mov edx, dword [esi]
mov ebp, dword [esp + 0x14]
mov ebx, eax
mov eax, dword [edx + 0xc0]
mov ecx, esi
call eax
jmp 0x1002a29d
mov edx, dword [esi]
mov eax, dword [edx + 0xc0]
mov ebx, dword [esp + 0x18]
mov ecx, esi
call eax
jmp 0x1002a29d
mov edx, dword [esi + 0x280]
mov eax, dword [edx + 0xc]
lea ecx, [esi + 0x280]
push 0xa
mov ebp, 3
call eax
mov ebx, dword [esp + 0x18]
mov ecx, esi
call fcn.10010280
mov edi, dword [esp + 0x1c]
mov edx, dword [edi]
mov eax, dword [edx + 0x178]
mov ecx, edi
call eax
test eax, eax
je 0x1002a2d9
test ebx, ebx
mov edx, dword [edi]
mov ecx, edi
je 0x1002a2c8
mov eax, dword [edx + 0x17c]
jmp 0x1002a2ce
mov eax, dword [edx + 0x184]
call eax
push eax
call fcn.1008b2a0
add esp, 4
mov edx, dword [edi]
mov eax, dword [edx + 0x12c]
mov ecx, edi
call eax
test eax, eax
je 0x1002a302
test ebx, ebx
je 0x1002a302
mov edx, dword [edi]
mov eax, dword [edx + 0x134]
mov ecx, edi
call eax
push eax
call fcn.1008b2c0
add esp, 4
cmp ebp, 2
mov dword [esi + 0x390], 0x21
je 0x1002a31a
cmp ebp, 4
je 0x1002a31a
push 0x64
jmp 0x1002a31c
push 0
mov ecx, dword [esi + 0x27c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x24]
call eax
mov eax, dword [esi + 0x278]
mov dword [esi + 0x390], 0x22
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push 0
push eax
call edx
mov ecx, dword [esi + 0x27c]
add esp, 8
mov dword [esi + 0x384], 0
mov edx, dword [ecx]
lea eax, [esi + 0x280]
push eax
mov eax, dword [edx + 0x18]
call eax
test ebp, ebp
jle 0x1002a37a
mov esi, dword [esi + 0x27c]
mov edx, dword [esi]
mov eax, dword [edx + 0x20]
push 0
push ebp
mov ecx, esi
call eax
xor eax, eax
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x20
ret
push esi
mov esi, ecx
push edi
lea ecx, [esi + 0x84]
xor edi, edi
call fcn.10039ac0
mov eax, dword [esi + 0x388]
sub eax, edi
je 0x1002a3ba
sub eax, 2
jne 0x1002a3c4
pop edi
lea ecx, [esi - 4]
pop esi
jmp 0x1001c390
pop edi
lea ecx, [esi - 4]
pop esi
jmp 0x10029eb0
mov eax, edi
pop edi
pop esi
ret