Function at 0x10031141
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov eax, 0x10062662
call fcn.100612c8
sub esp, 0x80
push ebx
push esi
push edi
xor edi, edi
mov dword [ebp - 0x24], 0x212f
xor esi, esi
mov dword [ebp - 0x10], esp
inc edi
mov dword [ebp - 0x34], ecx
cmp dword [ebp - 0x24], 0x2353
jle 0x100311d1
mov ebx, esi
mov eax, esi
mov dword [ebp - 0x20], esi
mov ecx, esi
mov dword [ebp - 0x1c], esi
add eax, ecx
lea ecx, [ebp - 0x88]
and eax, ebx
cdq
push edx
push eax
call fcn.10001a31
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x10031197
mov eax, dword [eax]
push eax
call fcn.100490c6
pop ecx
push esi
push edi
lea ecx, [ebp - 0x88]
call fcn.1000209f
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, 0x7bc
jl 0x1003117b
inc eax
mov dword [ebp - 0x20], eax
cmp eax, 0x35f9
jl 0x10031176
inc ebx
cmp ebx, 0x554
jl 0x10031171
cmp dword [ebp - 0x24], 0x2013
jge 0x100311e5
push str.gaggpvv_alq_wtrpktti_frznexc
call fcn.100490c6
pop ecx
or ebx, 0xffffffff
mov dword [ebp - 4], ebx
cmp byte [ebp + 8], 0
je 0x100312d1
mov dword [ebp - 0x28], 0x6bdc
cmp dword [ebp - 0x28], 0x6e7c
jle 0x10031283
push 0x1477
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetTextAlign]
mov ebx, esi
mov dword [ebp - 0x1c], esi
mov edi, esi
mov dword [ebp - 0x20], esi
mov eax, ebx
mov dword [ebp - 0x24], esi
cdq
idiv edi
mov edi, edx
mov ebx, esi
mov esi, dword [ebp - 0x24]
mov eax, esi
mov ecx, 0x1007cab8
cdq
idiv ebx
or edx, edi
mov eax, edx
cdq
push edx
push eax
call fcn.10001cb3
inc ebx
cmp ebx, 0x68b9
jl 0x10031237
inc esi
push 0
mov dword [ebp - 0x24], esi
cmp esi, 0x677
pop esi
jl 0x10031232
mov edi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x1c]
inc edi
mov dword [ebp - 0x20], edi
cmp edi, 0x555d
jl 0x10031228
inc ebx
mov dword [ebp - 0x1c], ebx
cmp ebx, 0x2bb0
jl 0x10031223
mov eax, dword [ebp - 0x34]
cmp byte [eax], 0
je 0x10031293
push esi
push esi
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 4], 2
cmp dword [ebp - 0x28], 0x69d9
jge 0x100312b2
mov edx, str.kiw_rasodqh_axbzsglb_jxlpvxe_mjugtfvov_llystqmu_zjxk
mov ecx, 0x1007cab8
call fcn.100036f5
jmp 0x100314b5
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x2c], eax
xor dl, dl
movzx eax, word [eax]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
call fcn.10035314
pop ecx
push 2
mov dword [ebp - 0x20], 0xfff8
lea ecx, [ebp - 0x4c]
pop eax
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], 0xfffffffe
mov dword [ebp - 0x28], eax
push eax
call fcn.10001dc8
mov dword [ebp - 4], 4
lea eax, [ebp - 0x4c]
mov dword [ebp - 0x34], edi
lea edx, [ebp - 0x18]
mov dword [ebp - 0x34], 7
xor cl, cl
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], 0xfffffff8
mov dword [ebp - 0x34], 0xfffffff9
push eax
call fcn.1003214e
pop ecx
push 3
mov dword [ebp - 0x18], esi
pop ecx
jmp 0x1003134f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x58], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10031345
mov dword [ebp - 0x18], esi
jmp 0x10031367
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x38], 0xdeb94592
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10031359
mov dword [ebp - 0x18], esi
jmp 0x1003137f
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x70], 0xff2b
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10031371
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], 0xfffffff7
jae 0x100313bd
mov eax, dword [ebp - 0x20]
neg eax
jne 0x1003139c
cmp dword [ebp - 0x20], esi
jne 0x1003139c
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x20], esi
jne 0x100313ae
cmp dword [ebp - 0x1c], esi
je 0x100313b2
cmp dword [ebp - 0x20], esi
je 0x100313b2
mov ecx, edi
jmp 0x100313b4
mov ecx, esi
mov eax, dword [ebp - 0x20]
mov edx, esi
add eax, ecx
je 0x100313bf
mov edx, edi
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0xa8f1
setge al
imul eax, eax, 9
add eax, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
jne 0x100313e6
mov eax, esi
cmp dword [ebp - 0x1c], esi
je 0x100313e8
mov eax, edi
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x1c]
sub ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x4c]
neg ecx
sbb ecx, ecx
inc ecx
cmp ebx, ecx
mov dword [eax], ecx
mov eax, dword [ebp - 0x1c]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov ecx, dword [ebp - 0x1c]
setge dl
add ecx, edx
xor edx, edx
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x1c]
setl bl
xor ecx, ecx
cmp ebx, eax
setne cl
mov dword [ebp - 0x38], ecx
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x58], edi
or dword [ebp - 4], 0xffffffff
call fcn.10001e25
mov edi, dword [ebp - 0x2c]
mov ebx, esi
mov cl, byte [ebx + edi]
mov dl, 0x4a
call fcn.1003a7bd
mov byte [ebx + edi], al
inc ebx
cmp ebx, 2
jb 0x1003144a
push 2
lea ecx, [ebp - 0x64]
call fcn.10001dc8
mov dword [ebp - 4], 5
xor edi, edi
mov dword [ebp - 0x40], 0x9bdba76a
inc edi
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x20], esi
jmp 0x1003148c
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x64]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x10031480
lea eax, [ebp - 0x3c]
push eax
push ecx
push ecx
lea edx, [ebp - 0x40]
call fcn.1003274e
add esp, 0xc
lea ecx, [ebp - 0x64]
call fcn.10001e25
mov ecx, dword [ebp + 0x14]
mov ax, word [ebp - 0x30]
mov word [ecx], ax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret