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

Disassembly:
sub esp, 0x86c
mov eax, dword [0x45b660]
xor eax, esp
mov dword [esp + 0x868], eax
push ebx
push ebp
mov ebx, ecx
mov eax, dword [ebx]
mov ebp, dword [eax + 4]
xor eax, eax
mov dword [ebp], eax
mov dword [ebp + 4], eax
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], eax
push esi
mov esi, dword [esp + 0x87c]
mov dword [ebp + 0x10], eax
mov dword [ebp + 0x14], eax
push edi
mov dword [ebp + 0x18], eax
mov dword [ebp + 0x1c], eax
mov edi, edx
mov edx, dword [esi]
mov edx, dword [edx + 4]
push 0x2c
lea eax, [esp + 0x50]
push eax
push edi
mov ecx, esi
mov dword [esp + 0x4c], ebx
call edx
test al, al
jne 0x411d3e
push 0x454920
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
cmp dword [esp + 0x4c], 0x55440101
jne 0x411d2b
xor eax, eax
mov dword [ebp + 0x10], eax
mov dword [ebp + 0x18], eax
mov dword [ebp + 0x14], eax
mov dword [ebp + 0x1c], eax
mov ecx, dword [ebx]
mov edx, dword [ecx]
mov ecx, dword [esp + 0x6c]
mov dword [edx + 0xc], ecx
mov edx, dword [ebx]
mov ecx, dword [edx]
mov dword [ecx + 0x10], eax
mov edx, dword [ebx]
mov edx, dword [edx + 4]
mov eax, dword [esp + 0x60]
mov ebx, dword [esp + 0x68]
lea eax, [eax + eax*2]
lea ecx, [edx + 0x20]
mov dword [esp + 0x14], ecx
add eax, eax
add eax, eax
add ecx, eax
mov dword [esp + 0x34], ecx
lea ecx, [edx + eax + 0x20]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x64]
lea ecx, [ecx + ecx*2]
add ecx, ecx
add ecx, ecx
add edx, ecx
lea edx, [edx + eax + 0x20]
add eax, 0x20
add ecx, eax
mov dword [esp + 0x28], ebx
add ebx, edx
mov dword [esp + 0x38], edx
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x28]
mov dword [ebp + 8], ecx
add ecx, edx
mov dword [ebp + 4], eax
lea eax, [esp + 0x44]
mov dword [ebp + 0xc], ecx
push eax
lea ecx, [esp + 0x7c]
push ecx
mov dword [esp + 0x38], ebx
mov dword [ebp], 0x20
call fcn.00411b80
test al, al
jne 0x411e00
push 0x454934
mov ecx, edi
call fcn.0043db30
mov ecx, eax
call fcn.0043dba0
xor al, al
jmp 0x4120a7
test byte [0x461170], 1
jne 0x411e1a
mov edx, dword [esp + 0x74]
or dword [0x461170], 1
mov dword [0x46116c], edx
cmp dword [esp + 0x60], 0
mov dword [esp + 0x18], 0
jle 0x4120a5
mov ecx, dword [esp + 0x14]
add ecx, 8
mov dword [esp + 0x24], ecx
jmp 0x411e44
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x34]
ja 0x4120c2
mov edx, dword [esp + 0x1c]
sub edx, dword [esp + 0x38]
mov eax, 0x2aaaaaab
mov dword [ecx - 8], edx
mov edx, dword [esp + 0x20]
sub edx, dword [esp + 0x3c]
push 4
imul edx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ecx - 4], eax
mov edx, dword [esi]
mov eax, dword [edx + 4]
push ecx
push edi
mov ecx, esi
call eax
test al, al
je 0x4120d2
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x30]
jae 0x4120e2
mov edx, dword [esi]
push 2
push eax
mov dword [esp + 0x30], eax
mov eax, dword [edx + 4]
push edi
mov ecx, esi
call eax
test al, al
je 0x4120d2
mov ecx, dword [esp + 0x1c]
movzx eax, word [ecx]
movsx ecx, ax
mov edx, ecx
and edx, 0x80000001
jns 0x411ecd
dec edx
or edx, 0xfffffffe
inc edx
jne 0x4120f2
test ax, ax
jle 0x412102
cmp ax, 0x80
ja 0x412112
mov eax, dword [esp + 0x1c]
mov edx, dword [esi]
add eax, 2
push ecx
push eax
mov dword [esp + 0x50], eax
mov eax, dword [edx + 4]
push edi
mov ecx, esi
call eax
test al, al
je 0x41215b
mov eax, dword [esp + 0x1c]
movsx ecx, word [eax]
lea edx, [eax + ecx + 2]
mov eax, dword [esp + 0x28]
movsx eax, word [eax]
shr eax, 1
mov dword [esp + 0x1c], edx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x10], 0
je 0x411f70
jmp 0x411f30
push 0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x10]
movzx ecx, word [edx + eax*2]
test cx, cx
jl 0x412122
movsx ecx, cx
cmp ecx, dword [esp + 0x44]
jg 0x412135
mov cx, word [esp + ecx*2 + 0x78]
mov word [edx + eax*2], cx
add eax, 1
cmp eax, dword [esp + 0x2c]
mov dword [esp + 0x10], eax
jb 0x411f30
mov edx, dword [esp + 0x24]
cmp dword [edx], 0
mov dword [esp + 0x10], 0
jbe 0x41207a
mov ecx, dword [esp + 0x20]
mov eax, ebx
sub eax, dword [esp + 0x30]
push 2
mov dword [ecx], eax
mov edx, dword [esi]
mov eax, dword [edx + 4]
push ebx
push edi
mov ecx, esi
mov dword [esp + 0x38], ebx
call eax
test al, al
je 0x412148
movzx eax, word [ebx]
movsx ecx, ax
mov edx, ecx
and edx, 0x80000001
jns 0x411fbf
dec edx
or edx, 0xfffffffe
inc edx
jne 0x41216e
test ax, ax
jle 0x412194
cmp ax, 0x80
ja 0x4121ba
mov eax, dword [esi]
mov edx, dword [eax + 4]
push ecx
lea ecx, [ebx + 2]
push ecx
push edi
mov ecx, esi
call edx
test al, al
je 0x412148
movsx eax, word [ebx]
mov edx, dword [esp + 0x2c]
mov word [eax + ebx + 2], 0
movsx eax, word [edx]
movsx ecx, word [ebx]
add eax, 4
add dword [ebp + 0x1c], eax
mov eax, dword [esp + 0x20]
mov edx, dword [esi]
mov edx, dword [edx + 4]
lea ebx, [ebx + ecx + 4]
mov ecx, dword [0x46116c]
push ecx
add eax, 4
push eax
push edi
mov ecx, esi
call edx
test al, al
je 0x412148
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 8]
cmp eax, dword [esp + 0x6c]
jb 0x412042
mov dword [ecx + 8], 1
mov edx, dword [esp + 0x40]
mov eax, dword [edx]
movzx edx, word [ecx + 4]
mov eax, dword [eax]
add dword [eax + 0x10], edx
cmp word [ecx + 4], 0
je 0x41205c
add dword [ebp + 0x18], 1
mov eax, dword [esp + 0x10]
add ecx, 0xc
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x24]
add eax, 1
cmp eax, dword [ecx]
mov dword [esp + 0x10], eax
jb 0x411f85
add dword [ebp + 0x10], 1
mov edx, dword [esp + 0x28]
movsx eax, word [edx]
add dword [esp + 0x24], 0xc
add eax, 2
add dword [ebp + 0x14], eax
mov eax, dword [esp + 0x18]
add eax, 1
cmp eax, dword [esp + 0x60]
mov dword [esp + 0x18], eax
jl 0x411e40
mov al, 1
mov ecx, dword [esp + 0x878]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0041b397
add esp, 0x86c
ret 4
push str.usrDict_Data_Error_:_pyBlock___pyBlockEnd
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
push str.read_UsrDict_Data_Error
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
push str.usrDict_Data_Error:_pyStr___pyStrEnd
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
push str.UsrDict_Data_Error:_CbPyStr____2___0
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
push str.UsrDict_Data_Error:_CbPyStr___0
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
push str.UsrDict_Data_Error:_CbPyStr___64__sizeof_TCHAR_
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
push str.usrdict_Data_error:_pPyId_curPyId____0
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
push str.usrdict_Data_Error:_pPyId_curPyId____cidPyMap
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x14]
mov dword [eax + ecx*4 + 8], edx
push str.UsrDict_Data_Error
push edi
call fcn.0043e030
add esp, 8
jmp 0x4120a7
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x14]
push str.UsrDict_Data_Error:_CbWord____2___0
push edi
mov dword [eax + ecx*4 + 8], edx
call fcn.0043e030
add esp, 8
jmp 0x4120a7
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x14]
push str.UsrDict_Data_Error:_CbWord___0
push edi
mov dword [eax + ecx*4 + 8], edx
call fcn.0043e030
add esp, 8
jmp 0x4120a7
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0x14]
push str.Usrdict_Data_Error:_CbWord___64__sizeof_TCHAR_
push edi
mov dword [eax + ecx*4 + 8], edx
call fcn.0043e030
add esp, 8
jmp 0x4120a7