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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10124242
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x162c
call fcn.100f9ee0
mov eax, dword [0x1015d2f0]
xor eax, esp
mov dword [esp + 0x1628], eax
push ebx
push esi
push edi
mov eax, dword [0x1015d2f0]
xor eax, esp
push eax
lea eax, [esp + 0x1640]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, dword [ebp + 0x14]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x10]
push eax
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x38], ecx
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x3c], edx
mov edx, dword [ebp + 0x1c]
push eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x2c], edx
call fcn.1000d6b0
push eax
call fcn.1000eb00
test al, al
je 0x1003a05b
lea esi, [esp + 0x90]
call fcn.10033780
xor ebx, ebx
mov dword [esp + 0x1648], ebx
mov eax, 0xf
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], ebx
mov byte [esp + 0x78], bl
mov dword [esp + 0xfc], eax
mov dword [esp + 0xf8], ebx
mov byte [esp + 0xe8], bl
mov byte [esp + 0x1648], 2
push 4
push str..log
lea ecx, [esp + 0x108]
mov dword [esp + 0x120], eax
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], bl
call fcn.10004290
push 0xa27
lea ecx, [esp + 0x1e9]
push ebx
mov byte [esp + 0x1650], 3
push ecx
mov byte [esp + 0x1f0], bl
call fcn.100f8db0
add esp, 0xc
push edi
lea ecx, [esp + 0x1e8]
call fcn.10039090
xor edi, edi
cmp eax, ebx
mov dword [esp + 0x2c], eax
jle 0x10039759
lea eax, [esp + 0x1e4]
mov dword [esp + 0x28], eax
mov dword [esp + 0x134], 0xf
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x10039550
mov edx, dword [esp + 0x28]
sub eax, esi
push eax
push edx
lea ecx, [esp + 0x124]
call fcn.10004290
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x98]
push eax
lea ecx, [esp + 0x80]
mov byte [esp + 0x1654], 4
call fcn.100057a0
push 1
push 0x1013af24
lea ecx, [esp + 0x7c]
call fcn.10006400
xor eax, eax
push 0xa
push 0x20
lea ecx, [esp + 0x1cc]
push ecx
lea esi, [edi + 1]
push esi
mov byte [esp + 0x1d4], bl
mov dword [esp + 0x1d5], eax
mov dword [esp + 0x1d9], eax
mov dword [esp + 0x1dd], eax
mov dword [esp + 0x1e1], eax
mov dword [esp + 0x1e5], eax
mov dword [esp + 0x1e9], eax
mov dword [esp + 0x1ed], eax
mov word [esp + 0x1f1], ax
mov byte [esp + 0x1f3], al
call fcn.100f3531
lea eax, [esp + 0x1d4]
add esp, 0x10
mov dword [esp + 0x70], 0xf
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x5c], bl
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x10039615
sub eax, edi
push eax
lea edx, [esp + 0x1c8]
push edx
lea ecx, [esp + 0x60]
call fcn.10004290
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x80]
mov byte [esp + 0x1654], 5
call fcn.10006300
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x108]
push ecx
lea ecx, [esp + 0x80]
call fcn.10006300
mov edx, dword [esp + 0x20]
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
push 1
push edx
push eax
push ecx
lea edx, [esp + 0x84]
lea ecx, [esp + 0x12c]
lea edi, [esp + 0x4c]
call fcn.1003d930
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xf0]
mov byte [esp + 0x1654], 6
call fcn.100057a0
mov edi, 0x10
mov byte [esp + 0x1648], 5
cmp dword [esp + 0x54], edi
jb 0x100396c2
mov edx, dword [esp + 0x40]
push edx
call fcn.100f4085
add esp, 4
lea eax, [esp + 0xe4]
push eax
call fcn.1003b170
mov ecx, dword [ebp + 0x20]
mov edx, dword [esp + 0x24]
push ebx
push ecx
push edx
mov edx, dword [esp + 0x2c]
lea eax, [esp + 0xf0]
push eax
mov eax, dword [ebp + 0xc]
lea ecx, [esp + 0xa0]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ecx
call fcn.10038cf0
cmp dword [esp + 0x70], edi
jb 0x1003970f
mov edx, dword [esp + 0x5c]
push edx
call fcn.100f4085
add esp, 4
mov byte [esp + 0x1648], 3
mov dword [esp + 0x70], 0xf
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x5c], bl
cmp dword [esp + 0x134], edi
jb 0x10039740
mov eax, dword [esp + 0x120]
push eax
call fcn.100f4085
add esp, 4
mov eax, dword [esp + 0x28]
mov edi, esi
add eax, 0x104
cmp edi, dword [esp + 0x2c]
mov dword [esp + 0x28], eax
jl 0x10039530
mov esi, 0xf
mov dword [esp + 0xc4], esi
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], bl
mov edi, dword [esp + 0x34]
mov byte [esp + 0x1648], 7
mov eax, dword [edi + 0x14]
mov byte [esp + 0x1f], bl
cmp eax, ebx
jbe 0x1003991f
cmp dword [edi + 0x18], 0x10
jb 0x10039799
mov eax, dword [edi + 4]
jmp 0x1003979c
lea eax, [edi + 4]
push ebx
push 0x80
push 3
push ebx
push 1
push accept
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
je 0x100397c1
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x100397d0
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x20
jne 0x1003991f
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x98]
push ecx
lea ecx, [esp + 0x64]
mov byte [esp + 0x2b], 1
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
call fcn.100057a0
push 1
push 0xffffffffffffffff
lea edx, [esp + 0x1c]
mov byte [esp + 0x1650], 8
push edx
mov ecx, edi
mov byte [esp + 0x20], 0x2e
call fcn.100082e0
cmp eax, 0xffffffff
je 0x1003988b
mov esi, dword [edi + 0x14]
push 1
push 0xffffffffffffffff
lea eax, [esp + 0x1c]
push eax
mov ecx, edi
mov byte [esp + 0x20], 0x2e
call fcn.100082e0
push 1
push 0xffffffffffffffff
lea ecx, [esp + 0x1c]
push ecx
mov ecx, edi
mov dword [esp + 0x40], eax
mov byte [esp + 0x20], 0x2e
call fcn.100082e0
sub esi, dword [esp + 0x34]
lea edx, [esp + 0x3c]
push esi
push eax
push edx
mov ecx, edi
call fcn.100043c0
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x64]
mov byte [esp + 0x1654], 9
call fcn.10006300
mov byte [esp + 0x1648], 8
cmp dword [esp + 0x54], 0x10
jb 0x1003988b
mov eax, dword [esp + 0x40]
push eax
call fcn.100f4085
add esp, 4
mov ecx, dword [esp + 0x20]
mov esi, dword [ebp + 0xc]
mov edx, dword [esp + 0x18]
push 1
push ecx
push esi
push edx
mov ecx, edi
lea edx, [esp + 0x68]
lea edi, [esp + 0x4c]
call fcn.1003d930
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xb8]
mov byte [esp + 0x1654], 0xa
call fcn.100057a0
mov byte [esp + 0x1648], 8
cmp dword [esp + 0x54], 0x10
jb 0x100398de
mov eax, dword [esp + 0x40]
push eax
call fcn.100f4085
add esp, 4
mov ecx, dword [ebp + 0x20]
mov edx, dword [esp + 0x24]
push 1
push ecx
push edx
mov edx, dword [esp + 0x2c]
lea eax, [esp + 0xb8]
push eax
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0xa0]
push ecx
push edx
push esi
push eax
call fcn.10038cf0
cmp dword [esp + 0x70], 0x10
jb 0x10039922
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.100f4085
add esp, 4
jmp 0x10039922
mov esi, dword [ebp + 0xc]
mov dword [esp + 0xe0], 0xf
mov dword [esp + 0xdc], ebx
mov byte [esp + 0xcc], bl
mov edi, dword [esp + 0x38]
mov byte [esp + 0x1648], 0xb
mov eax, dword [edi + 0x14]
mov byte [esp + 0x14], bl
cmp eax, ebx
jbe 0x10039a70
cmp dword [edi + 0x18], 0x10
jb 0x10039961
mov eax, dword [edi + 4]
jmp 0x10039964
lea eax, [edi + 4]
push ebx
push 0x80
push 3
push ebx
push 1
push accept
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
cmp eax, 0xffffffff
je 0x10039989
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x10039998
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x20
jne 0x10039a70
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0x98]
push edx
lea ecx, [esp + 0x64]
mov byte [esp + 0x20], 1
mov dword [esp + 0x7c], 0xf
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
call fcn.100057a0
push 9
push str..feedback
lea ecx, [esp + 0x60]
mov byte [esp + 0x1650], 0xc
call fcn.10006400
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
push 1
push eax
push esi
push ecx
mov ecx, edi
lea edx, [esp + 0x68]
lea edi, [esp + 0x4c]
call fcn.1003d930
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xd4]
mov byte [esp + 0x1654], 0xd
call fcn.100057a0
mov byte [esp + 0x1648], 0xc
cmp dword [esp + 0x54], 0x10
jb 0x10039a29
mov edx, dword [esp + 0x40]
push edx
call fcn.100f4085
add esp, 4
mov eax, dword [ebp + 0x20]
mov ecx, dword [esp + 0x24]
push 3
push eax
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0xd4]
push edx
mov edx, dword [esp + 0x28]
lea eax, [esp + 0xa0]
push eax
push ecx
push esi
push edx
call fcn.10038cf0
mov byte [esp + 0x1648], 0xb
cmp dword [esp + 0x70], 0x10
jb 0x10039a70
mov eax, dword [esp + 0x5c]
push eax
call fcn.100f4085
add esp, 4
cmp dword [esp + 0x2c], ebx
jg 0x10039b79
cmp byte [esp + 0x1f], bl
jne 0x10039b79
cmp byte [esp + 0x14], bl
jne 0x10039b79
mov edi, 0x10
cmp dword [esp + 0xe0], edi
jb 0x10039aac
mov ecx, dword [esp + 0xcc]
push ecx
call fcn.100f4085
add esp, 4
mov esi, 0xf
mov dword [esp + 0xe0], esi
mov dword [esp + 0xdc], ebx
mov byte [esp + 0xcc], bl
cmp dword [esp + 0xc4], edi
jb 0x10039adf
mov edx, dword [esp + 0xb0]
push edx
call fcn.100f4085
add esp, 4
mov dword [esp + 0xc4], esi
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], bl
cmp dword [esp + 0x118], edi
jb 0x10039b0d
mov eax, dword [esp + 0x104]
push eax
call fcn.100f4085
add esp, 4
mov dword [esp + 0x118], esi
mov dword [esp + 0x114], ebx
mov byte [esp + 0x104], bl
cmp dword [esp + 0xfc], edi
jb 0x10039b3b
mov ecx, dword [esp + 0xe8]
push ecx
call fcn.100f4085
add esp, 4
mov dword [esp + 0xfc], esi
mov dword [esp + 0xf8], ebx
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x8c], edi
jb 0x10039b66
mov edx, dword [esp + 0x78]
push edx
call fcn.100f4085
add esp, 4
cmp dword [esp + 0xa8], edi
mov dword [esp + 0x8c], esi
jmp 0x1003a03e
push 0xa27
lea ecx, [esp + 0xc11]
push ebx
push ecx
mov byte [esp + 0xc18], bl
call fcn.100f8db0
mov edx, dword [esp + 0x3c]
add esp, 0xc
push edx
lea ecx, [esp + 0xc10]
call fcn.10039090
cmp eax, ebx
mov dword [esp + 0x30], eax
jle 0x10039c56
lea edi, [esp + 0xc0c]
mov dword [esp + 0x28], eax
mov edi, edi
mov eax, edi
mov dword [esp + 0x134], 0xf
mov dword [esp + 0x130], ebx
mov byte [esp + 0x120], bl
lea ecx, [eax + 1]
mov edi, edi
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x10039be0
sub eax, ecx
push eax
push edi
lea ecx, [esp + 0x124]
call fcn.10004290
mov eax, dword [ebp + 0x20]
push eax
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x120]
push ecx
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x98]
push edx
push eax
push esi
push ecx
mov byte [esp + 0x1660], 0xe
call fcn.10038ec0
mov byte [esp + 0x1648], 0xb
cmp dword [esp + 0x134], 0x10
jb 0x10039c45
mov edx, dword [esp + 0x120]
push edx
call fcn.100f4085
add esp, 4
add edi, 0x104
sub dword [esp + 0x28], 1
jne 0x10039bc0
mov edi, 0xf
mov dword [esp + 0x16c], edi
mov dword [esp + 0x168], ebx
mov byte [esp + 0x158], bl
push str..xml
lea eax, [esp + 0x94]
push eax
lea ecx, [esp + 0x194]
push ecx
mov byte [esp + 0x1654], 0xf
call fcn.10008390
add esp, 0xc
mov byte [esp + 0x1648], 0x10
push ebx
push 0x1013e2a2
lea ecx, [esp + 0x60]
mov dword [esp + 0x78], edi
mov dword [esp + 0x74], ebx
mov byte [esp + 0x64], bl
call fcn.10004290
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
push ebx
push edx
push esi
push eax
lea edx, [esp + 0x19c]
lea ecx, [esp + 0x68]
lea edi, [esp + 0x148]
mov byte [esp + 0x1658], 0x11
call fcn.1003d930
mov byte [esp + 0x1648], 0x13
cmp dword [esp + 0x70], 0x10
jb 0x10039cff
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.100f4085
add esp, 4
mov edx, dword [ebp + 0x28]
mov eax, dword [ebp + 0x24]
mov ecx, dword [esp + 0x30]
push edx
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 0x24]
push eax
push ecx
push edx
mov edx, dword [ebp + 0x20]
lea eax, [esp + 0xd8]
push eax
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0xc0]
push ecx
push edx
push eax
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0x15c]
push edx
push edi
push esi
mov dword [esp + 0xa0], 0xf
mov dword [esp + 0x9c], ebx
mov byte [esp + 0x8c], bl
call fcn.1003d540
lea eax, [esp + 0x138]
push eax
call fcn.1003b170
mov ecx, dword [ebp + 0x20]
mov edx, dword [esp + 0x24]
push 2
push ecx
push edx
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x144]
push eax
lea ecx, [esp + 0xa0]
push ecx
push edi
push esi
push edx
call fcn.10038cf0
push str..record
lea eax, [esp + 0x94]
push eax
lea ecx, [esp + 0x1b0]
push ecx
call fcn.10008390
add esp, 0xc
mov byte [esp + 0x1648], 0x14
push ebx
push 0x1013e2a2
lea ecx, [esp + 0x60]
mov dword [esp + 0x78], 0xf
mov dword [esp + 0x74], ebx
mov byte [esp + 0x64], bl
call fcn.10004290
mov edx, dword [esp + 0x18]
push ebx
push edi
push esi
push edx
lea edx, [esp + 0x1b8]
lea ecx, [esp + 0x68]
lea edi, [esp + 0x180]
mov byte [esp + 0x1658], 0x15
call fcn.1003d930
mov byte [esp + 0x1648], 0x17
cmp dword [esp + 0x70], 0x10
jb 0x10039e19
mov eax, dword [esp + 0x5c]
push eax
call fcn.100f4085
add esp, 4
mov esi, dword [esp + 0x18]
lea ecx, [esp + 0x138]
push ecx
mov ecx, dword [ebp + 0x20]
lea edx, [esp + 0xcc]
push edx
mov edx, dword [esp + 0x2c]
lea eax, [esp + 0xb4]
push eax
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [ebp + 0xc]
push edx
push eax
push ecx
mov edi, 0xf
push esi
lea edx, [esp + 0xb0]
lea ecx, [esp + 0x190]
mov dword [esp + 0x90], edi
mov dword [esp + 0x8c], ebx
mov byte [esp + 0x7c], bl
call fcn.1003ccd0
call fcn.10040750
mov esi, 0x10
cmp dword [esp + 0x188], esi
jb 0x10039e95
mov edx, dword [esp + 0x174]
push edx
call fcn.100f4085
add esp, 4
mov dword [esp + 0x188], edi
mov dword [esp + 0x184], ebx
mov byte [esp + 0x174], bl
cmp dword [esp + 0x1c0], esi
jb 0x10039ec3
mov eax, dword [esp + 0x1ac]
push eax
call fcn.100f4085
add esp, 4
mov dword [esp + 0x1c0], edi
mov dword [esp + 0x1bc], ebx
mov byte [esp + 0x1ac], bl
cmp dword [esp + 0x150], esi
jb 0x10039ef1
mov ecx, dword [esp + 0x13c]
push ecx
call fcn.100f4085
add esp, 4
mov dword [esp + 0x150], edi
mov dword [esp + 0x14c], ebx
mov byte [esp + 0x13c], bl
cmp dword [esp + 0x1a4], esi
jb 0x10039f1f
mov edx, dword [esp + 0x190]
push edx
call fcn.100f4085
add esp, 4
mov dword [esp + 0x1a4], edi
mov dword [esp + 0x1a0], ebx
mov byte [esp + 0x190], bl
cmp dword [esp + 0x16c], esi
jb 0x10039f4d
mov eax, dword [esp + 0x158]
push eax
call fcn.100f4085
add esp, 4
mov dword [esp + 0x16c], edi
mov dword [esp + 0x168], ebx
mov byte [esp + 0x158], bl
cmp dword [esp + 0xe0], esi
jb 0x10039f7b
mov ecx, dword [esp + 0xcc]
push ecx
call fcn.100f4085
add esp, 4
mov dword [esp + 0xe0], edi
mov dword [esp + 0xdc], ebx
mov byte [esp + 0xcc], bl
cmp dword [esp + 0xc4], esi
jb 0x10039fa9
mov edx, dword [esp + 0xb0]
push edx
call fcn.100f4085
add esp, 4
mov dword [esp + 0xc4], edi
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], bl
cmp dword [esp + 0x118], esi
jb 0x10039fd7
mov eax, dword [esp + 0x104]
push eax
call fcn.100f4085
add esp, 4
mov dword [esp + 0x118], edi
mov dword [esp + 0x114], ebx
mov byte [esp + 0x104], bl
cmp dword [esp + 0xfc], esi
jb 0x1003a005
mov ecx, dword [esp + 0xe8]
push ecx
call fcn.100f4085
add esp, 4
mov dword [esp + 0xfc], edi
mov dword [esp + 0xf8], ebx
mov byte [esp + 0xe8], bl
cmp dword [esp + 0x8c], esi
jb 0x1003a030
mov edx, dword [esp + 0x78]
push edx
call fcn.100f4085
add esp, 4
cmp dword [esp + 0xa8], esi
mov dword [esp + 0x8c], edi
mov byte [esp + 0x78], bl
mov dword [esp + 0x88], ebx
jb 0x1003a05b
mov eax, dword [esp + 0x94]
push eax
call fcn.100f4085
add esp, 4
mov ecx, dword [esp + 0x1640]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1628]
xor ecx, esp
call fcn.100f30a6
mov esp, ebp
pop ebp
ret 0x24