Function at 0x411e68
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffc0
mov dword [ebp - 0x28], eax
mov eax, 0x4dc864
call fcn.004b8f5c
push str.picrw.dll
call sub.KERNEL32.DLL_LoadLibraryA
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
je 0x412020
push str.getdllversion
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x2c], eax
push str.showerrormessage
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
push str.iscardinit
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 4], eax
push str.readsendcard
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 8], eax
push str.modifycardflag
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0xc], eax
push str.checkpasswd
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x10], eax
push str.modifycardamount
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x14], eax
push str.icinit
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x18], eax
push str.getstatus
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x1c], eax
push str.readcardotherdata
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x20], eax
push str.readcardid
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x24], eax
push str.srdsnr
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x28], eax
push str.icexit
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x30], eax
push str.readip
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x34], eax
push str.writeip
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x38], eax
push str.isuserdll
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x3c], eax
push str.writecardCash
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x40], eax
push str.modifycarduserpwd
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x44], eax
push str.icencrypt
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x48], eax
push str.icdecrypt
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov ecx, dword [ebp - 0x28]
mov dword [ecx + 0x4c], eax
push str.writecardotherdata
push dword [ebp - 0x2c]
call sub.KERNEL32.DLL_GetProcAddress
mov edx, dword [ebp - 0x28]
mov dword [edx + 0x50], eax
mov eax, dword [ebp - 0x28]
mov byte [eax + 0x5e], 0
mov ecx, dword [ebp - 0x24]
mov dword fs:[0], ecx
mov eax, dword [ebp - 0x28]
mov esp, ebp
pop ebp
ret