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

Disassembly:
sub esp, 0xc8
push ebx
push esi
push edi
call fcn.00402b30
test eax, eax
jne 0x40412e
pop edi
pop esi
pop ebx
add esp, 0xc8
ret 0xc
mov esi, dword [esp + 0xd8]
push str.java_util_Vector
push esi
mov eax, dword [esi]
call dword [eax + 0x18]
mov edi, eax
test edi, edi
mov dword [esp + 0xbc], edi
jne 0x404166
push 1
push esi
call fcn.00406be0
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
add esp, 0xc8
ret 0xc
mov ecx, dword [esi]
push 0x445214
push str._init_
push edi
push esi
call dword [ecx + 0x84]
mov edx, dword [esi]
push str._Ljava_lang_Object__Z
push 0x445310
push edi
push esi
mov ebx, eax
call dword [edx + 0x84]
push str.__Ljava_util_Enumeration_
push str.elements
mov dword [esp + 0x48], eax
mov eax, dword [esi]
push edi
push esi
call dword [eax + 0x84]
push ebx
push edi
push esi
mov dword [esp + 0xcc], eax
call fcn.004032b0
add esp, 0xc
mov dword [esp + 0x3c], eax
test eax, eax
jne 0x4041db
push 1
push esi
call fcn.00406be0
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
add esp, 0xc8
ret 0xc
mov edi, dword [esp + 0xe0]
mov ecx, dword [esi]
push ebp
push 0
push edi
push esi
call dword [ecx + 0x294]
mov edx, dword [esi]
mov ebp, eax
push edi
push esi
mov dword [esp + 0x50], ebp
call dword [edx + 0x290]
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x54]
mov edi, eax
call fcn.004017e0
test edi, edi
mov dword [esp + 0x4c], 0x43b304
jge 0x40421f
mov edi, 0x7fffffff
xor ebx, ebx
test edi, edi
jle 0x404250
mov ax, word [ebp]
test ax, ax
mov dword [esp + 0xbc], eax
je 0x404250
lea eax, [esp + 0xbc]
push 1
push eax
lea ecx, [esp + 0x54]
call fcn.00401780
inc ebx
add ebp, 2
cmp ebx, edi
jl 0x404225
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
push eax
lea ecx, [esp + 0x50]
mov edi, eax
call dword [edx + 4]
mov ebx, dword [esp + 0x50]
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x38]
call fcn.00401b80
push edi
push ebx
lea ecx, [esp + 0x38]
mov dword [esp + 0x38], 0x43b30c
call fcn.00405a10
lea ecx, [esp + 0x4c]
mov eax, dword [esp + 0x54]
mov ebx, eax
push eax
mov eax, dword [esp + 0x50]
call dword [eax + 4]
mov edi, dword [esp + 0x50]
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x28]
call fcn.00401b80
test edi, edi
mov dword [esp + 0x20], 0x43b328
je 0x4042c0
push ebx
push edi
lea ecx, [esp + 0x28]
call fcn.004055c0
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x38]
cmp ecx, eax
jne 0x404325
mov edx, dword [esp + 0x20]
push eax
lea ecx, [esp + 0x24]
call dword [edx + 4]
mov edi, dword [esp + 0x24]
lea ecx, [esp + 0x30]
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
push eax
call dword [edx + 4]
mov eax, dword [esp + 0x34]
mov dl, byte [eax]
mov bl, byte [edi]
mov cl, dl
cmp dl, bl
jne 0x404318
test cl, cl
je 0x404314
mov dl, byte [eax + 1]
mov bl, byte [edi + 1]
mov cl, dl
cmp dl, bl
jne 0x404318
add eax, 2
add edi, 2
test cl, cl
jne 0x4042f0
xor eax, eax
jmp 0x40431d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x404325
xor ebp, ebp
jmp 0x40432a
mov ebp, 1
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xe4]
mov eax, dword [esi]
push ecx
push edx
push esi
call dword [eax + 0x298]
xor eax, eax
mov ecx, dword [esp + 0x38]
test ecx, ecx
jle 0x404365
mov ecx, dword [esp + 0x34]
cmp byte [ecx + eax], 0x2f
jne 0x40435c
mov byte [ecx + eax], 0x5c
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
inc eax
cmp eax, edx
jl 0x40434e
test ebp, ebp
je 0x40438e
mov ecx, dword [esp + 0x28]
xor eax, eax
test ecx, ecx
jle 0x40438e
mov ecx, dword [esp + 0x24]
cmp byte [ecx + eax], 0x2f
jne 0x404385
mov byte [ecx + eax], 0x5c
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x28]
inc eax
cmp eax, edx
jl 0x404377
push 0
push 0
lea ecx, [esp + 0xa4]
call fcn.004050e0
push 0
push 0
lea ecx, [esp + 0xb4]
call fcn.00404ec0
mov edi, 0x43b340
push 0
push 0
lea ecx, [esp + 0x84]
mov dword [esp + 0xa4], edi
call fcn.004050e0
push 0
push 0
lea ecx, [esp + 0x94]
call fcn.00404ec0
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x74]
mov dword [esp + 0x84], edi
call fcn.00401b80
mov ebx, 0x43b30c
push 0xffffffffffffffff
push 0x449ea8
lea ecx, [esp + 0x18]
mov dword [esp + 0x74], ebx
call fcn.00401b80
lea eax, [esp + 0x30]
lea ecx, [esp + 0x5c]
push eax
push ecx
mov dword [esp + 0x18], ebx
call fcn.00404da0
mov edi, eax
add esp, 8
mov ecx, edi
mov eax, dword [edi + 8]
mov edx, dword [edi]
push eax
call dword [edx + 4]
mov eax, dword [edi + 4]
lea ecx, [esp + 0x9c]
push ecx
lea edx, [esp + 0x14]
push 0x4040f0
push edx
push 0x449bf8
lea ecx, [esp + 0x7c]
push eax
lea edx, [esp + 0x44]
push ecx
push edx
mov ecx, 0x449978
call fcn.00416a30
lea ecx, [esp + 0x5c]
call fcn.00401b50
lea ecx, [esp + 0x10]
call fcn.00401b50
test ebp, ebp
je 0x404521
push 0xffffffffffffffff
push 0x449ea8
lea ecx, [esp + 0x64]
call fcn.00401b80
lea eax, [esp + 0x20]
lea ecx, [esp + 0xc8]
push eax
push ecx
mov dword [esp + 0x64], ebx
call fcn.00404da0
mov edi, eax
add esp, 8
mov ecx, edi
mov eax, dword [edi + 8]
mov edx, dword [edi]
push eax
call dword [edx + 4]
mov edi, dword [edi + 4]
lea ecx, [esp + 0x20]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
push eax
mov ebx, eax
call dword [edx + 4]
push ebx
lea ecx, [esp + 0x14]
mov eax, dword [esp + 0x28]
push eax
call fcn.00401b80
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x5c]
push ecx
push 0x4040f0
push edx
push 0x449bf8
lea eax, [esp + 0x7c]
push edi
lea ecx, [esp + 0x24]
push eax
push ecx
mov ecx, 0x449978
mov dword [esp + 0x2c], 0x43b30c
call fcn.00416a30
lea ecx, [esp + 0x10]
call fcn.00401b50
lea ecx, [esp + 0xc8]
call fcn.00401b50
lea ecx, [esp + 0x5c]
call fcn.00401b50
mov ebx, 0x43b30c
push 0xffffffffffffffff
push 0x449ea8
lea ecx, [esp + 0x64]
call fcn.00401b80
lea edx, [esp + 0x30]
lea eax, [esp + 0xc8]
push edx
push eax
mov dword [esp + 0x64], ebx
call fcn.00404da0
mov edi, eax
add esp, 8
mov ecx, edi
mov eax, dword [edi + 8]
mov edx, dword [edi]
push eax
call dword [edx + 4]
mov eax, dword [edi + 4]
lea ecx, [esp + 0x9c]
push ecx
lea edx, [esp + 0x60]
push 0x4040f0
push edx
push 0x449bf8
lea ecx, [esp + 0x7c]
push eax
lea edx, [esp + 0x44]
push ecx
push edx
mov ecx, 0x449c10
call fcn.00416a30
lea ecx, [esp + 0xc8]
call fcn.00401b50
lea ecx, [esp + 0x5c]
call fcn.00401b50
test ebp, ebp
je 0x40464c
push 0xffffffffffffffff
push 0x449ea8
lea ecx, [esp + 0x18]
call fcn.00401b80
lea eax, [esp + 0x20]
lea ecx, [esp + 0xc8]
push eax
push ecx
mov dword [esp + 0x18], ebx
call fcn.00404da0
mov edi, eax
add esp, 8
mov ecx, edi
mov eax, dword [edi + 8]
mov edx, dword [edi]
push eax
call dword [edx + 4]
mov edi, dword [edi + 4]
lea ecx, [esp + 0x20]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
push eax
mov ebx, eax
call dword [edx + 4]
push ebx
lea ecx, [esp + 0x60]
mov eax, dword [esp + 0x28]
push eax
call fcn.00401b80
lea ecx, [esp + 0x7c]
lea edx, [esp + 0x10]
push ecx
push 0x4040f0
push edx
push 0x449bf8
lea eax, [esp + 0x7c]
push edi
lea ecx, [esp + 0x70]
push eax
push ecx
mov ecx, 0x449c10
mov dword [esp + 0x78], 0x43b30c
call fcn.00416a30
lea ecx, [esp + 0x5c]
call fcn.00401b50
lea ecx, [esp + 0xc8]
call fcn.00401b50
lea ecx, [esp + 0x10]
call fcn.00401b50
mov eax, dword [esp + 0xa4]
xor ebx, ebx
test eax, eax
jle 0x40470b
mov edx, dword [esp + 0xb4]
mov eax, dword [esp + 0xac]
push edx
lea ecx, [esp + 0xb0]
call dword [eax + 4]
mov ebp, dword [esp + 0xb0]
push 0xffffffffffffffff
mov ecx, dword [esp + 0xa4]
mov edx, dword [ecx + ebx*4]
lea ecx, [esp + 0x14]
add edx, ebp
push edx
call fcn.00401b80
mov ebp, 0x43b30c
xor eax, eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x10], ebp
test ecx, ecx
jle 0x4046c3
mov ecx, dword [esp + 0x14]
cmp byte [ecx + eax], 0x5c
jne 0x4046ba
mov byte [ecx + eax], 0x2f
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
inc eax
cmp eax, edx
jl 0x4046ac
lea eax, [esp + 0x10]
push 0
push eax
push esi
call fcn.00402eb0
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
add esp, 0xc
mov edi, eax
push edi
push ecx
push edx
push esi
call fcn.00404a80
mov eax, dword [esi]
add esp, 0x10
push edi
push esi
call dword [eax + 0x5c]
lea ecx, [esp + 0x10]
call fcn.00401b50
mov eax, dword [esp + 0xa4]
inc ebx
cmp ebx, eax
jl 0x40465d
jmp 0x404710
mov ebp, 0x43b30c
mov eax, dword [esp + 0x84]
xor ebx, ebx
test eax, eax
jle 0x4047c8
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x8c]
push ecx
lea ecx, [esp + 0x90]
call dword [edx + 4]
mov edi, dword [esp + 0x90]
push 0xffffffffffffffff
mov eax, dword [esp + 0x84]
mov ecx, dword [eax + ebx*4]
add ecx, edi
push ecx
lea ecx, [esp + 0x18]
call fcn.00401b80
xor eax, eax
mov dword [esp + 0x10], ebp
mov ecx, dword [esp + 0x18]
test ecx, ecx
jle 0x404782
mov ecx, dword [esp + 0x14]
cmp byte [ecx + eax], 0x5c
jne 0x404779
mov byte [ecx + eax], 0x2f
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
inc eax
cmp eax, edx
jl 0x40476b
lea edx, [esp + 0x10]
push 1
push edx
push esi
call fcn.00402eb0
mov ecx, dword [esp + 0x4c]
add esp, 0xc
mov edi, eax
mov eax, dword [esp + 0x44]
push edi
push eax
push ecx
push esi
call fcn.00404a80
mov edx, dword [esi]
add esp, 0x10
push edi
push esi
call dword [edx + 0x5c]
lea ecx, [esp + 0x10]
call fcn.00401b50
mov eax, dword [esp + 0x84]
inc ebx
cmp ebx, eax
jl 0x404721
mov edi, dword [esp + 0xe0]
mov eax, dword [esi]
push edi
push esi
call dword [eax + 0x7c]
mov ecx, dword [esi]
mov ebp, eax
push ebp
push esi
call dword [ecx + 0x28]
mov edx, dword [esi]
mov ebx, eax
push str._Ljava_lang_String__Ljava_util_Enumeration_
push str.findResources
push ebx
push esi
call dword [edx + 0x84]
mov ecx, dword [esp + 0xe4]
push ecx
push eax
push ebx
push edi
push esi
call fcn.00403870
mov edx, dword [esi]
add esp, 0x14
mov edi, eax
push ebx
push esi
call dword [edx + 0x5c]
mov eax, dword [esi]
push ebp
push esi
call dword [eax + 0x5c]
test edi, edi
je 0x4048a9
mov ecx, dword [esi]
push edi
push esi
call dword [ecx + 0x7c]
mov edx, dword [esi]
mov ebp, eax
push 0x4452a8
push str.hasMoreElements
push ebp
push esi
mov dword [esp + 0x58], ebp
call dword [edx + 0x84]
push str.__Ljava_lang_Object_
mov ebx, eax
mov eax, dword [esi]
push str.nextElement
push ebp
push esi
call dword [eax + 0x84]
push ebx
push edi
push esi
mov ebp, eax
call fcn.00404a80
add esp, 0xc
test al, al
je 0x404897
push ebp
push edi
push esi
call fcn.00402970
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
add esp, 0xc
push eax
push ecx
push edx
push esi
call fcn.00404a80
add esp, 0x10
push ebx
push edi
push esi
call fcn.00404a80
add esp, 0xc
test al, al
jne 0x404869
mov ecx, dword [esp + 0x48]
mov eax, dword [esi]
push ecx
push esi
call dword [eax + 0x5c]
mov edx, dword [esi]
push edi
push esi
call dword [edx + 0x5c]
mov eax, dword [esp + 0xc4]
mov edi, dword [esp + 0x40]
push eax
push edi
push esi
call fcn.00402970
add esp, 0xc
mov ebx, eax
test ebx, ebx
pop ebp
jne 0x40497a
push 1
push esi
call fcn.00406be0
mov esi, 0x43b2e8
add esp, 8
lea ecx, [esp + 0x68]
mov dword [esp + 0x68], esi
call fcn.00401db0
mov edi, 0x43b2dc
lea ecx, [esp + 0x88]
mov dword [esp + 0x68], edi
mov dword [esp + 0x88], esi
call fcn.00401db0
lea ecx, [esp + 0x78]
mov dword [esp + 0x88], edi
call fcn.00401cf0
lea ecx, [esp + 0xa8]
mov dword [esp + 0xa8], esi
call fcn.00401db0
lea ecx, [esp + 0x98]
mov dword [esp + 0xa8], edi
call fcn.00401cf0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], esi
call fcn.00401db0
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x2c], esi
call fcn.00401db0
lea ecx, [esp + 0x48]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x48], 0x43b2f8
call fcn.00401db0
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0xc8
ret 0xc
mov ecx, dword [esi]
push edi
push esi
call dword [ecx + 0x5c]
mov edx, dword [esi]
mov eax, dword [esp + 0xbc]
push eax
push esi
call dword [edx + 0x5c]
mov esi, 0x43b2e8
lea ecx, [esp + 0x68]
mov dword [esp + 0x68], esi
call fcn.00401ec0
test eax, eax
je 0x4049ae
push eax
call fcn.0041b6a9
add esp, 4
mov edi, 0x43b2dc
lea ecx, [esp + 0x88]
mov dword [esp + 0x68], edi
mov dword [esp + 0x88], esi
call fcn.00401db0
lea ecx, [esp + 0x78]
mov dword [esp + 0x88], edi
mov dword [esp + 0x78], 0x43b2e0
call fcn.00401db0
lea ecx, [esp + 0xa8]
mov dword [esp + 0x78], 0x43b324
mov dword [esp + 0xa8], esi
call fcn.00401db0
lea ecx, [esp + 0x98]
mov dword [esp + 0xa8], edi
call fcn.00401cf0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], esi
call fcn.00401ec0
test eax, eax
je 0x404a2a
push eax
call fcn.0041b6a9
add esp, 4
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x2c], esi
call fcn.00401ec0
test eax, eax
je 0x404a48
push eax
call fcn.0041b6a9
add esp, 4
lea ecx, [esp + 0x48]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x48], 0x43b2f8
call fcn.00401ec0
test eax, eax
je 0x404a6a
push eax
call fcn.0041b6a9
add esp, 4
pop edi
mov eax, ebx
pop esi
pop ebx
add esp, 0xc8
ret 0xc